A time slot sign-up sheet in Google Forms
Interview slots, parent-teacher evenings, appointments, class sessions: one Google Form where each slot disappears once it’s taken.
What you’re building
A normal Google Form with a multiple-choice question listing your slots. Each slot has a capacity: 1 for one-to-one meetings, or the room size for sessions. When a slot reaches its capacity it’s removed from the form, so nobody can book it twice.
Step 1: Write the form
- Add a short answer question for the person’s name (and one for their email, or turn on Settings → Responses → Collect email addresses).
- Add a multiple choice question, for example Pick a time slot, and make it required.
- Add one option per slot. Put the day and time in the option text, for example Mon 10 Nov, 9:00–9:15. People read options on phones, so keep each one short and unambiguous.
Tip: keep option text final before you set limits. Each limit is tied to the exact option text, so renaming an option later means updating its limit too.
Step 2: Set a limit for each slot
Open the free generator, paste your question title exactly as it appears on the form, and add each slot with its capacity:
var QUESTION = 'Pick a time slot';
var LIMITS = {
'Mon 10 Nov, 9:00–9:15': 1,
'Mon 10 Nov, 9:15–9:30': 1,
'Mon 10 Nov, 9:30–9:45': 1
};Any option you don’t list stays unlimited. A limit of 0 hides an option from the start, which is handy for a slot you want to keep but not offer yet.
Step 3: Install it on the form
- In the form, open ⋮ → Apps Script.
- Replace everything in
Code.gswith your generated script and save. - Choose
setupLimiterin the function menu and click Run. Approve the permission prompt. Google shows it because the script edits your form on your behalf.
That’s it. Submit a test response to see a slot count down. Delete test responses from the Responses tab afterwards so they don’t use up seats.
Several days or several sessions
If you have slots across several days, you can list them all in one question, or use one question per day. The free script limits one question. The full script limits as many questions as you like in the same form, and also works with dropdowns, which are tidier when you have dozens of slots.
When every slot is taken
When the last slot fills, the question can’t be left empty (Google Forms doesn’t allow a choice question with no options), so the slots are shown as — FULL instead. With the full script you can also close the form automatically and show your own message, such as “All slots are booked. Email us to join the waiting list.”
Changing slots later
- Add a slot (free script): add it to the form and to
LIMITS, runresetLimiter, then runsetupLimiter. The reset makes the script re-read your option list. - Add a slot (full script): add it to the form and the config, then run
setupagain. Slots that are currently full are remembered. - Someone cancels: delete their response in the Responses tab. The seat frees up on the next submission.
- Start over: run
restoreChoices(free) orrestoreAllChoices(full) to put every slot back on the form.
Set it up in two minutes
Build the free script for one question, or get the full version for $7 once: any number of questions, checkboxes and dropdowns, auto-close and restore.