arrow_back
Back to Tickets
Edit Trouble Ticket
Update the ticket information below
Date Initiated
*
Status
*
Open
Pending
Completed
Terminated
Creator
*
Marcus
Priority
*
1
Urgent
Select urgency...
Urgent
Not Urgent
Important
Select importance...
Important
Not Important
Project Name
*
zfrika
Problem
*
zfrika email bounce problem integrate a service like Hunter.io, ZeroBounce, or NeverBounce. users are entering bogus emails in the signup that affect that is causing bounce. can I had code to catch this problem before it sends out an email to a bogus email
Question
Root Cause
Notes
Yes, this is a very common problem. People often enter "test@test.com" or "abc@123.com" to bypass signups. High bounce rates from these bogus emails can damage your SendGrid reputation and cause Gmail to block your legitimate emails. You can stop this at the "Front Door" (your signup form) using three levels of validation. Level 1: Syntax Validation (The Basics) Ensure the email actually looks like an email (e.g., has an @ and a .). This stops "abcde" or "12345". The Code (JavaScript): JavaScript const validateEmail = (email) => { return String(email) .toLowerCase() .match(/^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/); }; Level 2: Block "Disposable" and "Common Bogus" Domains You can create a "Blacklist" of domains that are frequently used for fake accounts. The Code (Node.js/Backend): JavaScript const blockedDomains = ['test.com', 'example.com', 'mailinator.com', '10minutemail.com', 'tempmail.org', 'abc.com']; const isBogus = (email) => { const domain = email.split('@')[1]; return blockedDomains.includes(domain); }; if (isBogus(userEmail)) { return res.status(400).send("Please use a valid personal or professional email."); } Level 3: Email Verification APIs (The "Pro" Way) If you want to stop people from typing jskhdfgksjdhf@gmail.com (a real domain but a fake user), you need to check if the mailbox actually exists. You can integrate a service like Hunter.io, ZeroBounce, or NeverBounce. They have APIs that you call before you save the user to your database. How it works in your code: User clicks "Sign Up." Your server sends the email to the Verification API. The API returns: deliverable, undeliverable, or risky. You only allow deliverable to proceed. Level 4: The "Double Opt-In" Strategy This is the most effective way to keep your list clean. User signs up. You save them as status: "pending" in your database. Do not send your main marketing blast yet. Send a single "Confirm your email" link via SendGrid. Only move them to your "active" list once they click that link. Why this helps you: If the email is bogus, it bounces on the confirmation email, which is one single send. This prevents that bogus email from being part of your 1,000+ person marketing blasts, which is where the real reputation damage happens. Marcus's Implementation Plan: Add a "Pattern" attribute to your HTML input: <input type="email" required pattern="[^@\s]+@[^@\s]+\.[^@\s]+" title="Invalid email address">. Add the Blocklist in your Node.js backend for test.com and example.com. Check your SendGrid Dashboard: SendGrid actually has a "Validation API" you can use to check if an email is real before you add it to a list.
Strategy
Helpful People
Helpful Links
Diagram
Previous Steps
Next Steps
Solution
Insight
Date Resolved
save
Update Ticket
Cancel