For event organizers and small teams hosting limited-seat events

An event page that closes signups at capacity and offers a waitlist

We build a single event page that counts signups, stops taking registrations when your seats are full, and switches to a waitlist form. Every signup and waitlist entry lands in a Google Sheet you already know how to use.

The problem

Most signup forms don't know when an event is full. You find out after 62 people have registered for 50 seats, or you close the form by hand and field messages from people who arrive too late. Waitlists end up as a separate email thread that's easy to lose. You need the page itself to stop at the limit and keep a clean, ordered list of who's next.

What we’d build

  • An event page showing the title, date, location, description, and a live count of seats left.
  • A signup form that checks capacity on the server at the moment of submission, so two people can't both take the last seat.
  • An automatic switch to a waitlist form once capacity is reached, with a clear message that the event is full.
  • Confirmation screens for both signups and waitlist entries, so people know which list they are on.
  • One Google Sheets integration: signups and waitlist entries are saved as timestamped rows on separate tabs, and capacity is read from a settings tab so you can change it yourself.
  • Up to 5 screens total, hosted at a link we give you, with full source code.

A concrete example

A community cooking school runs a Saturday class limited to 18 seats. We build an event page with the class details and a seats-left counter. People enter their name, email, and number of guests. The server rejects any signup that would go past 18, and once the class fills, the page shows a waitlist form instead. Signups go to one tab of a Google Sheet and waitlist entries go to another, each with a timestamp so the order is clear. When someone cancels, the organizer deletes that row and moves the first waitlist person over by hand. The five screens are the event page, signup form, signup confirmation, waitlist form, and waitlist confirmation. The two rounds of tweaks cover things like wording, field changes, and layout.

Pricing, Tool

This use case fits the Tool tier.

Tool
A real tool with saved data
$749
5 business days
  • Multi-step tool with saved data (quote builder, intake flow, tracker, simple dashboard)
  • Up to 5 screens
  • One integration (email, Google Sheets, Stripe, or a webhook)
  • Hosted link + full source code
  • Two rounds of tweaks
Start with Tool

Need more? See all tiers.

Frequently asked

Does the waitlist move people into open seats automatically?

No, the waitlist is an ordered list in your sheet, and you decide when to contact people and move them over. Automatic promotion and emails to attendees go beyond the single integration and five screens in the Tool tier.

Can I take payments for tickets?

Not in this build, because the Tool tier includes one integration and we've used it for Google Sheets. If you need Stripe payments instead, we can discuss swapping the integration, but a sheet wouldn't be included then.

Do organizers need a login?

No, there is no login in this scope. You manage everything through the Google Sheet. Logins and roles are part of our Mini-app tier.

What does hosting cost?

Hosting is included for 12 months, then it's $9.00 per month, or you can self-host using the full source code we hand over.

What if I'm unhappy with the result?

You get two rounds of tweaks to adjust the build. If we decline the project before work starts, you get a full refund, but we don't offer refunds after delivery.

Start

Related use cases