> For the complete documentation index, see [llms.txt](https://docs.instruqt.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.instruqt.com/resources/ilt-best-practices.md).

# ILT: Best Practices

This guide covers how to prepare and run instructor-led sessions on Instruqt. It walks through everything from configuring your invite and setting up access, to running the session itself and following up with learners afterward. Three formats of ILT are covered:

* on-site training with a customer or vendor group;
* online workshop or virtual instructor-led training;
* conference hands-on workshop or training session.

{% hint style="info" %}
**Important to note** – a key to a successful ILT session is making sure the participants can start going through the content on time, without extra waiting. We recommend **configuring a hotstart pool** – a feature that pre-provisions sandboxes in advance so learners get an instant start rather than waiting for the environment to spin up when they join.

The right pool configuration depends on the type of event you're running. For detailed guidance on pool sizing and timing, see the dedicated [Hot Starts Best Practices](https://docs.instruqt.com/resources/hot-starts-best-practices.md) guide. This guide references it throughout.
{% endhint %}

***

### Facilitation principles

Before the format-specific setup, a few key general principles that apply to every ILT session on Instruqt:

* **The most common failure in ILT delivery is running a workshop like a lecture.** When an instructor spends most of the session presenting and learners aren't actively doing something, it stops being a workshop. Instruqt works best when learners spend the majority of the session inside the lab.
  * A good target is roughly 70% hands-on time to 30% instructor explanation and framing. Attention also drifts naturally after 7–10 minutes of passive listening – building regular lab checkpoints into the session, like quizzes, open questions, or knowledge checks, keeps the session interactive and people engaged throughout.
* **The instructor's role is to frame and guide, not to just deliver content.** Learners can read documentation on their own. What they can't get from documentation is a live human who can explain what's happening in real time, answer questions, and adapt to where the room is. The instructor's main goal is to set context ("here's what we're about to do and why it matters"), unblock participants, and fascilitate discussions, and then - step back and let learners work.
  * **For online and virtual sessions especially:** technical learners attend a live workshop for the things that require human presence – live debugging, real-time answers to questions that documentation can't anticipate, situations that need interaction to work. If the session is mostly content delivery, learners can get that from a recording or documentation. The instructor's value in a virtual session is responsiveness and facilitation.
* **Use Instruqt's instruction panel as your live demonstration surface.** Code snippets and commands in the instructions can be run directly from the instruction panel into the terminal with one click. Instead of switching between slides and a separate demo environment, instructors can share their screen and follow the same track learners are on – running the same commands in the same terminal, narrating as they go. This is exactly the hands-on demonstration model: the instructor isn't presenting theory, they're doing the thing alongside learners.
* **We recommend letting Instruqt Support know about large scale events at least a week in advance.** If anything comes up on the day, our Support team already has context about your event - which means faster help when it matters.

***

### Key settings to configure before your session

These settings apply to every ILT format, but they don't all live in the same place. Some are configured at the track level, some are part of the invite creation flow, and the hotstart pool is set up separately. Here's what to configure, and where.

#### Track settings

[These](https://docs.instruqt.com/tracks/manage/time-limits-and-idle-timeouts) are configured **on the track itself, not on the invite**. Set them before you create your invite.

* **Track timelimit.** This is the hard cap on how long a learner's sandbox runs from the moment they click Start. Set it to match your actual session length – 3 hours for a half-day workshop, 8–9 hours for a full-day program. It's worth adding a 30–45 minute buffer, since instructor-led sessions often run longer than planned. If the timelimit runs out while learners are still working, their sandboxes close automatically.

{% hint style="info" %}
Learners can also [extend the time limit themselves](https://docs.instruqt.com/tracks/manage/time-limits-and-idle-timeouts#extend-the-time-limit). Enable this if you want participants to manage extra time on their own.
{% endhint %}

* [**Idle timeout**](https://docs.instruqt.com/tracks/manage/time-limits-and-idle-timeouts#extend-the-time-limit). This controls how long a sandbox stays active when a learner hasn't done anything in it. For live sessions, a short idle timeout is risky – if the instructor pauses to explain a concept or a group discussion happens, a learner's screen locking can trigger the timeout and close their environment. A minimum of 30–60 minutes is recommended for instructor-led sessions.

#### Invite settings

These are configured in the [invite creation flow](https://docs.instruqt.com/tracks/share/track-invite-links#invite-statuses) when you create or edit a Live Event invite.

* **Invite type: Live Event.** When creating an invite, select "[Live event](https://docs.instruqt.com/tracks/share/run-live-events)" as the invite type – not "Self paced." Live Event invites unlock the live dashboard, instructor tools, and session start time controls. Self-paced invites don't support any of these and are not suited for a structured instructor-led session.
* [**Enable instructor tools**](https://docs.instruqt.com/tracks/share/run-live-events/instructor-tools)**.** In the invite creation flow, you'll find an instructor tools section with a checkbox to enable it. This is what unlocks the live event dashboard, the in-session chat, the help indicators (raised hand, failed attempts, inactive), and the ability to access learner sandboxes during the session. It's off by default – without enabling it, none of these features are available even for a Live Event invite.
* [**Enable screensharing if you plan to use it**](https://docs.instruqt.com/tracks/share/run-live-events/instructor-tools). Within the same instructor tools section, there's a separate checkbox for screensharing. Enable this if you want to be able to request a learner's screen during the session. It's also off by default and is independent of the instructor tools toggle – both need to be on.
* **"How many unique users can access this invite?"** Always set an explicit number here. Leaving this field blank or at the default can cause Instruqt's IP/hour play limit to trigger during your event, blocking learners from accessing their sandbox. Set it to your expected number of participants with a small buffer – if you're expecting 50 learners, 60 or 70 is a safe target.
* **"How many times can each track be played per person?"** This controls how many times one learner can start or restart the track. For a live event where each learner should have one environment for the session. 1 is usually too strict - in case users have multiple attempts accessing the content, 3-5 attempts is a better configuration. If you plan to re-share the same track after the event so learners can return and practice, you can increase this before re-sharing.
* **"When will this invite stop accepting new users?"** Set this to the end of your session, or shortly after. This closes the invite link to new registrations once the event is over, so the link can't be used by someone who finds it later. Learners who already accessed the invite before this date retain their access.
* **"How long is content available after they access the invite?"** This controls how long a learner has access to the track from the moment they first claim it. For the live event itself, set this to match the session length plus a small buffer. When re-sharing the track for post-event access, set it to the window you want to offer – 7 days, 30 days, etc.
* **Naming.** Give your invite a clear, descriptive name – include the customer or event name, the date, and the format (online vs. on-site). Do the same for any hotstart pool you create. "Hot Start for CDR Online – Bloomreach, May 31" is much easier to find and audit later than "Workshop Pool 3."

#### Hotstart pool

Hotstart pools are configured separately from the invite, on the Hot Start page. When linked to your invite, the pool pre-provisions sandboxes so learners get an instant environment when they click Start rather than waiting for provisioning. For recommended pool sizes, timing, and settings per event type, see the [Hot Starts Best Practices](https://docs.instruqt.com/resources/hot-starts-best-practices.md) guide.

> The goal is the same for every ILT type: give learners a smooth, uninterrupted hands-on experience while keeping the instructor in control of the session. Most issues during a live session trace back to something that wasn't configured or tested beforehand.

***

### On-site training with a customer or vendor group

Instructor and learners in the same physical room. Usually smaller groups, ranging from 10 to 50 people, although Instruqt customers have ran sessions with hundreds of participants. The instructor can interact directly with learners throughout, which makes this format well-suited for in-depth technical workshops where questions and real-time guidance are a core part of the experience.

#### Preparation

**In Instruqt settings**

* [The track has concurrent and IP limits](https://docs.instruqt.com/settings/platform/track-limits#overview) that control how many learners can run environments simultaneously. When a full group starts at the same time, the load is much higher than a solo test. Check and set these limits to match your expected group size – this prevents learners from being blocked at the moment they try to start.

{% hint style="warning" %}
Not setting Track Limits correctly is one of the most common preparation mistakes. Check the [track limits documentation](https://docs.instruqt.com/settings/platform/track-limits) for recommended values.
{% endhint %}

**On the Hot Start page**

* **The right pool size depends on your session type: for a paid, committed instructor-led training, size the pool to 100% of registrations.** For a free or open workshop where some no-shows are expected, 65–70% is the right target. In both cases, set auto-refill to off and start provisioning at least 1 hour before the session. See the [Hot Starts Best Practices](https://docs.instruqt.com/resources/hot-starts-best-practices.md) guide for full setup instructions.
* Before the session, claim a sandbox from the pool yourself and confirm it starts within a few seconds. This verifies the complete flow – from pool provisioning to sandbox delivery – is working as expected before learners are in the room.
* When you are in the session - don’t forget to check the Hotstarts provisioned for the event. Verify your pool is running. During the session - your co-hosts are able to watch over the pool.

**In the invite creation flow**

* **When you're in a room, attendees need to type the URL directly into their browser** – you can't paste it in a chat. Copy the invite link and use a URL shortener service to create a short, easy-to-type version for your slides. Avoid long or complex links – even one wrong character creates a failed attempt at exactly the wrong moment. Consider **printing the URL together with WiFi password for the session.**
* Enable **the registration form by setting access to** "[Anyone leaving details](https://docs.instruqt.com/tracks/share/track-invite-links)" in the invite's access settings. Add name and email as minimum fields. This gives you an attendance record and a clean way to follow up with learners after the event.

#### Access & distribution

* When you're ready to transition from presentation to hands-on, **display the URL on a dedicated slide.** Keep the slide visible until everyone has confirmed they're in; a few people will always need an extra moment to type it correctly. You can also use **mass-email** to send the URL to the session attendees, or consider **printing the shortened URL and WiFi password** together on a small table card. It removes the need to read out the link and keeps the session start clean.
* Once learners have the URL, the entry flow is: type the URL → fill in the registration form → click Start → the hotstart pool delivers an instant sandbox. With a correctly configured pool, this takes under 30 seconds from the moment they open the link.

#### Running the session

**In the Instruqt interface**

* **Share your screen showing the same track learners are on**. Running commands and following the instructions live alongside your audience is the most effective way to demonstrate – it keeps everyone oriented and models exactly what learners are doing.
* If you need to share a specific command or code snippet with the group, **use the built-in chat – it supports code blocks,** so learners get a clean, copyable version rather than trying to read it off your screen.

**Facilitation**

* Before anyone starts their lab, **take 30 seconds to orient the room to Instruqt.** For learners who haven't used the platform before, knowing where the tabs are, where the instructions live, and how to resize the panels removes a layer of friction that would otherwise cost the first few minutes of actual lab time.
* Keep the room anchored by regularly calling out where you are in the content: **"we're about to move to step 4, which covers X."** This helps the group stay roughly in sync and lets learners who fell behind know where to pick back up.
* On-site is the format where the instructor's physical presence makes the biggest difference. Watch for raised hands and be ready to walk over. In a larger group, having a second person circulate while you continue presenting means no one gets stuck and waits too long for help. **Keep in mind that the bigger the audience is, the more assistance might be needed during the session.** General rule of thumb is having 1 co-host (assistant) per 10-15 participants.
* During the event, assign a team member **to monitor the** [**logs**](https://docs.instruqt.com/tracks/manage/viewing-logs#view-track-logs) **in real time.** It's one of the most effective ways to catch issues as they happen - before learners even raise their hand.

**Common mistakes**

* **Skipping the** [**limit**](https://docs.instruqt.com/tracks/manage/time-limits-and-idle-timeouts#extend-the-time-limit) **check before the session**. When a room full of learners starts their environments at the same time, the load on concurrent and IP limits is very different from a solo test. Checking these settings in advance takes a few minutes and prevents a problem that can't be fixed once the session has started.
* **Using a long or complex invite URL.** In a room setting, one wrong character means a failed attempt and individual troubleshooting – there's no way to paste the correct link directly. A short URL removes this friction entirely.
* **Skipping the 30-second platform orientation.** First-time Instruqt users often spend the first several minutes figuring out where things are. A brief walkthrough at the start means that time goes to the content, not the interface.
* **Setting idle timeout too short**. Live sessions include pauses – the instructor explains something, a question comes up, the group discusses. If idle timeout is set to 15 minutes and a learner's screen locks during a pause, they lose their environment. A minimum of 30–60 minutes keeps the room running smoothly through natural breaks.
* **Running the session as a lecture.** The hands-on element is what makes this format valuable. When the instructor presents and learners watch, most of the session's value disappears. Aim for the majority of time to be spent inside the lab.
* **Skipping the registration form.** Without it, you leave the session with no attendance record and no clean way to share post-event access or follow up with specific learners.

***

### Online workshop / virtual instructor-led training

Instructor and learners connected via Zoom or Teams, with labs running on Instruqt alongside the call. The instructor is presenting, narrating, and facilitating simultaneously – without the ability to read the room the way you can in person. Good preparation makes a real difference here.

#### Preparation

**In your track settings**

* Online sessions have participants joining from many different networks and locations, which puts a more varied load on your track's concurrent and IP limits. In your [track settings](https://docs.instruqt.com/tracks/manage/time-limits-and-idle-timeouts), review and set these limits for your expected group size before the session – this prevents access issues from appearing once the call is already live.

**On the Hot Start page**

* Use the same hotstart pool settings as a live workshop. Set up and fully configure the pool before the call starts – there's no good moment to troubleshoot a pool issue during a live session. See the [Hot Starts Best Practices](https://docs.instruqt.com/resources/hot-starts-best-practices.md) guide for recommended sizing and timing.
* Before the session, run a full end-to-end test: go through the invite link, complete the registration form, and confirm a sandbox starts immediately from the pool. Testing the pool alone doesn't catch every potential issue – the full flow needs to work.

**In the invite creation flow - add co-hosts**

* Add a [co-host](https://docs.instruqt.com/tracks/share/run-live-events/instructor-tools#how-to-add-instructors-team-members-to-an-invite-so-they-can-access-the-dashboard) to the invite so they can access the live event dashboard during the session. Having someone dedicated to monitoring raised hands, failed attempts, and inactive learners while you present means no one gets stuck unnoticed while you're talking.

#### Access & distribution

* In a virtual session, the natural moment to share the invite link is in the Zoom or Teams chat – but timing matters. Sharing it too early means some learners will start working through the content before you've set the context, and you'll find yourself managing a split group from the first few minutes. Paste the link at the moment you're ready to transition to the hands-on part, and announce it verbally so everyone knows to look at the chat.

#### Running the session

**In the live event dashboard**

* The [live event dashboard](https://docs.instruqt.com/tracks/share/run-live-events) gives you visibility into each learner's status: **raised hands, failed challenge attempts, inactive learners, and messages all appear in one place, updating every few seconds.** Keep the dashboard tab active and visible – updates pause automatically when the tab is hidden or the browser is idle. This is another reason a co-host is valuable: they can keep the dashboard open and monitored while you're sharing your screen.
* **Screen sharing with a specific learner is real-time.** When a learner has a problem, the recommended flow is: raised hand on the dashboard → request to share their screen → review their sandbox if needed → resolve together in direct chat. This keeps the issue contained without interrupting the rest of the group.
* **The built-in chat supports code snippets** – when you need to share a command or a code block with the whole group, send it directly in chat rather than asking everyone to copy it from your screen.

#### **Facilitation**

* **Before you share the link, take a moment to tell learners about Instruqt's in-platform tools**: the [raise hand button and the direct chat](https://docs.instruqt.com/tracks/share/run-live-events/instructor-tools). In an online setting, learners don't have a natural way to signal for help – letting them know these tools exist at the start means they'll actually use them when they need help, rather than sitting stuck in silence.
* **Share your screen showing the same track learners are on.** Running commands and following the instructions live alongside your audience keeps everyone oriented and models exactly what they should be doing.
* **Online sessions require more consistent narration than on-site ones.** Without shared physical space, learners who lose the thread of what's happening and why tend to disengage quietly. Keeping a steady commentary going – even brief signposting like "we're about to see what happens when we run this command" – holds the group's attention throughout.

> **Note:** Learners cannot send broadcast messages to the group – only instructors can. If you're expecting group discussion, direct participants to the Zoom or Teams chat for that.

#### **Common mistakes**

* **Going into the session without a co-host.** In a virtual setting, presenting and monitoring the dashboard at the same time is genuinely hard to do. Learners who are stuck can go unnoticed for the entire session if no one is watching the dashboard on their behalf.
* **Not mentioning the raise hand button and chat to learners.** Online participants have no natural way to get your attention – if they don't know these tools exist, they'll sit with a problem rather than surfacing it. A brief mention at the start changes this.
* **Skipping the end-to-end test.** Testing the hotstart pool in isolation doesn't catch every potential issue. Running through the full flow – pool provisioning, invite claim, form fill, sandbox start – gives you a complete picture of what learners will experience.
* **Setting the content expiry too short**. If the session runs longer than expected and a learner's access expires mid-session, they lose their environment. Adding a buffer to the content expiry is an easy way to prevent this.

***

### Conference hands-on workshop or training

A scheduled session at a conference – a larger room, a mixed audience, and a strict time limit, typically between 15 and 45 minutes. Attendees are often encountering Instruqt for the first time and may have arrived without registering in advance. This format rewards tight preparation and a clear, confident delivery.

#### Preparation

**In Instruqt settings**

* Review your track content and decide which **steps are essential and which are optional.** In a time-boxed conference session, knowing in advance where you can skip keeps the session coherent even if the room falls behind.
* Conference sessions often have **a large group starting at the same time on a shared venue network.** Check and set your [concurrent and IP limits](https://docs.instruqt.com/settings/platform/track-limits) before the event – this reduces the risk of learners being blocked at exactly the moment you need everyone in their environment. See the [track limits](https://docs.instruqt.com/settings/platform/track-limits) documentation for recommended values based on group size.

{% hint style="warning" %}
Not setting Track Limits correctly is one of the most common preparation mistakes. Check the [track limits documentation](https://docs.instruqt.com/settings/platform/track-limits) for recommended values.
{% endhint %}

**On the Hot Start page**

* **Size the pool to 70–80% of registered seats to account for conference no-shows.** Set auto-refill to off, start provisioning at least 1 hour before the session, and set the pool end time to 30–45 minutes after the session starts to cover late arrivals. See the [Hot Starts Best Practices](https://docs.instruqt.com/resources/hot-starts-best-practices.md) guide for full setup details.

**In the invite creation flow**

* **Copy the invite link and use a URL shortener service to create a short, simple version for your slides.** Conference attendees may be on unfamiliar devices with network restrictions – a long or complex URL increases the chance of a failed attempt and a lost attendee.
* Enable the registration form by setting access to "[Anyone leaving details](https://docs.instruqt.com/tracks/share/track-invite-links)." Keep it to one or two fields – name and email is enough. Conference sessions are a lead generation opportunity, so the form should always be there, but short enough that attendees actually complete it.

#### Access & distribution

* In a conference room, people arrive at different times, get distracted, and look away from the screen. **Displaying the invite URL from the very first slide and keeping it visible throughout** – in a corner of the screen, as a persistent overlay, or by bringing it back up regularly – means latecomers can still join without having to interrupt you to ask for the link.
* Consider printing **the shortened URL and WiFi password together** on a small table card. It removes the need to read out the link and keeps the session start clean.

#### Running the session

**Facilitation**

* Conference audiences move quickly and tend to have less patience for setup. A very **brief orientation to Instruqt at the start – 30 seconds** to point out the tabs, the instructions panel, and how to resize – helps first-time users engage with the content immediately.
* When you're presenting to a large room, personal attention isn't possible for everyone. Narrating for the group as a whole – **keeping up a steady commentary about what you're doing and why** – keeps the audience with you even when they're focused on their own screens. If you have a second person available, positioning them to circulate and support learners while you continue presenting means anyone who gets stuck doesn't have to wait long.
* In a fast-moving conference session, **having a fallback plan – "if we're running short, skip ahead to step 4"** – keeps the experience coherent even when the room is behind pace.
* A useful tip for larger events: have someone on your team dedicated to watching [the logs](https://docs.instruqt.com/tracks/manage/viewing-logs#view-track-logs) while the session is running. Spotting issues in the logs early means you can act before they affect the learner experience.

**Common mistakes**

* **Letting the invite URL disappear from the screen**. In a large room with people arriving at different times, the URL is a lifeline. Once it's gone, there's no easy way for a latecomer to get it without interrupting the session. Keeping it persistently visible keeps access open.
* **Using a long URL**. Conference attendees are less patient and more likely to abandon the attempt after one failed try. A short URL takes the error risk out of the equation.
* **Using a registration form with too many fields.** The form should always be there – conference sessions are a lead generation opportunity. But keeping it to name and email means attendees complete it rather than abandoning it at the door.
* **Bringing a track that's too long for the slot.** The content needs to fit the time available. A well-designed 40-minute track that learners complete is a better experience than a 90-minute track they abandon halfway through.
* **Sizing the hotstart pool to the full registration count.** Conference no-show rates are real. 70–80% of registered seats is the right target and avoids paying for sandboxes that sit unclaimed for the entire session.

***

### After the session – reviewing results, re-sharing content, and following up with learners

The session is the beginning of the learning. Without any structured follow-up, most of what learners absorbed will fade within weeks. Re-sharing the track gives learners a way to return to the content on their own – which is where a lot of the real retention happens.

* Review the live event dashboard and [reports](https://docs.instruqt.com/tracks/share/run-live-events): who completed what, where people dropped off, how many raised their hand. This is the main input for improving the next session.
* Re-share the track with attendees after the event **with a clear access deadline.** The right window depends on your agreement with the customer and the nature of the session – as a starting point, shorter windows (around 7 days) work well for conference sessions, while longer trainings typically benefit from more time (14–30 days). Set the track timelimit and content expiry to match so sandboxes close automatically when access ends.
* When re-sharing the track, **consider whether the content works well for self-paced consumption.** Learners who return after the event won't have an instructor alongside them. If the track relies heavily on verbal narration from the session, some adjustments to the written instructions may be worth making before sending it out.
* After the event, **check that your hotstart pool has stopped** and is no longer running.
