Importing Swimmers & Nominations by CSV
Bring a whole squad into Swim Club Connect from a spreadsheet — create or update swimmers and enter them into a meet's events in one go, no Hy-Tek software required.
Is this the right tool?
Use this when your swimmers are sitting in a spreadsheet, not a Hy-Tek file. It covers two real jobs at once:
- Onboarding — adding a club's whole roster at once instead of one swimmer at a time.
- Bulk nomination — entering a whole squad into a meet's events in one upload instead of by hand.
If your entries already exist as a Hy-Tek .hy3 file from Meet Manager or Swim Central, use Import nominations instead — the two aren't in competition, they cover clubs with different starting points. And this one isn't just for hosts: it works on your own club's swimmers whichever meet you're entering, including one you're only visiting as a guest.
Prepare your CSV file
Four columns are required — column order doesn't matter, and the wording is forgiving (extra spacing or capitalisation is fine), but stick close to these names:
| Column | Accepted headers | Format |
|---|---|---|
| First name | First Name | Given name only — see below |
| Last name | Last Name | |
| Date of birth | Date of Birth, DOB, Birthdate | DD/MM/YYYY (single digits fine, e.g. 7/2/2016) |
| Sex | Sex or Gender | M, F, Male, Female — any case |
House or Team is optional — add a House or Team column if you use one, or leave it out entirely.
The first-name column must contain only the first name.
A cell holding "Hannah Abbott" is the single most common mistake in a swimmer CSV — it'll be reported as an error rather than quietly mis-filed, but it's worth getting right before you upload.
Optional: add events to nominate at the same time
Add one column per event, using the event name as the header — 50m Free, 100m Back, 8 & Under 50m Free, 4x50m Free Relay all work, and match against this meet's actual events automatically.
| Nominates the swimmer | Does not nominate |
|---|---|
Yes, Y, NT, True, 1, an X, a tick, or almost any other text | An empty cell, No, N, False, or 0 |
Putting an actual time in the cell records it as a seed time: decimal seconds (38.50), minutes as m:ss.hh (1:23.45), or a bare whole number of seconds for anything ten seconds or over (28). A value like 35:20 — a colon with no hundredths — is genuinely ambiguous, so it's flagged for you to fix rather than guessed at; the swimmer is still nominated, just with no time recorded yet.
Every column heading is checked before anything is imported.
An event header that can't be understood is reported up front, listing exactly which column, rather than discovered halfway through — and rather than silently entering nobody in that event.
Choose your file
On the meet's operations page, under Bring data in, tap Import swimmers.
Tap Choose .csv file and select your file. Nothing is sent anywhere yet — it's only read on your own computer at this point. Tap Preview import when you're ready to see what it contains.
Waiting for your club details?
If this card shows as unavailable, your account's club membership hasn't loaded yet — give it a moment and it'll unlock on its own.
Review before anything is saved
Nothing is written until you tap Import on this screen. The decisions that matter sit at the top, ahead of the detail.
Swimmer owner
Only shown when the file would create new swimmers. New profiles are created under whichever member you choose here — it defaults to you, but tap Change to search any member of your club by name or email. Handy when you're running the import on someone else's behalf, such as a club admin's own swimmers.
Existing nominations
Only shown when your file has event columns. Choose what happens to events these swimmers are already entered in:
- Replace existing nominations — swimmers end up entered in exactly what the file lists; anything else they were entered in is removed. Flagged with a warning icon, since it's the only mode that removes anything, and the screen names exactly how many nominations that would be.
- Add to existing nominations — everything already entered stays, the file's nominations are added on top, and seed times are updated where they differ.
- Leave existing nominations unchanged — event columns are ignored entirely; only swimmer names, dates of birth, and houses are created or updated.
Below that: swimmer and nomination counts reported separately (a file that imports 42 swimmers but matches none of its event columns still says so plainly, rather than looking like a clean success), the age reference date this meet uses, and — only when relevant — cards for repeated event columns, unreadable columns, skipped rows, and anything else worth checking before you commit. Every swimmer and their resolved events are listed too, so you can spot-check individual rows.
New to this club, or a big file?
Worth trying a handful of rows first. It's the same review screen either way, and a small file makes it quick to confirm your column headings are being read the way you expect before you commit the whole roster.
Tap Import once you're happy — disabled only when the file has nothing importable at all.
Check the summary
Headline counts first: swimmers created and matched, nominations added, updated, or removed. Anything skipped or not imported is broken out separately, with the reason.
Always glance at "New swimmers created."
Every one of them is listed by name — worth a scan for anyone who was already in your club under a slightly different spelling or date of birth. That's the one moment this is cheap to catch; afterwards it's just a duplicate profile.
Tap Done to return to the operations page. Made a mistake? Re-upload a corrected file — swimmers already created are matched and updated rather than duplicated, and the totals screen will show you how much of the file is actually new versus a refresh.
That's the whole file
Prepare the spreadsheet, choose it, review what it would do, import. The same file works for onboarding a roster, entering a squad into one meet, or both in the same upload.
Already have a Hy-Tek entries file instead? See Import nominations. For everything else Meet Exchange can do, see Using Meet Exchange.