Why bounces matter
A bounce means the receiving server rejected the message. Hard bounces — invalid mailbox or unknown domain — permanently damage list quality. Soft bounces, like a full mailbox or temporary outage, can recover, but repeated soft bounces still hurt.
Inbox providers watch bounce rates closely. High bounces signal poor list practices and can push legitimate mail into spam or trigger blocks. Keeping bounce rates low is one of the simplest ways to protect deliverability. See also our Deliverability Guide.
Capture-time UX that stops typos
The cheapest bounce to fix is the one that never leaves your form. Build these patterns into signup, checkout, and contact collection flows.
Provider dropdown for common domains
Offer a dropdown or typeahead of well-known providers — Gmail, Outlook / Hotmail, Yahoo, iCloud, Proton Mail, AOL, and similar. Users pick their provider so the domain is correct by construction.
Always keep a free-text option for work and custom domains. Treat the dropdown as a helper, not a hard limit — many of your best customers use company addresses.
Confirm email — and block paste
Add a second field where the user types their email again. Only submit when both values match — the full address, not just the domain. On the confirm field, prevent paste so people cannot copy the first field and skip re-reading it.
- Compare case-insensitive full addresses before enabling Submit.
- Call
preventDefault()on paste for the confirmation input. - Show a short hint: “Type your email again — paste is disabled to catch typos.”
Large-font confirmation dialog
Before creating the account or sending the first email, show a confirmation step with the entered address in a larger font. Split the local-part, @, and domain visually so mistakes stand out.
jamie@acme.com
Is this email correct?
Catch common keyboard typos
Users often mistype TLDs and popular domains — for example .xom instead of .com, or gmial.com instead of gmail.com. Detect these and ask for confirmation. Never silently rewrite the address.
| Typed | Suggest |
|---|---|
.xom / .cpm / .con / .cm | .com |
gmial.com / gmal.com / gmail.co | gmail.com |
hotmial.com / hotmail.co | hotmail.com |
outlok.com / outlook.co | outlook.com |
yaho.com / yahoo.co | yahoo.com |
icloud.co | icloud.com |
Soft confirm only: “Did you mean gmail.com?” Let the user keep their original value if they insist — some valid domains look unusual.
Validation checklist
- Basic format validation (local-part @ domain with a plausible TLD) — keep rules practical, not over-strict RFC parsing in the browser.
- Optional server-side MX lookup to reject domains with no mail servers.
- Block known disposable / throwaway domains when your use case requires lasting contact.
- Prefer double opt-in for marketing lists — the confirmation click proves the mailbox exists.
For marketing compliance and opt-in patterns, see the Double Opt-In guide.
After you send
Even with great capture UX, some addresses will bounce. Handle them deliberately:
- Suppress hard-bounced addresses immediately — do not retry them.
- Soft-bounce with limited retries, then suppress if they keep failing.
- Listen to bounce webhooks and update your contacts / CRM automatically.
- Never buy or rent email lists — they are a fast path to bounces and spam traps.
Simply Send exposes bounce events through webhooks so you can keep lists clean in real time. See the Webhooks API.
Quick summary
Use a provider helper, force a typed confirmation (no paste), show the address large before submit, and soft-prompt on common domain typos. Pair that with MX checks, double opt-in for marketing, and automatic suppression after hard bounces.
Most bounce rate improvements come from better forms — not from sending harder.
Keep improving deliverability
Authenticate your domain and follow inbox-friendly sending practices alongside clean list capture. Continue with the Deliverability Guide or Domain Setup.
