Realsmart Help

← Realsmart Help

Cohort import

Cohort import

Cohort import (sidebar → Data → Import → Cohort import) adds existing users to existing groups in bulk, from a CSV listing a username and one or more cohort (group) names per row. Like Password import, this writes directly to the database as soon as you start it — there's no provisioning queue and no undo.

What it does and doesn't do

  • It only works with users and groups that already exist in the school. Use Import users and cohorts first if you need to create either.
  • Unlike the main user import, cohort import never creates a group for you. If a cohort name in your CSV doesn't match an existing group exactly, that row is reported as "not found" and skipped — nothing is auto-created. Create the group first via Groups if it doesn't exist yet.
  • Memberships added this way are marked as a protected membership, so a later MIS sync won't automatically remove them — they'll show up for a human decision if they're ever reviewed in end-of-term tidy-up.
  • A user already in a listed cohort is simply left alone — no duplicate membership, no error.

Before you start

  • You need the data-import permission for the school.
  • Select the school first. Cohort import always runs against the school you're currently in — switch to it before you start. (You can't run this while viewing all schools in MAT mode.)
  • Make sure the groups you're targeting already exist — check Groups if you're not sure.

CSV format

One row per user, with the username first and one or more cohort names after it. A header row is expected but its exact wording isn't checked — the first line is always skipped, so any header text is fine as long as there is one.

username,cohort,cohort
jbloggs,Year 7,7A
asmith,Staff,
  • Column 1 (username) — required. If you paste an email address here, only the part before the @ is used as the username.
  • Columns 2+ (cohorts) — one group name per column; add as many columns as the most cohorts any one row needs. Blank cells are ignored, so it's fine for some rows to have fewer cohorts than others.

Steps

Step 1 — Open Cohort import {#step-1}

With the right school selected, open Import in the sidebar, then choose Cohort import.

Step 2 — Upload your CSV {#step-2}

Select your CSV file. The header row is skipped automatically and the remaining rows are parsed into a username plus a list of cohort names each.

Step 3 — Start the import {#step-3}

Select Start import. For every row, the user is looked up in this school and — for each named cohort that already exists — added to it (if not already a member). This happens immediately, row by row.

Result

You'll see a summary: how many users were updated (had at least one new membership added) and how many rows had a problem, plus a list of the specific errors:

  • "User not found: username" — no user with that username exists in this school.
  • "Cohort not found: name (for username)" — that group name doesn't match any existing group in this school; it was not created, and that particular membership was skipped (other cohorts on the same row, if found, are still added).

Cohort import per row match results showing member found and cohort found outcomes

Troubleshooting

  • Every row says "Cohort not found" — check the exact spelling of your group names against Groups; matching is exact (case-insensitive) but not fuzzy, and cohort import won't create the group for you.
  • "User not found" for someone you know exists — check you're in the right school, and that the username column doesn't have extra whitespace or the full email where only the username part is expected.
  • A user isn't showing the new group afterwards — confirm the row's cohort name matched by checking the summary error list; a silently-skipped "not found" cohort won't add anything.

Related

Was this helpful?