Personnel imports can carry photos: upload a single ZIP containing your spreadsheet and the image files. This reference shows exactly how to structure it - link here from any import.

ZIP structure

One data file plus the photos. The data file is a CSV or an Excel workbook (.xlsx / .xls) - the same formats the plain upload accepts - and the archive must hold exactly one of them:

personnel-import.zip
├── personnel.csv          (or personnel.xlsx)
├── alexander_grant.jpg
├── emily_chen.jpg
└── marcus_silva.jpg

A folder around the contents is fine - photos are matched on the file name, not the path. Archive metadata that macOS adds when you compress a folder (__MACOSX, ._name sidecars, .DS_Store) is ignored, so a ZIP made with Finder’s “Compress” works as-is.

Matching photos to rows

Choose ONE strategy in the import wizard and name your files accordingly:

Strategy File naming Example
Filename column (recommended) a Photo File column holds each row’s filename Photo File: alexander_grant.jpg
ID in filename file named after the row’s ID number STAFF001.jpg
UUID in filename file named after the record UUID (updates/re-imports) a84d2329-....jpg
Name in filename file named after the person alexander_grant.jpg

With the filename-column strategy, rows without a photo simply leave the column empty - they import without one.

Photo guidance

  • JPEG or PNG, one clear front-facing photo per person - photos feed badges and, where used, face credentials, so follow the same quality rules: even lighting, unobstructed face, sharp focus
  • Keep files reasonably sized (a few hundred KB each) - very large archives upload slowly
  • Filenames: stick to letters, numbers, hyphens and underscores; avoid spaces and special characters
  • A row that imports but cannot find its photo is reported as “imported, photo not matched” - fix the filename and re-run; the record updates rather than duplicates

Back to top

Copyright EvTrack. All rights reserved.

Page last modified: 2026-09-28 15:32.