Voter registration

Let voters request to join your election through a public registration page, with auto or manual approval.

Instead of (or alongside) uploading a fixed roster, you can let people register themselves. Turn on Voter registration on the election's Basics step to generate a public registration page, a shareable link, and a QR code poster.

Turning it on

Registration needs the election's start and end times set first — the toggle is disabled until both are filled in. Once enabled, set:

  • Registration opens — at or before the election start.
  • Registration closes — at least 24 hours before the election ends. That buffer exists so approved registrants have real time to receive their ballot and vote before the election closes.
  • Approval mode — auto-approve or manual approval (see below). You can switch modes later from the Registration card.

These window and mode settings are locked in with the rest of Basics while the election is in draft. After launch, the registration card lets you adjust the mode and the close time (but not the open time or the toggle itself).

Auto vs. manual approval

Auto-approve adds a registrant straight to the voter roll the moment they submit — if the election is already running, their invitation goes out immediately; if it's still scheduled, they ride the normal start-of-election invitation batch like everyone else.

Manual approval holds every registration as pending until you decide. Registrants can attach a short message when they register (a note to you — "I'm covering for Jana this term," for example) so you have context when reviewing.

How tier limits interact

Every plan has a voter cap. If auto-approve tries to add a registrant past the election's current cap, that registration is held as pending instead of failing outright — the registrant sees a normal "your registration is being reviewed" confirmation, with no mention of billing. The first time this happens, every admin on the org gets an email that registration has hit the limit and pending registrants are queued up.

Upgrading the election to a higher tier automatically resumes: the queue drains oldest-first until either everyone is approved or the (higher) cap is hit again, sending invitations and approval emails as it goes. Switching a capped election from manual to auto also triggers the same drain. You don't need to approve the backlog by hand after an upgrade — just upgrade and it clears itself out.

While any registrations are pending, admins also get a daily reminder email (until the registration window closes or the pending queue empties) so a stuck queue doesn't go unnoticed.

The registration link and QR poster

The Registration card (visible on the election page once registration is enabled) gives you:

  • Copy link — the public registration page URL, safe to post anywhere (email, a shared doc, a physical sign-up sheet).
  • Download QR PDF — a printable poster with a QR code pointing at that link, your org's logo and accent color if branding is set, and the election title. Good for posting at a physical location or including in a mailed notice.

The registration page itself shows your election's branding and only accepts submissions while the window is open — before it opens or after it closes, visitors see a message explaining the window instead of a form.

The approvals table

The Registration card's table lists every registration with filters for status, email, name, and message text. It defaults to showing pending items first so a manual-approval election surfaces exactly what needs your attention.

For each row you can:

  • Approve a pending registration — adds the voter and (for a running election) sends their invitation right away.
  • Reject a pending registration — optionally with a message; leave it blank and the registrant gets a neutral default. Rejected registrants can register again with the same email while the window is still open.
  • Change your mind on an already-decided registration — flip an approval to a rejection or vice versa — but only while the registration window is still open.

Because a re-registration attempt with an already-used email is rejected with a "you're already registered" message rather than a generic error, the registration page effectively confirms whether a given email is on the voter roll — to anyone who has the public link, not just to you. Most elections that's harmless, but if who's on your electorate is itself sensitive information, weigh that before posting the link somewhere fully public.

One exception: you can never reject an approved registrant who has already voted. The table marks their row "voted" and disables the reject action, so a cast ballot can't be pulled back out from under someone.

What registrants receive

  • On submission — an on-page confirmation. Auto-approved registrants immediately see their election's details (and get an invitation if the election is already running); everyone else sees a "your registration is pending review" message.
  • When approved after review (manual mode, or auto-mode draining after being capped) — an email confirming approval, including the election's start time if it hasn't started yet, or their voting link if it has.
  • When rejected — an email with your message, or a neutral default if you left it blank.

Registrants who are auto-approved and immediately added to a running election don't get a separate "approved" email — their invitation email doubles as that confirmation.

Two caveats

  • Weighted elections — registrants always come in at weight 1, the same as anyone pasted into the roster without an explicit weight. If you need a registrant to carry a different weight, edit them individually on the Voters step after they're added.
  • Groups — registered voters don't belong to any voter group. If your ballot has questions restricted to specific groups, those questions simply won't appear for anyone who joined through registration. Use the Voters step to add them to a group afterward if they need to see a restricted question.

Related