Free tool

RSVP form generator

Collect event RSVPs without a backend. Build a form for attendance, guest counts and notes, style it, and paste the code into your event page.

Fields

Submission

Where submissions go. Paste your form ID to make the code real — or keep the placeholder while you experiment.

On submit

Spam & privacy

Design

Styling

Adds Tailwind utility classes. Your project needs Tailwind installed.

Live preview

An RSVP is a headcount, not a mailing list

Everything about an RSVP is attached to money and a deadline: catering, seats, badges, a venue minimum. Precision matters more than volume, and a wrong number costs more than a missing one.

Attending — yes or no
An explicit no is as valuable as a yes, because it is the only thing that stops you chasing someone who has already decided.
Number of guests
Ask for a number, not “are you bringing anyone”. You cannot cater from a yes.
Dietary requirements
Free text, not a checklist. Allergy lists are never complete, and the one you leave off is the one that matters.
Name
For the door list. Match it to how the invitation was addressed or you will not find them.

The mistake to avoid: No deadline on the form itself

If the cut-off only appears in the invitation, replies arrive the week of the event and the headcount you needed a fortnight earlier never materialises. Put the date on the form, and consider closing it when the deadline passes rather than collecting replies you cannot act on.

Export to a spreadsheet and sort by attending. The useful list is the one you would not have without asking for an explicit no: everyone who has not answered at all, which is who to chase.

How it works

  1. Choose a template and fields. Pick a template, then add, remove, or reorder fields and mark the required ones. Add step breaks to turn a long form into a multi-step form.
  2. Style it. Pick CSS, Tailwind, or unstyled output and tune the theme: accent color, light or dark, rounded corners.
  3. Copy your framework's code. Switch to HTML, React, Vue, Svelte, Astro, or a fetch() version and copy, download, or open it in CodePen.
  4. Connect an endpoint. Create a free ShipMyForm form to get a real endpoint, then drop your form ID in so submissions actually arrive.

Want the background? Read what a form backend is and how to stop form spam without reCAPTCHA. Want the submissions in your inbox? See how to send an HTML form to email. Already have a Google Form? Convert it to HTML. Got a form that submits but delivers nothing? Check its HTML.

Frequently asked questions

Should an RSVP form ask people to decline as well as accept?
Yes, and it is the field people leave out. A silent non-reply is ambiguous: you cannot tell a no from someone who has not looked yet. An explicit decline is what lets you stop chasing, and it costs the guest one click.
How do I collect plus-ones and dietary requirements?
Ask for a number of guests rather than a yes-or-no on bringing someone, because you cannot cater from a yes. Collect dietary requirements as free text instead of a checklist: allergy lists are never complete, and the omission is the one that matters.
Can I close an RSVP form after the deadline?
You can, and for a catered event you usually should. Put the cut-off date on the form itself rather than only in the invitation, so the deadline is visible at the moment someone is deciding whether to answer now or later.
How do I get the responses into a guest list?
Export the submissions to CSV, or connect the form to Google Sheets so each RSVP appends a row as it arrives. Sorting by the attending field gives you the door list and, more usefully, the list of people who have not replied at all.