Knowledge Base / Contacts

Importing Contacts

Updated October 5, 2026

Moving from spreadsheets or another system? Import your contacts from a CSV file instead of adding them one at a time. The import can create families and assign roles and grade levels as it goes.

Import a CSV file

  1. Go to Enrollment → Families.
  2. Click Import contacts.
  3. Not sure how to format your file? Click Download example CSV file for a template with every supported column.
  4. Upload your CSV file.
  5. Under Columns, match each TeachHero field to the right column from your file. Your column headers are matched automatically where possible — First name and Last name must be mapped.
  6. Optionally check Update existing contacts — this matches rows to existing contacts by email and updates them. When it's off, rows whose email already exists are skipped.
  7. Click Import.

The import runs in the background. You'll get a notification when it starts and another when it finishes, showing how many rows were imported. If any rows failed, the notification includes a link to download a CSV of the failed rows with the reason for each — fix those rows and import just that file again.

What you can import

Column Notes
First name, Last name Required.
Primary email Used to detect existing contacts.
Secondary email, Mobile phone, Secondary phone Optional contact details.
Gender, Birthday Birthday format: 2010-05-15.
Address line one/two, City, State, Zip, Country Country as a two-letter code, e.g. US.
Roles One or more of Student, Parent/Guardian, Teacher, Admin, Emergency Contact, separated by commas.
Family Family name, e.g. Doe Family — the family is created if it doesn't exist, so members with the same family name are grouped automatically.
Family role The person's relationship to students, e.g. Mother.
Current grade Must exactly match one of your school's grade level names.

Note: Importing assigns roles but does not send invites or grant sign-in access. Invite your teachers and admins separately — see Teacher & Admin Access.

Tips for a clean import

  • Import a small test file (2–3 rows) first and check the results before importing everything.
  • Fill in Primary email wherever you can — it's how TeachHero recognizes a contact if you ever import again.
  • Rows without an email are always created as new contacts, so importing the same file twice can create duplicates. If that happens, see Merging Duplicate Contacts.