TestUtopia
SolutionsPricingAboutContact
Help Center
  • Getting started

Assessments

  • Creating assessments
  • Inviting candidates
  • Proctoring
  • Reviewing results

Questions

  • Question types
  • Multiple-choice questions
  • Essay questions
  • Code questions
  • Test case format

Library

  • The Library
  • Importing and publishing

Interviews

  • Managing interviews
  • Live interviews
  • Interview questions
  • Scorecards
  • Interview templates

AI Assessments

  • AI Assessments
  • Templates
  • The question pool
  • Reading the report

Streams

  • Streams
  • Enrolling students
  • Stream tests
  • Stream results

Training

  • Training & Certification
  • Participants
  • Training tasks
  • Certificates and evidence

Account & billing

  • Team and roles
  • Plans and billing
  • Account and security

For candidates

  • Before you start
  • What is recorded
  • Coding questions
  • If something goes wrong
  • After you submit
  • Your data

Developers

  • REST API
  • Webhooks
  • Greenhouse
  • SSO and SCIM

Cannot find what you need?

Contact support
  1. Help Center
  2. /
  3. Streams

Enrolling students

Students are enrolled into a stream, not invited per assessment. Once they are on the list, the schedule sends them what they need.

Adding students

One at a time — email and name, optionally phone, age, previous experience and who referred them.

Bulk import — the usual way to start a cohort, and the two paths behave differently at the ceiling:

  • Adding a student individually is all or nothing: if it would exceed the limit, it is refused.
  • Bulk import fills to capacity. A 300-row list against 200 remaining places imports 200 and reports the rest as errors, rather than rejecting the whole file.

That is deliberate — a cohort list assembled from someone else's spreadsheet should not fail entirely because it ran ten rows long. The result tells you how many were processed, how many succeeded, and the row number and email of each failure, so you can fix the remainder and re-import without hunting.

If you set allowed email domains on the stream, rows outside those domains fail here, which is the point: a typo in a supplied list surfaces as a rejected row instead of a student who never receives anything.

Student statuses

StatusMeaning
InvitedEnrolled, not yet started
ActiveWorking through the programme
CompletedFinished the programme
Selected for interviewMoving to the next stage
On holdPaused, still enrolled
WithdrawnLeft voluntarily
No showNever started
UnreachableEmail is not getting through
DisqualifiedRemoved for cause
RejectedNot proceeding

Each change records the reason, who changed it and when.

Most statuses are administrative bookkeeping. Disqualified and Rejected are judgements about a person, so write the reason as if the student will read it — with a cohort this size, one of them eventually will ask.

Email delivery

Each student carries a delivery status, a failure reason and a bounce count. Streams run for weeks on addresses supplied in advance, so a wrong address is not a small problem: the student silently receives nothing and shows up as a No Show at the end.

Check for delivery failures after the first send, not after the first deadline. That is the moment the problem is still cheap to fix, and the bounce count is the fastest way to spot a whole batch of bad addresses from one source.

CVs

Students can be asked to upload a CV through their own link. PDF and Word documents are accepted.

Upload requires explicit consent, recorded with a timestamp. This is a real GDPR consent, not a checkbox for show: a CV is a substantial amount of personal data about someone who is not your employee, and you are the controller of it.

The stored file is never exposed through the API — only the original filename, size and upload time are returned.

GOTCHA: CVs are outside the candidate retention sweep. The automatic anonymisation described in Account and security covers hiring candidates; student records and their CVs are a separate regime and are not expired by it. If you run recurring cohorts, decide your own deletion schedule and apply it — nothing does it for you.

Individual students

Each student has their own page with their details, their result on every test in the stream, their notes and their status history.

This is the view to use before making a decision about someone. The cohort table shows a single score, and a single score cannot distinguish a student who was strong throughout from one who was excellent twice and absent once — which is a difference the missing-test policy may be hiding.

Was this helpful?
PreviousStreamsNextStream tests
TestUtopia

Advanced technical assessment engine designed for high-precision engineering teams. Curating talent through rigorous data-driven evaluation.

Solutions

  • Solutions
  • Pricing
  • Features

Company

  • About

Support

  • Help Center
  • Contact support

Legal

  • Privacy Policy
  • Terms of Service
  • Cookie Policy
  • Security
  • Trust Center
Test Utopia Ltd · Razsadnika-Konyiovitsa, Bl. 22, fl. 6, ap. 38, Sofia, 1330, Bulgaria
Reg. No.: 207409973|VAT: BG207409973
[email protected]|+359 886 363 248

© 2026 Test Utopia Ltd. All rights reserved.