You can add your whole roster at once by importing a CSV file (a spreadsheet saved as .csv). TrainGrid reads your column headers automatically, so in most cases you can export from your HR or payroll system and upload it as-is.
Accepted columns
Only First Name and Last Name are required. Everything else is optional but recommended. TrainGrid recognizes the common name each column goes by, so you don't have to rename your headers.
- First Name (required) — also reads: First, Given Name, Legal First Name
- Last Name (required) — also reads: Last, Surname, Family Name, Legal Last Name
- Employee Number — also reads: Emp No, Employee ID, Emp ID, Badge Number, Number
- Email — also reads: Email Address, Work Email
- Department — also reads: Dept, Home Department, Department Description
- Position — also reads: Job Title, Title, Job Description, Role
- Location — also reads: Site, Plant, Facility, Division (a "Division" column in your file is read as the site, not as a division short form — the short-form prefix is an import option, see the tips below)
- Shift — also reads: Shift Code, Assigned Shift
- Supervisor — also reads: Manager, Reports To, Supervisor Name
- Hire Date — also reads: Start Date, Date Hired, Date of Hire, Hire/Rehire Date
- Employment type — also reads: Employee Type, Worker Type, Staff Type, Internal/External, Contract Type, Agency, Contractor. Values are matched against the types defined under Administration → Employment types, by name or code and ignoring case; a blank cell takes the organization’s default type, and the legacy spellings “agency”, “contract”, “contractor”, “temp” or “supplier” still resolve to External while that type exists. Anything unrecognized is flagged for review with the list of accepted names rather than guessed.
- Notes — also reads: Comments, Remarks
Tip: Don't have a matching column? On the Map columns step you can point each TrainGrid field at any column in your file by hand. And if you'd rather start fresh, click Download template on the upload screen for a ready-made file with all the right headers.
Accepted date formats
For Hire Date, TrainGrid accepts the formats you're likely already using:
YYYY-MM-DD(for example,2024-03-18)M/D/YYYYorD/M/YYYY(for example,3/18/2024or18/3/2024)- Excel serial date numbers (what Excel sometimes stores dates as behind the scenes)
Leave the Hire Date blank if you don't have it — that's fine.
Tips for a clean import
- Employee numbers are optional, but helpful. If your people have unique employee or badge numbers, include them — TrainGrid uses them to recognize the same person on future imports. If you don't have them, just leave the column blank.
- Same names are never a problem. Two people named "John Smith" are kept as two separate employees. TrainGrid never merges people by name alone. If they're in different departments, they always stay distinct.
- Re-importing is safe. Uploading the same file again won't create duplicates. Rows that match an existing employee (by number, email, or name + department) are updated, not doubled.
- New departments and positions are created for you. If a department or position in your file doesn't exist yet, TrainGrid adds it automatically. Locations are created too when you are an Administrator or Manager and your plan has room for another site (Starter and Professional include one location); otherwise use a location name that already exists under Administration → Locations, or leave the cell blank, and the preview tells you before you import.
- Preview before you commit. The Preview & import step shows exactly what will be added, flags any rows with errors (which are skipped, never guessed at), and points out same-name employees so nothing surprises you.
- Prefix employee numbers with a division short form (optional). If your divisions have short forms (Administration → Divisions), the Preview & import step offers "Prefix employee numbers with a division short form", listing each active division as "SHORTFORM · Name". Leave it on "No prefix" to import the numbers exactly as they are in the file. Choose a division and its short form is added in front of every employee number in the file with nothing in between (MLT + 1234 = MLT1234); the Number column shows the final value before you import, and the duplicate check runs on the final numbers. Numbers that already start with that short form are left as they are, so re-importing a file you exported from TrainGrid never adds the prefix twice (the option tells you how many numbers were left unchanged, and each is marked "unchanged" in the Number column); blank numbers stay blank (the "Assign internal employee numbers" option, if ticked, still gives them a TG- number without the prefix); a number that would be longer than 50 characters is flagged as an error and skipped. If a row's original number already belongs to one of your employees (you loaded the roster without prefixes and are uploading the same file with one), the review step flags it with the existing person listed underneath and "Same person" pre-selected, so a re-upload never doubles your roster; choose "Different person" only when the row really is someone new. If you simply want those existing people to carry the new prefix, tick Renumber matching employees with the prefix (under the prefix option; needs the Manage employees permission): each matching row then changes the existing person's number on their own record (1001 becomes MLT1001, training history untouched, one audit entry per change) instead of asking; the row reads "Renumbers <name>: 1001 → MLT1001" before you import, and the Done screen counts them under Renumbered. A number that was taken by someone else between the preview and the import is reported as skipped, never forced. The prefix is an option on the import, not a column in your file — a "Division" column header is still read as the Location column.
Example file
| First Name | Last Name | Employee Number | Department | Location | Hire Date |
|---|---|---|---|---|---|
| Jane | Doe | 10245 | Packaging | Main Plant | 2024-03-18 |
| Amir | Khan | 10246 | Sanitation | Main Plant | 2023-11-02 |
| Rosa | Mendez | Shipping | West Plant | 5/9/2022 |
Note: Imports handle up to 2,000 rows at a time. If your roster is larger, split it into a few files — re-importing is safe, so there's no risk of overlap.