A casting spreadsheet template you can build in an afternoon
A spreadsheet is where most casting processes begin, and for good reason. It is free, everyone knows how to open one, and you can shape it to your show in an afternoon. The problem is rarely the first week — it is the third, when three people are editing the same file, a formula breaks, and nobody is sure which tab holds the current cast list.
This guide gives you a spreadsheet structure that holds up well: the tabs to create, the columns worth including, and a few formulas that turn a static list into something that answers questions. It also names the points where a spreadsheet starts to strain, so you know what you are watching for.
Structure it as four tabs
A single sheet with everything crammed onto one page is the most common mistake. Separate concerns into tabs, and let each tab do one job.
Tab 1 — Performers. Your master list of everyone who auditioned. This is the source of truth for contact details and materials; every other tab refers back to it.
Tab 2 — Auditions. The record of first-round auditions: who read for what, when, and how it went.
Tab 3 — Callbacks. The narrower list of people you called back, grouped by role, with panel notes.
Tab 4 — Cast list. The output: the roles and the names attached to them, plus offer and acceptance status.
Keeping these separate means the cast list stays readable even when the performers tab has three hundred rows, and it means one person cleaning up auditions cannot accidentally scramble the offers.
Recommended columns
Do not over-build. Start with columns you will actually fill in, and add more only when you feel the absence of one.
Performers tab:
| Column | Why it matters |
|---|---|
| ID | A stable number for each performer, so other tabs can reference them |
| Name | Full name, printed consistently |
| Email / Phone | Two columns; you will need one and rarely know which |
| Role interest | What they came in for |
| Conflicts | Dates unavailable within your rehearsal window |
| Materials | Whether you have a headshot and resume |
| Status | Where they are: auditioned, callback, offered, cast, declined, cut |
Auditions tab: performer ID, date, room, panel notes, and a simple rating you agree on in advance. Reference the performer by ID rather than retyping their name, so a correction in one place does not leave stale copies everywhere.
Callbacks tab: performer ID, the role or roles they were called for, the grouping or session, and panel notes. Keep notes specific and dated.
Cast list tab: role, performer ID, performer name, offer status, and acceptance status. This is the tab you will look at most in the final week, so keep it uncluttered.
The Status column on the performers tab is the quiet workhorse of the whole system. Constrain it to a fixed set of values — a data-validation dropdown prevents the drift where "callback", "Callbacks", and "CB" all mean the same thing to a human and three different things to a formula.
Formulas that earn their keep
A spreadsheet becomes genuinely useful the moment it starts counting for you. A few formulas cover most of what you will want to know at a glance.
Count how many performers sit at each status:
=COUNTIF(Performers!G:G, "callback")
Point that at your status column and change the label to build a small dashboard — auditioned, callback, offered, cast — that updates itself as you work.
Pull a performer's name onto another tab from their ID, so you never retype it:
=XLOOKUP(A2, Performers!A:A, Performers!B:B)
Flag roles on the cast list that still have no name attached:
=IF(B2="", "OPEN", "filled")
A short summary block of these counts, pinned to the top of your performers tab or a small dashboard tab, tells you where the whole process stands in one glance. That single view is often the thing people open the spreadsheet for.
Keep formulas few and legible. A sheet nobody but its author can maintain is a liability the moment that author is unavailable on audition day.
Where a spreadsheet breaks
Spreadsheets are excellent until a few specific pressures arrive at once. Knowing them in advance tells you when to change tools rather than fight the file.
Concurrent editing. Two people editing the same tab during a live audition is where data quietly corrupts — a row deleted here, a sort applied there, and suddenly names and statuses no longer line up. Cloud spreadsheets handle two editors; they do not handle a whole team updating in real time under pressure.
No real-time truth on the day. A spreadsheet cannot tell your front-of-house who just walked in the door. On a busy audition day the file is always a few minutes and one manual update behind the room.
Manual data entry. Every name in the sheet was typed by someone, usually from a paper sign-in sheet, usually late at night. That transcription is slow and error-prone, and it scales badly.
Privacy and access. A shareable link is all-or-nothing. There is no clean way to let an assistant see the schedule while keeping the panel's private notes private, so sensitive comments tend to leak into shared views.
None of this means a spreadsheet is wrong. For a single small production it is often exactly right. The signal to move is when you are spending more time maintaining the file than casting the show.
Importing it later
The good news is that a well-structured spreadsheet is not wasted work when you outgrow it. Because you separated performers, auditions, callbacks, and cast into clean tabs with consistent columns, the data is already in a shape that imports cleanly. Stagebound imports directly from Google Sheets, mapping your columns to performer records, so the afternoon you spent building this structure carries forward rather than being retyped.
The habits that make a spreadsheet maintainable — stable IDs, a constrained status column, one source of truth per fact — are the same habits that make it portable. Build it well now, and whether you stay in the sheet or move to a dedicated pipeline later, the work holds up.
If your process starts with paper, our audition sign-in sheet template pairs naturally with the performers tab above.