Skip to content
SheetLink Forms

Deliverability · 2026-08-27 · 8 min read · By Arden Talbot, founder of SheetLink

What email bounces say about lead quality

A bounced reply is not just a delivery failure. It is the earliest and cheapest signal you get about whether a submission was ever real.

A ledger-styled illustration of a returned letter beside a spreadsheet row being marked with a small amber flag.

The folder nobody opens

Every business has one. A folder, or more often a corner of the inbox, where delivery failure notices accumulate unread. Mailer daemon, undeliverable, user unknown. They are treated as noise, and mostly they are.

They are also the cheapest lead quality signal available, and almost nobody uses them. A bounce is a third party telling you, at no cost and within seconds, that the address a visitor typed into your form does not exist.

That is information about the submission, not just about the message. Used properly it separates the leads worth chasing from the ones that were never going to answer, before anybody spends time on them.

Hard bounces: the address is not real

A hard bounce is a permanent rejection. The domain does not exist, or it exists and has no such mailbox. It will not succeed on a retry and no amount of waiting changes it.

For a lead, that is close to conclusive. Either the person mistyped, which is common and recoverable if you have another contact route, or the address was never meant to work. A form submission with a hard-bouncing address and no phone number is not a lead in any useful sense, and the sooner it is marked as such the less time it consumes.

The exception worth remembering is the corporate mailbox that has been decommissioned. A real person filled in your form six months ago and has since left the company. The submission was genuine; the address expired.

Soft bounces: it might work later

A soft bounce is temporary. Mailbox full, server unavailable, greylisting, rate limiting at the far end. The correct response is to try again later, which is what any competent sending system does automatically with increasing delays between attempts.

Soft bounces carry much weaker information about the lead. A full mailbox says something about the person's email hygiene and nothing about their intent to buy.

The trap is the soft bounce that never resolves. Repeated temporary failures over several days are functionally permanent, and treating them as still pending keeps a dead lead in your active pipeline indefinitely.

The bounce that is really a filter

A third category confuses people because it looks like a bounce and means something else entirely. A rejection because your message was classified as spam is not a statement about the recipient's address. It is a statement about you.

These often arrive with wording about policy or content rather than about the mailbox, and sometimes reference a blocklist. Treated as lead data they are misleading, because the lead may be perfectly real and simply unreachable from your current sending setup.

The way to tell them apart is to read the response text rather than the category. A message about the recipient is lead data. A message about your message is a deliverability problem, and the right response is to check authentication rather than to discard the lead.

Why bounces cluster around spam

If you look at a month of bounces from form submissions, they will not be evenly distributed. They cluster on the submissions that were junk in the first place.

Automated submissions frequently carry addresses that were generated rather than owned, at domains that do not exist or do not accept mail. Others use disposable addresses that accept mail briefly and then stop.

This makes the bounce rate a lagging indicator of spam pressure. A sudden rise in undeliverable replies is often the first thing a human notices when an automated run starts hitting a form, sometimes before anyone looks at the submissions themselves.

The clustering is useful precisely because it is not uniform. If your bounces were spread evenly across every source and every week, they would tell you nothing beyond a general typo rate. When they arrive in bursts, tied to a particular fortnight or a particular landing page, the burst itself is the finding. Plot the dates against your traffic sources and the answer is usually visible without any further analysis.

Catching it earlier than the bounce

A bounce arrives after you have already spent attention on the lead. The cheaper place to catch it is at submission, and most of the catchable cases are catchable there.

Syntax checking removes typos and malformed input. Domain checks catch addresses at domains that cannot receive mail at all. Disposable domain lists catch a large share of throwaway addresses. None of this is proof the mailbox exists, and it should not be treated as such, but it removes the obvious cases at zero cost.

The rest is where quarantine earns its keep. A submission that looks doubtful but not certainly fake is held for review rather than discarded, so the judgement call stays with a person instead of a threshold.

Making bounce data usable

The reason bounces go unused is structural: they arrive in a different system from the leads. The lead is in a spreadsheet or a CRM; the bounce is in a mailbox, as prose, addressed to nobody in particular.

The low-effort fix is a column. When a reply bounces, mark the row. Now the pipeline shows its own quality: how many submissions last month were unreachable, whether that number is rising, and whether it correlates with a particular source or campaign.

That last correlation is the valuable one. A campaign delivering plenty of submissions and an unusual share of dead addresses is not delivering leads, and no amount of volume reporting will show you that.

What good looks like

A healthy contact form has a low single-digit percentage of hard bounces, mostly typos. A pattern well above that points at one of three things: a form being targeted by automation, a paid source of poor quality, or an audience deliberately concealing itself.

The third is more common than people assume and is not always bad. Someone comparing vendors quietly may use a throwaway address on purpose. That is a real person with real intent who does not want a sales sequence, and the correct response is a useful reply rather than a purge.

Which is the general rule with bounce data. It tells you reliably that a channel failed. It only suggests what that means, and the suggestion is worth checking before acting on it.

Where to put the effort

Screen at submission, because it is free and it happens before you spend attention. Retry soft failures automatically, because the alternative is discarding recoverable leads. Record hard failures on the lead itself, because that is what turns noise into a metric.

And keep the underlying submission regardless. A bounced address does not erase the message someone wrote, the page they came from, or the campaign that brought them. That context is still worth having when a similar enquiry arrives from a working address next month.

The point of all this

Bounces are the only part of your pipeline where someone else does the verification for you and reports the result for free. Leaving that in an unread folder is throwing away the cheapest data you have.

One column, updated when a reply comes back undeliverable, converts an ignored annoyance into a quality measure for every source you spend money on.

FAQ

Should I delete leads that hard bounce?

Mark them rather than delete them. The submission still contains the message, the source and the timing, all of which remain useful for pattern analysis even when the address is dead. Deleting also destroys your ability to notice that a particular campaign produces unreachable contacts.

How many retries should a soft bounce get?

A few attempts spread over hours rather than minutes, with increasing gaps. Beyond roughly a day of continuous temporary failure the practical outcome matches a hard bounce, and continuing to retry mostly harms your sending reputation.

Can I verify addresses at submission without annoying people?

Syntax and domain checks are invisible to the visitor and catch the obvious cases. Anything stronger, such as confirmation emails before you will accept the enquiry, adds friction to a contact form and usually costs more real leads than it saves.

Do disposable addresses always mean spam?

No. Some are automated junk, others are cautious buyers who do not want a sales sequence. That mixture is exactly why quarantining for review beats silent rejection, because a person can tell the two apart in a second and a rule cannot.

What if the bounce is about my message rather than the recipient?

Then it is a deliverability problem, not lead data. Read the rejection text: if it mentions policy, content or a blocklist, check your authentication and sending setup before concluding anything about the lead.

Is a rising bounce rate always bad?

It is always worth investigating. It can mean automated submissions, a poor traffic source, or a change in your own sending configuration that is causing rejections. The number tells you to look; it does not tell you which of the three you are looking at.

Where should the bounce status live?

Next to the lead, in the same place you read the lead. A column in the sheet works because it puts the failure and the submission in one view, which is what makes the number countable rather than anecdotal.

Does a bounce mean the person mistyped their address?

Often, and that case is recoverable if you captured a second contact route or enough detail to identify them. Before writing a lead off, check whether the domain is a near miss for a common one, since a single transposed character is the most frequent cause of an otherwise genuine enquiry becoming unreachable.

Catch the fake address before you reply

SheetLink screens disposable domains and obvious junk at submission time, and quarantines the borderline instead of deleting it.

Start freeSee the live demo

Bulk sender rules and the small senderAutoresponders that do not feel automated