Skip to content

Import the program and speakers

Instead of entering your agenda item by item, you can load it from a CSV or Excel file. Two separate imports are available, one for speakers and one for program items — both follow the same six-step wizard.

Both imports are started from the “Program” section of the session sidebar:

What you import Page to open Button
Speakers “Speakers” “Import”
Program items “Program” “Import”

Each button opens the matching history page — “Import Speakers” or “Import Program” — where you click “New import”.

The history keeps every import with its date, file, number of rows, records created and updated, errors, and status (Pending, Validated, Running, Completed, Completed (errors), Failed…). The “⋯” menu on a row lets you view the import, “Duplicate configuration” to replay the same mapping on a new file, or delete it.

Accepted formats are CSV, TXT, XLS, and XLSX, with a maximum size of 50 MB.

A few tips before you start:

  • put the column headers on the first row: automatic mapping suggestions rely on them;
  • include an identifier column in both files — your own “External ID”, or the Eveos identifier if you start from an export (see below);
  • check the session’s time zone before importing schedules (see How your dates and times are interpreted);
  • for a CSV file, note which delimiter it uses (semicolon is offered by default).

The fields of a speaker record: First name, Last name, Company, Job title, Short description, Biography, Email, Phone, Website, LinkedIn, Twitter / X, Photo URL, Status, Tags, and External ID.

The fields of a program item: Title, Type, Short description, Description, Category, Place, Checkpoint, Capacity, Start, End, Status, Tags, External ID, plus the column holding the speakers’ identifiers.

This is the key to a successful program import: the link between a program item and its speakers is made through identifiers.

Two identifiers can play that role.

The “External ID” — an identifier that belongs to you: the one used by your own tool (website, spreadsheet, CRM, conference management software). Eveos stores it on the record without altering it, which makes it possible to find the same record from one import to the next. It must be unique and stable over time: for example SPK-001, SPK-2026-014, or the identifier coming from your database.

The Eveos identifier — the one the platform assigns to each record itself. You will find it in exports and in a record’s URL. It is especially handy for an export → fix → re-import round trip: you have no identifier to invent, exported records already carry theirs.

Step 1 — import speakers with an identifier

Section titled “Step 1 — import speakers with an identifier”

Your speakers file contains an identifier column, mapped to the matching field (here “External ID”):

External ID First name Last name Company
SPK-001 Camille Durand Eveos
SPK-002 Marc Lefèvre Studio Nord
SPK-003 Sofia Rossi University of Lyon

Step 2 — reference those IDs in the program file

Section titled “Step 2 — reference those IDs in the program file”

The program file contains a column listing the speakers’ identifiers, mapped to the speakers’ identifiers field:

External ID Title Start End Speakers
CONF-01 Opening 04/11/2026 09:00 04/11/2026 09:30 SPK-001
CONF-02 AI round table 04/11/2026 10:00 04/11/2026 11:00 SPK-001;SPK-003
CONF-03 Design workshop 04/11/2026 14:00 04/11/2026 15:30 SPK-002

If an item has several speakers, list their identifiers in the same cell, separated by a semicolon (;).

  • An identifier that matches an existing speaker creates the link automatically.
  • An unknown identifier is simply ignored: the program item is created, but without that speaker. Speakers are never created automatically from the program file.
  • If you map that column while no completed speaker import exists for the session, the wizard shows the “No speaker import found” warning. It is not blocking, but it usually means you should import the speakers first.
  • Roles (Speaker, Co-speaker, Moderator, Host) are not set in the file: you adjust them afterwards on the program item.
  1. “Upload” — choose the file and name the import.
  2. “Mapping” — match columns to Eveos fields.
  3. “Deduplication” — detect records that already exist.
  4. “Options” — settings applied to the whole batch.
  5. “Review” — dry run validation, then launch.
  6. “Progress” — live tracking and final summary.

A banner constantly reminds you of the target session: “You are importing into the session: …”. You can go back to a completed step as long as the import has not been launched.

  1. Drag your file into the drop zone, or click to select it.
  2. Enter an “Import name” to find it later in the history. If left empty, it uses the file name followed by the date and time.
  3. For a CSV file, choose the delimiter: Comma (,), Semicolon (;) (offered by default), Tab, Pipe (|), or Custom.
  4. Click “Next”.

A preview of the first rows lets you immediately check that columns are split correctly.

Each column of the file is matched to an Eveos field:

  • automatic suggestions are applied based on the headers; you can refresh them or fix each column manually;
  • the “First row contains headers” option can be turned off if your file has none;
  • a transformation can be applied to a column (Trim, UPPERCASE, lowercase, Capitalize, Title Case);
  • “Add manual field” fills a field with no source column, either as a Value (the same value for every row) or as a Column; the “Override” option applies the value even when the cell is filled;
  • for a date column, an explicit format can be specified (for example dd/MM/yyyy). Left empty, the format is detected automatically.

A “Required fields not mapped” warning flags mandatory fields that are still empty.

Deduplication compares each row of the file to the records already present in the session. By default, the criterion is the “External ID”, which makes your imports replayable without creating duplicates. Other criteria are available depending on the columns you mapped — in particular the Eveos identifier, ideal when your file comes from a platform export.

  1. Check the duplicate detection criteria. They are tested in the order shown: the first criterion that finds a match wins. Some criteria combine two fields (for example “First name + Last name”).
  2. Leave “Ignore case” enabled so that SPK-001 and spk-001 are treated as identical.
  3. Choose the “On duplicate detected” action: “Update existing” (default), “Skip row”, “Create anyway”, or “Mark as error”.
  4. Set the update strategy: “Overwrite with non-empty values” (default), “Replace all values”, or “Keep existing values”.
  5. Choose the “If no match found” action: “Create a new record” (default), “Skip row”, or “Mark as error”.

If you disable deduplication or define no criterion, a checkbox asks you to explicitly confirm that you accept the risk of duplicates.

For a program items import:

  • “Default type” — type applied to rows without an explicit type (Conference, Workshop, Keynote, Panel, Networking, Break, Ceremony, Entertainment, Other);
  • “Default status” — Draft, Published, Cancelled, or Completed;
  • “Automatic creation” — three switches to create on the fly the program categories, places, and checkpoints referenced in the file but missing from the session;
  • “Stop on first error”;
  • email notification when the import finishes.

For a speakers import, only the “Default status” (Draft or Published) and the last two settings are offered.

This step requires a dry run before any real processing:

  1. Click “Validate without importing”. Eveos analyses every row without saving anything.
  2. Check the result: number of valid rows, rows in error (click a row to see the details), and rows with a warning, grouped by message.
  3. Fix your file if needed and start again, or adjust the mapping.
  4. Tick “I confirm I want to import into the session …”.
  5. Click “Start Import”.

The button stays disabled as long as validation has not been run, the session has not been confirmed, or if the “Stop on first error” option is on while errors were detected.

Progress is displayed live, row by row. Each row gets a result: Created, Updated, Already up to date, Skipped, Skipped — not found, Duplicate, or Error. Clicking a row shows the match found, the criteria used, the mapped data, and the raw data from the file.

The final summary lists the Created / Updated / Already up to date / Skipped / Errors counters, with a shortcut to “View program” or “View speakers”.

The schedules in your file are interpreted in the session’s time zone. Check it before importing, then simply enter the local time of the event.

Accepted formats, edge cases, and what to do if schedules look shifted are detailed in How your dates and times are interpreted.

Two common situations:

  • fixing or completing records already imported: export them, fix the file, then import it again with deduplication on the identifier (“External ID” or the Eveos identifier from the export) and the “Update existing” action. Records are updated, none is duplicated;
  • processing a new file with the same settings: in the history, use “Duplicate configuration”. The mapping, deduplication, and options are reused; columns are re-matched by name.