Skip to main content
AwardKit

CSV Import

Bulk import award program entries on AwardKit from a CSV file. Map columns, preview rows, attach categories, import full teams, and create custom entry fields automatically.

CSV import is the fastest way to bring entries in from a spreadsheet, last year's program, or another platform. Click Import in the Entries tab header (next to Add entry) to open the import wizard.

When to use it

  • Migrating from Google Forms, Typeform, or another platform mid-cycle
  • Bringing in entries collected outside AwardKit (an existing pre-screening process, a sponsor channel)
  • Repopulating last year's nominees into this year's program for a "previous winners" reference category
  • Seeding test data while you're configuring the entry form

For a single entry, use Add entry instead. CSV import is optimized for batches.

CSV import does not collect entry fees. Manually imported entries are accepted as-is. To charge a fee on imported entries, send entrants a Stripe payment link from your Stripe Dashboard after the import.

Download a sample CSV

The upload step has a Sample CSV button (next to the dropzone). Clicking it downloads an awardkit-sample-entries.csv file with the canonical column names and two example rows: one with a 3-member team and one with a solo entrant. If your program already has categories configured, the sample pre-fills the first one so the file is a working starting point you can edit and re-upload.

Use it when you're not sure how to name your columns, want to confirm the ;-separated team format, or just need a clean starting point.

CSV requirements

The importer accepts standard CSV files (comma-separated, UTF-8). Up to 1,000 rows per import.

ColumnRequiredNotes
Entry TitleYesUp to 255 characters
Team NamesYes;-separated list, lead first. See Teams
Team EmailsYes;-separated list, must align 1:1 with Team Names
DescriptionNoUp to 5,000 characters
CategoryYes*Must match an existing category by name
Any other columnNoBecomes a custom field on the entry form (see below)

* Required when your program has categories configured. If your program has no categories at all, you can leave the cell empty.

Header names are matched flexibly. Any of Entry Title, entry_title, Entry, Title, or Project Name map to the entry title column. The same forgiving matching applies to team names, team emails, description, and category. Lead Name and Lead Email are also accepted for single-member entries.

When your program has categories configured, every row must specify a valid one. Rows with a missing or unknown category are rejected with a row-level error, matching the behavior of the regular entry form.

Teams

Teams are imported lead-first. Both Team Names and Team Emails are ;-separated lists, and the importer pairs them by position: the first name belongs with the first email, the second with the second, and so on.

  • The first member is the lead. They become the Lead on the entry and own the manage page.
  • Every other member becomes a team member. They're added with role Team Member.
  • Email is required for every member, including the lead. AwardKit keys entrants on email per program, so a member without an email can't be created. If you don't have an email for someone yet, leave them out of the CSV and add them through the entry's edit flow later.
  • Team Names and Team Emails must have the same number of entries. If they don't, the row is rejected with a clear error.
  • Up to 50 team members per entry.
  • Duplicate emails inside one team are rejected. A typo that lists the same email twice surfaces as a row-level error rather than silently merging members.
  • Empty entries inside a list (Maya;;Lin) are dropped before counting, so a stray double-; doesn't break a row.

Example

Entry Title,Team Names,Team Emails,Category,Description
Greenfield Rebrand,Maya Chen;Lin Park;Sam Diaz,maya@example.com;lin@example.com;sam@example.com,Best Innovation,A complete brand refresh for a 50-year-old institution.
The Changemakers Report,River Kim,river@example.com,Community Impact,A 12-month investigation of community-led recovery programs.

In this example, Maya Chen is the lead of Greenfield Rebrand with Lin Park and Sam Diaz as team members. The Changemakers Report is a single-entrant entry led by River Kim.

Existing entrants are reused, not duplicated. If a member's email is already attached to an entrant in this program (from a prior entry, an earlier import row, or a previous form response), the importer joins to that existing entrant instead of creating a second one. Their original name is preserved.

The import wizard

The wizard steps through four stages:

Upload

Drag a CSV file onto the dropzone or click to browse. The file is parsed in the browser, so nothing is sent to the server until you confirm the import.

Preview

The preview shows the first five rows with the column mapping AwardKit inferred from your headers. You can:

  • Reassign any column to a different known field (Entry Title, Team Names, Team Emails, Description, Category)
  • Mark a column as a custom field so it imports as a question on the entry form
  • Toggle individual columns off if you don't want to import them
  • See per-row validation errors before continuing (missing required values, invalid emails, list-length mismatches between Team Names and Team Emails, unknown categories)

The summary line tells you how many rows are valid and how many have issues. Only valid rows continue to the import step.

Import

AwardKit creates entries one row at a time. If a row fails, none of its data is partially saved: fix the row in your CSV and re-import. The dialog can't be dismissed during this step.

Results

The results step summarizes what happened: imported, skipped duplicates, errors, and warnings. Click Done to close, or Back to upload a corrected file.

Categories

Categories are matched against existing categories on your program by name (case-insensitive, whitespace-trimmed). You don't pre-create them through the importer.

  • Category is required when your program has categories configured. Unknown values reject the row.
  • If your program has no categories, leaving the Category cell empty is silently fine.

Custom fields from extra columns

Any column that isn't recognized as a built-in field (entry title, team names, team emails, description, category) is treated as a custom field. In the preview step you can decide whether each unknown column becomes a new question on your entry form or gets dropped.

When Create new fields is on (the default for empty programs), AwardKit creates the matching form fields before importing rows so the responses land on real fields and show up in future entries, exports, and the public entry page.

This auto-creation is disabled when:

  • The program already has form responses (existing structure is preserved)
  • The program already has entries (avoids redefining fields mid-cycle)

In those cases, extra columns still come through on each row's data, but the form schema isn't changed.

Duplicate handling

Two duplicate checks run against the (entry title, lead email) pair:

  • Already in the system: the same entry title and lead email already exists in this program. The row is skipped and counted as a "duplicate of an existing entry" in the results.
  • Duplicated within your CSV: the same pair appears twice in the same file. Only the first row imports; later rows are counted as "duplicate within file" so you can spot the issue in your spreadsheet.

This separation is intentional: knowing whether a duplicate is in your file or in the system tells you whether to fix the CSV or just live with the dedup.

Errors and warnings

The wizard distinguishes two outcomes per row:

  • Errors stop the row from importing. Examples: missing required column, missing or invalid member email, missing member name, list-length mismatch between Team Names and Team Emails, duplicate emails within one team, unknown category, validation failure on the entry title length.
  • Warnings allow the row to import but flag something the organizer should know.

Errors are listed in the results step with the original spreadsheet row number, so the row label matches what you see in Excel or Google Sheets (header is row 1, the first data row is row 2).

What happens after import

When the import finishes, AwardKit:

  • Upserts an entrant record for every team member (lead and members alike) so they're all discoverable in the entrants list
  • Resolves the category by name, scoped to the program
  • Triggers auto-assign for each new entry so judges immediately see the new entries in their queue
  • Sends no payment links or notification emails to the imported entrants. If you need them to confirm or update their entry, send them the manage link manually.

CSV import is bidirectional with Export CSV. The export ships the same column names the importer expects (Entry Title, Team Names, Team Emails, Description, Category, plus any custom form fields), so a round-trip through export, edits, and re-import works without renaming columns. Rows that match an existing entry on (Entry Title, lead email) are skipped.

Tips

  • Start from the sample CSV if you've never used the importer before.
  • Try a small file first. Run 3-5 rows through the wizard to confirm your column mappings before uploading the full batch.
  • Match category names exactly (case doesn't matter, but spelling does). Set up your categories before importing.
  • Use a Case study video URL column for embedded video previews. URL fields auto-render YouTube, Loom, and Twitter/X embeds in the entry detail panel.
  • Keep emails normalized in your spreadsheet. Imports are deduped on lowercase, trimmed emails, but trailing whitespace in source data is a common cause of "missing" matches.
  • Spreadsheet tip: in Excel/Google Sheets, build the team columns by typing each member on a separate row, then use TEXTJOIN(";", TRUE, range) to combine them into one cell per entry.

On this page