Bulk import lets you create several speakers at once from an Excel file instead of entering them one by one. It pays off when you already have your speakers in a spreadsheet — typically ten or more. The wizard has five steps (upload, mapping, relations, preview, result) and runs validation on the data before anything is written.
Prepare your data in Excel. You can either download the template from the admin or use your own file — you map the columns by hand in the second step of the wizard.
Decide which languages the speaker texts (job title, bio) will be in. The template is generated according to the languages enabled on your event — a single-language event gets a template with one language only; a multilingual event gets separate columns for each language.
Photos go in separately. They cannot be uploaded through the import; add them by hand after the import in each speaker's edit panel.
If you want to link the imported speakers to specific sessions right away, the sessions must first exist in the Agenda.
In the admin, go to Content → Speakers. The section header has two tabs: Speaker (the speaker list) and Import. Open the Import tab.
In the first step of the wizard, click Download template. The template is an XLSX file with a single sheet, a header row, and a single sample row of dummy data.
The template is localized to your event's primary language — a Czech event gets the CS variant (sheet Řečník, headers in Czech), an English event gets the EN variant (sheet Speaker, headers in English).
The template does not include dropdowns or validation lists. You enter the numeric codes for Display level and Status by hand — the meaning of each code is written right into the column header.
Field Required Notes First name Yes Last name Yes Company No Job title (CS / EN / SK …) No A separate column for each language enabled on the event. Bio (CS / EN / SK …) No A separate column for each language enabled on the event. Display level No Numeric code 1–3. If you leave the column empty, Basic is used. Status No Numeric code 0–2. If you leave the column empty, the speaker is imported as Hidden.
Only First name and Last name are required. The other fields are optional. For Display level and Status, an empty value applies a default (Basic level, Hidden status) — see the pitfall below.
The job-title and bio columns appear in the template and in the wizard only for languages your event has enabled. A Czech-only event gets only Job title — CS and Bio — CS; other languages are not offered at all.
Both values are entered as numbers in Excel:
Display level controls the order and the size of the speaker card on the microsite and in the app. If you leave the column empty, Basic (code 3) is used:
Code Value 1 High 2 Medium 3 Basic
Status controls where the speaker profile appears to attendees. If you leave the column empty, the speaker is imported as Hidden (code 0):
Code Value Meaning 1 Published Profile visible everywhere — on the app dashboard, in the speaker list on the microsite and in the app, with sessions in the Agenda, on the session detail, and on the speaker's own detail page. 2 In agenda Profile not in the speaker list or on the dashboard; visible with sessions in the Agenda, on the session detail, and on the speaker's own detail page (reachable by clicking through from the session detail). Suits moderators and internal presenters you do not want featured in the speaker list. 0 Hidden Profile not visible anywhere — not in the speaker list, not with sessions; there is no speaker detail page either.
At the top of the screen there is a step indicator: Upload → Mapping → Relations → Preview → Result. You can move back between steps.
1. Upload. Download the template (optional) or upload your Excel directly through the file picker. Click Upload and process — the file is sent and the wizard moves to the next step.
2. Mapping. The wizard reads your file's headers and shows them in a Excel column — Sample values — Map to field table. For each column, pick the destination field from the dropdown (First name, Last name, Bio — CS, etc.). Columns you leave unmapped are skipped. The mapping is not saved anywhere — you set it up from scratch on every import. Click Validate and preview.
3. Relations. Link the imported speakers to other event content (typically sessions from the Agenda). The step appears when your event has relevant content to link to.
4. Preview. The wizard shows a summary: Total / Valid / Warnings / Errors / Duplicates. Below the summary is a per-row table with each row's status (a valid row is marked green). Nothing has been written yet — this is your last chance to go back and fix the file. If the summary looks good, click Import.
5. Result. After the import finishes, the screen shows the final counts: Created / Skipped / Errors. From here you can go back to the speaker list (Continue to list) or download a detailed CSV report on every row (Download report (CSV)) — useful if you need to trace which row did not import and why.
A duplicate is determined by first name and last name together. A row is a duplicate if:
a speaker with the same first and last name already exists in the event, or
the same first and last name repeats in the file across multiple rows.
Duplicate rows are not imported — the wizard skips them. From repeated rows, only the first occurrence is imported; the rest are dropped. The Preview step shows the duplicate count up front; in the Result, skipped rows are counted under Skipped.
This means the import does not overwrite existing speakers. If you want to change data in bulk for a speaker already in the event, the import is not the tool — use the bulk-actions panel in the speaker list, or edit the speaker by hand.
Uploading photos. Neither the template nor the wizard has a column for a photo or a photo URL. Add photos by hand after the import.
Importing sessions or the agenda. This wizard only creates speaker profiles. Create sessions by hand in the Agenda. Links between speakers and sessions can be set in step 3 of the wizard, or later from the speaker or session edit panel.
Bulk-updating existing speakers. Import is meant for creating new profiles. To change the Display level or Status on speakers already in the event, use the bulk-actions panel in the speaker list.
The downloaded template has the first data row pre-filled with dummy data. In the Preview step it shows up as valid. Delete the sample row before you fill in your own data; otherwise Jan Novak from Happenee ends up in your speaker list.
Writing "High" or "Published" into the cell does not work — the field expects a numeric code (1/2/3 for Display level, 0/1/2 for Status). If you enter a word or an invalid number (for example 4), the row is flagged as an error in Preview. The meaning of the codes is written into the column header in the template.
Status and Display level are not required, but an empty value does not mean "leave as is" — a default is applied. An empty Status means Hidden (the speakers are not visible to attendees anywhere); an empty Display level means Basic. If you want to publish the speakers right away, fill in the Status column (1 = Published). After the import, check the state in the speaker list — if everyone is hidden, you left the Status column empty.
The job-title and bio columns are generated for that specific event's languages. If you download the template from a trilingual event (CS + EN + SK) and use it on a single-language event, the extra columns either go unmapped (and stay empty) or get confusing. Download the template from the event you are importing into.
Bulk import handles only data in text fields. If your event has 80 speakers, plan for walking through 80 edit panels and adding photos by hand after the import.
If sessions already exist in the Agenda and you want to link speakers right away, this step is the fastest path. Skipping it means linking speakers from each session's panel by hand — an extra hour of work for 50 speakers and 30 sessions.
A duplicate is detected by first name and last name only, not by company or e-mail. If you have two different speakers with the same first and last name (for example, two John Smiths from different companies), the wizard treats the second one as a duplicate and does not import them — only the first is created. Before you click Import, check the duplicate count in Preview — if it is higher than you expect, go through the file and disambiguate genuinely different people (for example, with a middle name), or one of them drops out.
The wizard does not remember your column mapping — you enter it from scratch after every upload. If you import repeatedly (for example, speakers trickle in over time), keep the same column names and order in your file as in the downloaded template. Mapping then takes a few seconds and you will not miss a field.