A waitlist that grows itself, and a list you actually own.
Waitlist Keeper is an open-source launch waitlist: people confirm their email, get a place in line and a share link, and every friend who confirms moves them up. You run it in your own account and export the list any time. Try the two parts that matter before you deploy. Everything runs in your browser, so nothing you paste is uploaded.
1. Clean an email list
| Entered | Counts as | Verdict |
|---|
2. Project your referral growth
| Round | New confirmed | Total |
|---|
A rough model: each round, every new person invites some friends and a share confirm. Under 1.0 invited-and-confirmed per person, growth fades out; above 1.0 it compounds. Real lists land well below the optimistic numbers, so test with your own audience.
3. Run the waitlist yourself
git clone https://github.com/Duncan-Haywood/oss-monorepo && cd oss-monorepo/ventures/waitlist-keeper ADMIN_KEY=$(openssl rand -hex 16) BASE_URL=https://join.example.com PRODUCT_NAME=Acme \ TAGLINE="Invoices that chase themselves" node server.mjs # DRY_RUN=true until you change it
Send people to /; they get a confirmation email, a place in line and a share link. Use /v1/admin/stats, /v1/admin/export.csv and POST /v1/admin/invite {"count": 50} with Authorization: Bearer $ADMIN_KEY. One-click Render deploy and Docker are in the README.
Questions
Why not use Viral Loops, Prefinery, Waitlister or Launchrock?
Hosted waitlist tools are quick to start and some are generous at small sizes, but most price by subscriber count, and the list, your most valuable launch asset, lives on their platform. Waitlist Keeper is MIT, runs in your own account, and keeps your list in one JSON file you can export as CSV. If a hosted tool already works for you, keep it.
How does it stop people gaming referrals?
A referral counts only after the friend confirms their own email. Emails are canonicalised so dots, plus-tags and googlemail aliases are one person, disposable domains are refused, a friend on the same network address as the referrer earns no credit, and each referrer is capped (25 by default). It also has a honeypot field and a per-address rate limit. None of this beats a determined attacker with many networks, so treat position as a growth mechanic, not a lottery.
How is the place in line worked out?
Everyone is ranked by join order. Each confirmed referral moves you up a configurable number of places (5 by default). People you have invited leave the queue. The status page shows only the person's own place and never anyone's email.
Does it send email?
Only if you set it up. It starts in dry-run mode: nothing is sent and the confirm link is shown on screen so you can test the whole flow. With a Resend key and DRY_RUN=false it sends the confirmation and invite emails.
Do I need to worry about privacy law?
You are the operator, so yes: you collect email addresses. Say what you will use them for, send only what people signed up for, and delete on request. The page tells visitors the email is used only to run the waitlist; adapt that to your own terms.