Launching Soon? Verify Your Waitlist Before the Launch Email
Verify your waitlist a few days before launch: remove invalid addresses, disposable emails, bot signups and duplicates, fix obvious typos, then send the launch email in waves starting with your most engaged signups. A waitlist is often months old and has never been mailed, which makes it the riskiest list to send to all at once, on the day it matters most.
Why waitlists go bad
| Problem | Where it comes from |
|---|---|
| Typos | Mobile signups: gmial.com, hotmial.com, missing letters |
| Disposable addresses | People curious but not committed |
| Bot signups | Unprotected forms get filled automatically |
| Duplicates | The same person signs up twice |
| Abandoned mailboxes | Months pass between signup and launch |
| Fake entries | test@test.com, asdf@asdf.com |
None of these hurt while the list sits in a spreadsheet. They hurt when you send to all of it at once.
Step 1: Export and dedupe
Export the full waitlist with signup date, source and any referral data. Remove duplicates with the duplicate email remover, and use the Gmail address normalizer to catch dot and plus-sign variants, which matters if you ran a referral contest. Plus addressing and trial abuse explains the patterns.
Step 2: Fix typos you can fix
Run the list through the email typo corrector. "sam@gmial.com" is probably a real person who wants your product; correcting the domain recovers them. Only correct clear domain typos, not usernames.
Step 3: Remove bots and disposables
- Disposable addresses: the bulk disposable email checker flags them. Decide whether to drop them or keep them in a low-priority wave.
- Bot patterns: look for bursts of signups seconds apart, random-looking usernames on the same domain, or many signups from one referral code.
How to stop fake signups covers form-side fixes for the future.
Step 4: Verify every address
Verify the cleaned list and sort:
| Status | Launch handling |
|---|---|
| Valid | Launch email |
| Catch-all | Later wave |
| Disposable or risky | Last wave or skip |
| Unknown | Re-check before the last wave |
| Invalid | Remove |
Step 5: Warm up before launch day
If your domain has not sent much email, sending thousands of messages on launch day looks like a spike. A few days before:
- Send a short "we're launching on [date]" email to your earliest signups.
- Ask them to reply with a question; replies are a strong positive signal.
- Make sure SPF, DKIM and DMARC are set on the sending domain; check with the bulk email authentication checker.
Gmail and Yahoo bulk sender requirements apply if you send more than a few thousand messages a day to those providers.
Step 6: Send in waves
| Wave | Who |
|---|---|
| 1 | Earliest signups and anyone who replied or clicked before |
| 2 | Remaining valid addresses |
| 3 | Catch-all addresses |
| 4 | Disposable and late re-checked unknowns, if you send to them at all |
Check bounces and complaints between waves. If wave 1 is clean, the rest usually is too.
Step 7: Verify new signups from now on
After launch, add real-time verification to your signup form so the problems do not build up again. Guides for Next.js, Supabase Auth, Webflow and WordPress forms show the setup.
Launch checklist
- Waitlist exported and deduped
- Typos corrected; bots and disposables flagged
- All addresses verified
- Authentication checked on sending domain
- Pre-launch email sent to earliest signups
- Launch email scheduled in waves
- Signup form verification added for post-launch signups
How big should each wave be?
There is no single right size, but some guidelines help:
- Wave 1 should be small enough that a problem stays small: your earliest signups and anyone who has engaged.
- Leave time between waves to look at bounces, complaints and replies. A few hours is often enough to spot trouble.
- Grow each wave only when the previous one was clean.
- Keep the whole launch within a day or two so the message is still timely.
If your sending platform has throttling, use it, and check whether it applies limits per hour or per day.
What to measure on launch day
| Metric | What it tells you |
|---|---|
| Bounce rate per wave | Whether the cleaning worked |
| Complaint rate | Whether people remember signing up |
| Replies | A strong positive signal to mailbox providers |
| Clicks to signup or purchase | Whether the list had real intent |
Keep the results by signup source. A source with high bounces or complaints, such as a giveaway or a referral contest, tells you where to tighten the form for next time.
Verify your waitlist
Upload the export on the verify page. You get 100 free email checks when you sign in with Google, no card. Plans for a bigger list are on the pricing page.
Common questions
Should I verify my waitlist before launching?
Yes. A waitlist is often months old and has never been mailed, which is the riskiest kind of list to send to all at once. Verification removes typos, bot signups and dead addresses before they bounce on launch day.
Why do waitlists have so many fake emails?
Waitlist forms are usually simple and unprotected, so bots fill them, people use disposable addresses to see what is coming, and mobile typing creates typos like gmial.com.
When should I clean the waitlist?
A few days before launch, then again for any signups that arrive after that. Too early and new signups slip through; on the day itself you have no time to fix problems.
Should I send the whole waitlist the launch email at once?
If the list is large and has not been mailed before, send in waves. Start with the earliest signups and anyone who replied or clicked a previous email, then widen over a few hours or days as bounces stay low.
Check your list before you send
Real mailbox checks over SMTP, and nothing is sent to the address. Sign in with Google and your first 100 email checks are free, no card. Plans for bigger lists are on the pricing page.