SupporterBase
How-to guidesRostering

Import events and rosters in bulk

Upload one CSV to create many events with their shifts already built

Upload one CSV to create a batch of events with their shifts already on the roster board, the fastest way to set up a day of action across several locations. It is the same tool and the same template as Import events in bulk, covered here from the roster side.

Imported shifts arrive published

Shifts you build on the board start as Draft, and imported shifts arrive published. They are live to volunteers the moment the import finishes, with their spots open for self-signup on each event's sign-up form.

When to import

Importing creates the events and their shifts together, in one pass, from data you already hold in a spreadsheet.

  • Import when the events do not exist yet and they share a shift pattern.
  • Add shifts on the board when the event already exists.
  • The import never assigns anyone. Assign volunteers on the board afterwards.

Before you start

Two things have to be true of every row you import.

  • Only admins get Event imports. Captains and vice-captains do not see it.
  • Every group you name must already exist, because the import matches on the group's name and skips a row it cannot place.

Start from the template

Download example-event-and-shift-import.csv and fill it in. It carries every column already named and in the order the importer expects, so you never map a column by hand. The same link sits on the Event imports page under "You can use this example CSV to get started".

Dates go in as 2026-09-14 and times as 9:00AM.

What each column expects

The tables below explain the columns in that template. Use them to fill it in, not to build a spreadsheet from scratch.

Event columns, one row per event.

ColumnRequiredNotes
Group nameYesMatches an existing group, in any casing
Event nameYes
StatusYesPublic or Private
Start date, End dateYes
Start time, End timeYes
Time zoneYesAlso applied to the shift times
Event typeNoFalls back to your default event type
Venue name, Address 1, City / suburb, State, Postcode / zipNo
Latitude, LongitudeNo
TagsNoComma-separated
Page contentNoAccepts HTML
Enable RSVP autoresponseNoUses the event type's own subject and body
Contact name, Contact email, Contact phoneNo

Shift columns repeat in numbered sets of five, so Shift 2 role name opens the second shift, and ten sets is the default with the exact number set per site. Check how far the numbering runs when you map your columns.

ColumnNotes
Shift 1 role nameUp to 100 characters
Shift 1 dateCan differ from the event's date
Shift 1 start time
Shift 1 end timeMust be after the start time
Shift 1 number of volunteersA whole number, and blank gives the shift two spots

Leave a whole set empty for an event with fewer shifts, and know that a set missing a role name, a date or either time is dropped without an error.

Run the import

Open the import tool

In the left-hand menu, go to Imports > Event imports. Grab the template from here if you have not already.

Upload your file

Click Choose file, then upload a CSV or paste your spreadsheet data straight in.

Select the header row

Pick the row holding your column names from the preview.

Map your columns

Match each column in your file to the SupporterBase field beside it.

Fix what is flagged

Rows with a problem, such as a group name that matches nothing, are highlighted for you to correct.

Submit

Click Submit. The page confirms the file is importing, and the events take a few minutes to appear.

What the import creates

Each row becomes an approved event with a roster attached, and the shifts on it are already Published.

  • No publish step is needed and no email goes out, because the import assigns nobody.
  • Every imported shift takes self-signup, so its spots appear on the event's sign-up form. There is no column for Staff only.
  • The number of volunteers becomes that many empty spots on the shift.

Check the roster afterwards

Open Roster & shifts on one imported event and read it against the row that made it.

  • Count the shifts against the sets you filled in, to catch any the import dropped.
  • Check the spot count on each shift, since a blank count becomes two spots.
  • Set any shift to Staff only that volunteers should not claim.

Editing an imported shift behaves like editing any published shift: the change stages as Changes to publish, volunteers keep seeing the imported version, and it reaches them when you publish the roster.

Import two rows first

Run a couple of rows, open the roster and check the shifts landed the way you meant.

Further reading

On this page