How to Use the Registration Form (Self-Registration)
The Registration Form feature lets you create one or more public links that anyone can use to register for your event. Share one link broadly, or create a separate link per channel (e.g., "Instagram", "Family", "Work") so registrations get auto-tagged by source.
This is perfect for:
- Open events where you don't have a pre-defined guest list
- Large gatherings where managing individual invitations is impractical
- Multi-channel promotion where you want to know which source drove each registration
- Mixed approaches combining personalized invitations for close contacts with open registration for others
Enabling the Registration Form
- Go to your event dashboard at dashboard.fotify.app
- Select your event and click "RSVP" in the sidebar
- Click the "Event Details" tab
- Find the "Registration Form" section
- Toggle the switch to enable it
Once enabled, Fotify automatically creates your first registration link โ the Default link โ and the "Shareable registration links" section appears with your link list.
Shareable Registration Links
Every enabled registration form has a list of links. Each link has its own URL, its own stats, and can auto-apply guest tags to anyone who registers through it.
The Default link
When you first enable the form, Fotify seeds a Default link. It's marked with a blue "Default" badge in the list. The default link is special:
- Its URL is your event's main registration URL
- On a custom domain, the bare
/registerpath routes to the default link's URL - You can't pause or regenerate the default โ the code has to stay stable so shared URLs and custom-domain shortcuts keep working
- You can delete it, but doing so also removes the main URL and the custom-domain shortcut (you'll be asked to type the link's name to confirm)
Creating additional links
Click "New link" in the registration links section. A modal opens with these fields:
- Internal name โ only you see this (e.g., "Instagram campaign", "Family list"). It never appears to guests
- Custom code (optional) โ check the box to pick your own URL slug, or leave it unchecked to get an auto-generated one. Codes must be 4โ20 alphanumeric characters and show a live availability check as you type
- Override max party size for this link (optional) โ by default the link inherits the form's "Maximum additional guests" cap. Check this box to set a tighter cap that applies only to this link. See Per-link max party size below
- Auto-apply tags โ pick one or more tags (see Guest Tags) to attach to every RSVP that comes through this link
Click "Create link" and the new entry appears in the list.
What each link card shows
For each link you see at a glance:
- The internal name and status (Paused, Default, or just the name)
- The public URL with a one-click copy button
- Any auto-apply tags as colored chips
- A "Max party size: N" line, but only when the link overrides the form-level cap (links that inherit don't show this โ it would just repeat what's already in the form settings)
- Three counters: Page views, Unique visitors, Registrations
Per-link actions
To the right of each card there are icon buttons. Which ones appear depends on whether the link is the default and whether you have a custom domain:
| Action | Available on Default? | What it does |
|---|---|---|
| Copy link | Yes | Copies the URL to your clipboard |
| Edit | Yes | Change the internal name or auto-apply tags |
| Set as default (โญ) | Only on non-default links, when you have 2+ links | Promotes the link to default โ its code becomes the target of the /register shortcut on your custom domain and the current default is downgraded to a regular link |
| Regenerate code | No | Rotates to a new random code; the old URL stops working immediately |
| Pause / Resume | No | Temporarily takes the link offline (shows an "unavailable" page to anyone who opens it) |
| Delete | Yes โ except when a custom domain is active | Removes the link permanently. On the default link you must type the link's name to confirm. With a verified custom domain, deleting the default is blocked (the /register shortcut depends on it) โ remove the custom domain first or disable forms mode |
Pausing vs deleting: Paused links keep their stats and can be resumed. Deleted links are gone forever and their stats are lost.
Changing the default link
If you have multiple links and want a different one to power your custom-domain /register shortcut, click the โญ Set as default icon on that link. A confirmation appears โ once you accept:
- The new link becomes the default (gets the badge, and regenerate/pause are locked on it)
- The previous default is downgraded to a regular link โ you can now regenerate, pause, or delete it freely
- If the new default was paused, it's automatically reactivated
- Your custom-domain
/registerURL switches over immediately (the cache is invalidated on save)
Per-link max party size
Each registration link can have its own cap on how many additional people a registrant is allowed to bring. The form-level Maximum additional guests setting is the master cap; per-link overrides only let you tighten it for a specific link, never raise it above the form-level value.
This is useful when you want different audiences to register with different party sizes through the same form. Common patterns:
- Family link allows up to 4 additional people (party of 5)
- Instagram link allows 0 โ solo attendees only, since you don't know that audience as well
- Plus-one only link allows exactly 1 additional person (party of 2)
How the override works
When you create or edit a link, check "Override max party size for this link" in the editor:
- Off (default) โ the link inherits the form's max additional guests value. The form input shows the inherited cap, e.g. "Inherits the invitation cap: up to 3 additional people."
- On โ a number input appears, capped between 0 and the form-level value. Pick the number of additional people guests can bring through this specific link
The dashboard helper text always shows the form-level cap so you remember the ceiling. If you raise the form-level cap later, existing per-link overrides keep their values โ they don't auto-grow. If you lower the form-level cap below an existing override, the override is automatically clamped down on the next save (and the form-level value wins anyway during registration).
What guests see
The "Number of additional guests" field on the registration page uses the effective cap for the link the guest is on:
- Visit the family link with override = 4 โ guest can pick 0โ4 plus-ones
- Visit the Instagram link with override = 0 โ the plus-ones field doesn't appear at all
- Visit a link with no override โ the form's master cap applies, just like before
If a registrant tries to submit more plus-ones than the link allows (e.g. via a manipulated request), the server clamps the count down silently โ they're never registered with more guests than the cap permits.
Interaction with the event-wide capacity limit
Per-link caps stack with your event capacity (set on your subscription/event type). If your event has 200 seats and a registration would push the total past 200, the form returns "This event has reached its maximum capacity" โ regardless of what the per-link cap allows. Per-link caps shape per-registration size; event capacity caps the total.
When you can't enable the override
If your form-level cap is set to 0 (no plus-ones allowed at all), the override checkbox is disabled. There's nothing to override โ every link is already capped at 0. Raise the form-level "Maximum additional guests" first, then the per-link override becomes available.
Auto-Applying Tags to New Registrations
Each registration link can attach tags to the RSVPs it creates. This is the easiest way to segment your guest list by where people came from.
Example workflow
- Create the tags you need in Guests โ Manage tags (e.g., "Family", "Work", "Instagram")
- Back in Event Details โ Registration Form, click New link
- Name it "Family", pick the Family tag, and share that URL with relatives
- Create another link named "Instagram" with the Instagram tag, and share that one publicly
Every guest who registers via the family link automatically gets the Family tag. Same for Instagram. In the Guests tab you can filter by tag to see only that segment.
Tags can be added to or removed from an existing link at any time via the Edit icon. Changing tags does not retroactively tag guests who already registered.
Configuring Registration Settings
The form behavior (required fields, plus-ones, accept/decline, form copy) is shared across every link for the event. You configure it once; every link uses it.
Required Fields
Choose which fields are mandatory for registration:
- Email address โ toggle on/off (recommended for sending confirmation emails)
- Phone number โ toggle on/off (useful if you plan to send SMS reminders)
Note: Name (first and last) is always required for registration.
Allow Guests to Decline
By default, the registration form assumes all guests are attending โ they fill in their details and are automatically marked as accepted. If you want to give guests the option to decline the invitation directly from the registration form:
- Find the "Form Options" section
- Check "Allow guests to decline the invitation"
When enabled, guests see Accept / Decline radio buttons at the end of the form, after filling in their details. Declined guests are recorded with a Declined status in your guest list.
Maximum Additional Guests
Control how many plus-ones each registrant can bring at the form level:
- Set to 0 if guests can only register themselves
- Set to 1-10 to allow guests to bring additional people
This is the ceiling for every link on the form. To use a tighter cap on a specific link (e.g., 4 for the family link, 0 for the Instagram link), check "Override max party size for this link" in the link editor โ see Per-link max party size. Per-link overrides can only tighten this number, never raise it above the form-level value.
When guests register with plus-ones and you have either Collect Guest Names or Table Management enabled, they'll be prompted to provide names for each attendee.
Custom Form Title & Description
By default, the registration form section is titled "Register". You can customize both the title and add a description below it. Useful for changing the tone of the form, adding instructions specific to your event, or matching the language of your audience.
Fields: Form Title, Form Description. Both auto-save as you type.
Custom Invitation Message
The registration page shows your event's standard invitation content by default. Since template keys like {{FIRSTNAME}} can't work on a registration page (the guest hasn't registered yet), you can set a separate message:
- Find the "Custom Invitation Message" section
- Write your welcome message for the registration page
- Click Save Content
Custom Button Text / Success Message / Decline Message
You can override the text on the submit button and the messages shown after submitting (both accept and decline). All of these auto-save as you type. Leave any of them empty to fall back to the defaults.
Custom Response Deadline & RSVP Texts
The registration form shares deadline text and accept/decline button labels with personalized invitations. To edit them, click "Edit response deadline & RSVP texts" โ that link takes you directly to the RSVP Texts settings in the Invitation tab.
Custom Domains
If you've set up a custom domain for your event, your default link is reachable via two URLs:
yourdomain.com/registerโ the short shortcut, rewrites to the default link's codeyourdomain.com/r/{code}โ the full path
Non-default links only work via the full /r/{code} path. The dashboard shows the right URL for each link automatically โ just use the Copy button.
Which link does /register point to?
The /register shortcut always rewrites to the default link (the one with the blue "Default" badge). If you have multiple links and want a different one to own that shortcut, click the โญ Set as default icon on the new link. The rewrite updates immediately and the previous default becomes a regular link.
Rules that protect the shortcut
To keep the /register URL stable for anyone who's already seen it (printed invites, social posts, email campaigns), the dashboard locks a few actions while a custom domain is active:
- Deleting the default link is blocked โ remove the custom domain first, or disable forms mode for a cleaner off switch
- Regenerating the default's code is blocked (this rule applies whether or not you have a custom domain, since any rotation would break shared URLs)
- Pausing the default is blocked โ use the master forms-mode toggle to stop accepting registrations entirely
These rules don't apply to non-default links โ you can pause, regenerate, or delete any of them freely.
If you delete every link, then set up a custom domain
This is fine: creating your next link automatically promotes it to default, so /register works again. You don't have to do anything manual.
The Guest Experience
When someone visits a registration link, here's what they see:
Registration Page
- Event details โ your event name, date, time, and location
- Invitation message โ your custom or default welcome message
- Form title and description โ your custom heading and instructions (or the default "Register" title)
- Registration form with fields for:
- First name (required)
- Last name (required)
- Email (if required)
- Phone number (if required)
- Number of additional guests (if allowed โ hidden when declining)
- Names for additional guests (if Collect Guest Names or Table Management is enabled and plus-ones are selected โ hidden when declining)
- Any custom form fields you've configured
- Accept / Decline options (if enabled) โ radio buttons at the end of the form to indicate attendance
If the link is paused, deleted, or doesn't exist
Visitors see a dedicated Registration unavailable page with a message tailored to the situation:
- Paused โ "This registration link is paused. It may reopen soon."
- Not found โ "We couldn't find this link."
- Forms mode off / event closed โ "Registration is currently closed."
Closed URLs are marked noindex, nofollow so they don't pollute search results.
After Registration
After successfully registering:
- The guest sees a confirmation message (customizable) with a link to their personal invitation
- If email is enabled, they receive a confirmation email with their invitation link
- They appear in your Guest List with a "Self-registered" badge
- Their status is set to Accepted or Declined depending on their response
- Any tags you set on the registration link they used are attached automatically
Managing Self-Registered Guests
All self-registered guests appear in your Guest List alongside manually-added guests.
Identifying Self-Registered Guests
Self-registered guests display a "Self-registered" badge in the guest list, making it easy to distinguish them from guests you invited personally. Auto-applied tags from the registration link they used also show as colored chips in the Tags column.
Editing Registrations
You can edit self-registered guests just like any other guest:
- Go to the Guests tab
- Find the guest and click the Edit (pencil) icon
- Modify their details as needed
- Save changes
Response Tracking
Self-registered guests:
- Start with Accepted status (they confirmed by registering), or Declined if they chose to decline
- Can still access their invitation link to view event details
- Accepted guests can be assigned to tables if Table Management is enabled
Per-Link Analytics
Each registration link tracks its own stats so you can compare channels side by side.
Available Metrics (Per Link)
| Metric | Description |
|---|---|
| Views | Total number of times this link's page was opened |
| Unique Visitors | Number of distinct visitors (deduplicated over 24-hour windows) |
| Registrations | How many guests completed the registration form via this link |
Hover over any link card to see the numbers update in real time. Page views are deduplicated per IP over a 24-hour window.
How to Use These Insights
- Compare channels โ if your Instagram link has 500 views but only 10 registrations, the audience is warm but the form might be too long. Your Family link might have lower traffic but 80% conversion
- Spot a broken share โ a link with zero views a week after you shared it probably means the URL was wrong or the post was never published
- Pause underperformers โ if a channel isn't converting, pause that link and try a different approach
Combining with Personalized Invitations
You can use both approaches simultaneously:
- Add close contacts manually โ family and wedding party receive personalized invitations with their names
- Share registration links โ use one or more public links for colleagues, extended network, and social media
Both types of guests appear in the same guest list, making management simple.
When to Use Which
| Approach | Best For |
|---|---|
| Personalized invitations | Close family, wedding party, VIP guests |
| Registration links | Colleagues, extended network, social media announcements |
| Both | Most events โ personalize for key guests, open for others |
Tips for Success
Before Sharing Your Links
- Create all your tags first so you can auto-apply them on link creation
- Customize the form title, description, button text, and success/decline messages to match your event
- Configure which fields are required
- Test the registration process yourself on each link
Sharing Your Links
- Give each channel its own link with a tag so you can measure attribution
- Include your default link in email signatures leading up to the event
- Create a QR code linking to the right registration URL for printed materials
- Paste into social media with event details
Managing Capacity
- Set the Maximum additional guests based on venue capacity
- Monitor registrations regularly in your Guest List (filter by tag to see per-channel progress)
- Pause individual links when they've done their job, or disable the whole Registration Form when you're at capacity
Frequently Asked Questions
Q: How many registration links can I have? A: Up to 25 per event. Create as many as you need to segment by channel, audience, or campaign.
Q: Can I use both personalized invitations and registration links? A: Yes. You can add some guests manually with personalized invitations while also sharing public registration links for others. They all land in the same guest list.
Q: Do self-registered guests get a personalized invitation? A: Yes, after registering they receive a link to their own invitation page, which shows their name and all event details.
Q: Why can't I pause or regenerate the default link?
A: Its URL is your event's main registration URL (and the target of the custom-domain /register shortcut, if you have one). Rotating or pausing that code would break already-shared URLs. To stop accepting registrations entirely, toggle the whole Registration Form off at the top of the section.
Q: Can I delete the default link?
A: It depends on whether a custom domain is active for the event. Without one, yes โ you'll have to type the link's name to confirm. With a verified custom domain, the delete button is hidden and the API blocks the call; the /register shortcut depends on the default existing. Remove the custom domain first, or disable forms mode if you just want to stop accepting registrations.
Q: Can I pick which link my /register shortcut points to?
A: Yes. Click the โญ Set as default icon on any non-default link (visible only when you have 2+ links). The new link takes over the /register shortcut immediately and the old default becomes a regular link. If the new default was paused, it's auto-reactivated.
Q: How fast does the custom-domain shortcut update when I change the default?
A: Immediately. Fotify invalidates the internal cache the moment you save the change, so the next visit to yourdomain.com/register serves the new target.
Q: What happens when I pause a link? A: Visitors see an "unavailable" page with a friendly message. The link's URL and stats are preserved โ resume it at any time and it starts serving again.
Q: What happens when a guest follows a deleted link? A: They see the "We couldn't find this link" page. The URL will never resolve again.
Q: What happens if someone registers with an email already in my guest list? A: The system prevents duplicate registrations โ they'll see a message that they're already on the guest list.
Q: Can I require guests to provide dietary restrictions or other custom info? A: Yes. Any custom form fields you've configured appear on every registration link.
Q: Can different links allow different party sizes? A: Yes. In the link editor, check "Override max party size for this link" and pick a number between 0 and the form-level cap. The override only applies to that link โ every other link keeps inheriting the form-level value. See Per-link max party size.
Q: Can I use a per-link cap to allow MORE plus-ones than the form allows? A: No. The per-link override can only tighten the form-level cap, never raise it. To allow more, increase the form-level "Maximum additional guests" first; per-link overrides will then be able to use the higher ceiling.
Q: What if I set the form-level cap to 0 โ can I still allow plus-ones on one specific link? A: No. If the form-level cap is 0, the override is disabled because the per-link value can't exceed the form-level value. Raise the form-level cap first, then set the per-link override on links that should stay at 0 (or any number under the new ceiling).
Q: If I lower the form-level cap, what happens to my per-link overrides?
A: They're clamped down on the next save (you'll see updated values in the editor). At registration time, the effective cap is always min(per-link override, form-level cap), so even before you re-save, no guest can register with more plus-ones than the new form-level value.
Q: Can I change the tone or wording of the form (e.g., formal vs. informal)? A: Yes. Use the Form Title and Form Description fields to write your own heading and instructions in any tone. You can also customize the button and confirmation messages. Great for matching the form to your event's style or language conventions (e.g., "Du" vs. "Sie" in German).
Q: Will template keys like {{FIRSTNAME}} work on the registration page? A: No โ the guest hasn't registered yet, so their name isn't known. Use the Custom Invitation Message field for a welcome message without personalization placeholders.
Q: Can guests edit their registration after submitting? A: Guests can access their invitation page using the link in their confirmation email, but to change their information they should contact you.
Q: Is there spam protection? A: Yes. Every link goes through Cloudflare Turnstile bot verification.
Q: Can guests decline the invitation through the registration form? A: Yes, if you enable the "Allow guests to decline" option in your form settings. Declined guests are still recorded in your guest list so you know who can't make it.
Q: Are analytics per-link or combined? A: Each link has its own views, unique visitors, and registration counter so you can compare channels. There's no combined dashboard โ sum the columns yourself if you need a total.
Q: Do analytics reset when I regenerate a link's code? A: No. Stats are attached to the link row, not the URL. Regenerating the code keeps the counters intact; the only thing that changes is the public URL.
Q: What if I need to invalidate a shared link? A: Click Regenerate on the link (any link except the default). The old URL stops working immediately, already-registered guests keep their spots, and the link's stats are preserved.
Q: How are unique visitors tracked? A: Using anonymized IP hashes with a 24-hour deduplication window. The same person visiting the same link multiple times within 24 hours counts as one unique visitor. No personal data is stored for analytics.
Was this article helpful?