How to use FirstWork
Role-based walkthroughs for building programs, running sessions, and customizing settings. Filter by your role or browse everything.
Building programs on the website
The website builder at firstworkapp.com/create lets BCBAs build and share programs without needing a tablet. The output is a Lesson Code that any RBT can paste into their device.
- 1Press 'Share a program' on FirstWork's websiteGo to firstworkapp.com/create and log in with your FirstWork account.
Building a program in the app
You can build a Preset directly on any device. Same result as the website builder — use whichever is more convenient for your workflow.
- 1Open the correct Student ProfileTap the student name at the top of the Dashboard to switch profiles if needed.
- 2Go to Presets → "Create Preset"Existing Presets are listed here. Tap the create button to start a new one.
- 3Select your targetsSelect from the modality dropdown (e.g., Receptive ID, Matching, FFC). Browse by category or search by name. Check targets to include them.
- 4Configure session settingsSet field size (2–10), difficulty, number of trials, and error correction style. Tap the
?next to any setting for a plain-language explanation. - 5Save as PresetName it and save. It appears as a tile on the Dashboard for one-tap launching. Up to 6 Presets show as quick-launch tiles.
- 6Share the PresetTap the three-dot menu on the Preset tile and press "Share Preset" to generate a Lesson Code. Send it to your team, or upload the lesson code into your data collection system.
You can import existing lesson codes here to quickly update programs you've already made.
Uploading custom targets
When a learner needs a target that isn't in FirstWork's built-in library, upload your own images to create it.
- 1Tap "Add Goal" on the Student Profile DashboardThis opens the custom upload flow for the active student.
- 2Select an image from your camera rollThis becomes the correct-answer stimulus. Crop and position it, then tap Next.
- 3Select distractors — minimum 12These are the wrong-answer choices shown during trials. 12 or more ensures enough variety so wrong answers don't repeat too often.
- 4Save and add to a PresetThe custom target now appears in your target list. Add it to any Preset to begin practicing.
Programs containing custom-uploaded targets cannot be shared via Lesson Code. They stay on the device where they were created.
- 1In "Create Preset," find the target to modifyBrowse or search for it in the target list.
- 2Tap the pencil icon next to the target nameThis opens the distractor editor for that specific target.
- 3Select a custom distractor array (12 minimum)Custom distractors activate when the program's difficulty is set to
Custom.
Modalities (lesson types)
A modality is the type of learning activity for a target. FirstWork supports 16 modalities. The same target can be practiced across different modalities — mixing them supports generalization.
Importing a program (RBT)
When your BCBA sends a Lesson Code, here's how to load it onto your tablet in under a minute.
- 1Open FirstWork and enter your PINMake sure you're fully logged in before proceeding.
- 2Confirm you're on the correct Student ProfileThis is the most critical step. The program saves under whichever student is currently active. Check the name at the top of the screen before going any further.
- 3From the Student Profile home page, tap "Import Preset"This is on the home screen of the Student Profile — not in general app settings.
- 4Paste the Lesson CodePaste exactly as your BCBA sent it. Lesson Codes are case-sensitive.
- 5Preview and confirmYou'll see which targets are included and the modality. Tap Import to confirm.
- 6The Preset appears on the Dashboard, ready to launchTap the tile to start a session immediately with all settings in place.
Importing into the wrong Student Profile means all session data is attributed to the wrong learner and can't be moved. Always confirm the student name before tapping Import.
Logging in on a new device
Use your 6-digit Login Code to access your account on any device. No email or password required.
- 1Open FirstWork on the new deviceOn a fresh install, the app downloads the curriculum first — about 200 MB, takes 1–2 minutes.
- 2Go to Settings → Account Management → Access PassTap the gear icon in the top right of the Dashboard to open Settings.
- 3Tap "I already have a Login Code"Enter your 6-digit code exactly as received — it is case-sensitive.
- 4Done — your account syncs to the deviceStudent Profiles and programs are now accessible here.
It was emailed when you signed up. You can also find it under Account Management on any device that's already logged in.
Launching and running a session
Once a program is loaded onto the tablet, sessions start in one tap. Here's what to expect during a live session.
- 1Confirm the correct Student Profile is activeCheck the learner's name at the top of the screen before anything else.
- 2Tap the Preset tile to launchThe session starts immediately with all saved settings. No extra configuration needed.
- 3Hand the device to the learnerThe trial screen shows the question and answer choices. The learner taps their response directly on screen.
- 4Every response is recorded automaticallyCorrect, prompted, and incorrect outcomes are logged with timestamps. No manual note-taking required.
- 5End the session when doneSessions end when the trial count completes, time runs out, or you tap End Session in the toolbar.
Don't change program settings unless directed by your BCBA. If something seems off mid-session, flag it to your supervisor rather than adjusting settings yourself.
Instructor mode
For targets where the learner responds verbally or gesturally — rather than tapping the screen — Instructor Mode switches scoring to the RBT.
- 1Enable in Global SettingsInstructor Mode is enabled as a device-wide setting under App Settings.
- 2The learner responds normally to the questionThe question appears on screen as usual. The learner responds verbally or gesturally.
- 3The RBT scores each responseThree buttons appear:
Correct,Prompted, andIncorrect. Tap the appropriate outcome after each response.
Prompted responses are not counted as correct — they're recorded as their own outcome. This lets BCBAs measure prompt dependence over time, not just overall accuracy. Always score Prompted accurately rather than rounding up to Correct.
Focus mode & reward system
Focus Mode restricts access to fun apps during sessions. The optional reward timer grants timed access between lessons as a digital reinforcer.
- 1In Settings, select the apps to restrictUses the device's built-in Screen Time feature. Select which apps are blocked while a session is active.
- 2Those apps are inaccessible during lessonsThe learner cannot open games, videos, or other distractors while a session is running.
- 3(Optional) Configure reward timeSet
Lessons per sessionto 2 or more so gaps exist between lessons. SetReward timein minutes. Between lessons, the learner gets that amount of time on their preferred apps automatically.
Pacing & feedback settings
These settings control timing and feedback around each trial. Configure in Preset settings for a specific program, or in App Settings to set defaults for new programs. Program settings always override defaults.
| Setting | What it does | When to use it |
|---|---|---|
| Delay after correct | How long the correct tile stays highlighted before the next question loads. | Increase for learners who need more processing time, or to slow a rushed pace. |
| Delay after incorrect | Pause before error correction or the next attempt begins. | Adjust to give the learner time to reset after an error. |
| Correct-answer chime | Plays a success sound when the learner answers correctly. | Turn off if the learner is noise-sensitive or if the sound disrupts flow. |
| Field reduces after correct | Reduces the number of answer choices after each successful trial. | Use to shape discrimination and maintain momentum in early acquisition. |
You can change pacing settings during a live session using the Session Adjustment Toolbar — without stopping or exiting. Useful when the learner's state shifts and you need a quick change to maintain instructional control.
Prompts & error correction
FirstWork automates error correction so it's delivered consistently on every trial. You configure how prompts appear and when hints activate.
| Setting | What it does |
|---|---|
| Border prompt — On | After an incorrect response, a green border highlights the correct answer before the error-correction trial. The highlight disappears on reset so the next attempt is a clean screen. |
| Border prompt — No-No-Show | Hidden on the first two attempts, shown on the third. Reduces prompt dependency for more advanced learners. |
| Time-based hint | After a set delay with no response, the correct answer is highlighted. Supports attending without immediately giving away the answer. |
| Reduce field after incorrect | FirstWork will remove answer options that are incorrectly selected, narrowing the field toward the correct choice. |
| Shuffle | FirstWork will shuffle all answer options between attempts. |
| Hide response options | FirstWork will only display answer options after the entire auditory prompt has been played for a trial to prevent overly quick responses. |
| Advance on first incorrect | Session moves to the next trial after the first wrong answer — no error correction loop. Used primarily for probing. |
Probing & assessment
Probe mode runs clean baseline or maintenance checks while still capturing full trial-level data alongside your teaching data.
Stimulus & SD controls
Control how stimuli are presented and how SDs are delivered during trials.
| Setting | What it does |
|---|---|
| Adjust SD | Select a specific SD or let SDs vary across trials. Variability supports generalization to natural language. |
| Hide response options until SD completes | Answer tiles don't appear until the audio SD finishes. Prevents early responding before the learner hears the full instruction. |
| Speaker speed | Sets how fast audio SDs are delivered — slow, medium, or fast. Adjust to the learner's receptive processing speed. |
| Identical match-to-sample | The correct answer tile shows the exact same image as the target stimulus. Toggle for pure MTS programs. |
| Shuffle | Randomizes question order across trials so the learner cannot predict the sequence and respond by position. |
Reviewing progress
Data is organized at three levels. Start at the high level and drill down as needed — the detail is always there.
- 1High level — View Progress (daily summary)Tap the Today's Progress card on the Dashboard. Set a date range. See overall accuracy broken down by Target, Preset, and Visual Schedule. Best for end-of-session check-ins and supervision meetings.
- 2Target detail — Goal History ChartEach target has its own accuracy graph over time. Phase markers — vertical dashes on the chart — appear automatically whenever a Preset's settings change. No manual logging needed.
- 3Trial detail — Full Trial DataPress "Edit Data" in the goal history chart for any goal or program to access every individual trial as a sortable row. Includes prompt type, SD delivered, probe mode flag, latency, and hint status. Mis-recorded outcomes can be corrected directly from this view.
Every time you change a Preset's settings and run a new session, a phase marker is recorded automatically. You can see exactly when clinical parameters changed and whether learner performance shifted in response — without keeping a separate log.
Press "Generate Report" to export all data from a student profile as a CSV. Each row is one trial, including target name, date, modality, SD given, probe mode, prompt type, outcome, latency, and error correction details.
Exporting data (CSV)
Use "Generate Report" to export every recorded trial as a row in a spreadsheet. Open in Excel or Google Sheets for further analysis.
- 1Go to the student's detailed data viewFrom the Dashboard: tap Today's Progress, then Show Detailed Data.
- 2Press "Generate Report"Select the date range you want to include in the export.
- 3Open in your spreadsheet toolEach row is one trial. Columns include: target name, date, modality, SD given, probe mode, prompt type, outcome, latency, and error correction details.
Responses export as Correct, Incorrect, or Prompted. Prompt type is a separate column: Instructor, App: Hint, App: Model + Repeat, App: Repeat, or None.

