# Clean Your Email List Before Your Next Klaviyo Send

You import a list into Klaviyo — or Mailchimp, or whatever ESP you're on — and somewhere in there are addresses that were never going to work. A typo from a signup form (`gmial.com`). A disposable inbox someone used to grab a discount code and never checked again. An account that's been dead for two years. None of that shows up until you hit send.

Here's the mechanic that matters, and it's simpler than it sounds: a **hard bounce** is a permanent rejection from the receiving mail server — the address doesn't exist, or the domain doesn't accept mail. Once that happens, that send is spent. You paid for the campaign, the recipient never got it, and that row in your results is now noise instead of signal — it can't convert, click, or open, but it still counts as "sent" when you're reading your numbers afterward.

This isn't a scare story about sender reputation or spam-trap hits — those are real concerns in the industry, but PingValid doesn't have audited data on how they play out for your specific domain, so we're not going to hand you a made-up percentage. What we can say plainly: every hard bounce in a send is an address that was never going to work, discovered the expensive way. Catching it before the send is cheaper than catching it after.

## When to clean a list

You don't need to validate before every single campaign to a list you email every week — that's diminishing returns. The points where it actually pays off:

- **Before importing a new list** — a purchased list, a co-marketing swap, a CSV someone hands you from an event or a lead magnet. You have no send history with these addresses, so you have no idea what's in there.
- **Before a large or high-stakes send** — a product launch, a big promotion, anything where a spike in bounces would be visible and costly.
- **After a period of dormancy** — a list you haven't emailed in six months or a year has aged. Inboxes get abandoned, domains lapse, roles change. Addresses that were valid when collected aren't guaranteed to still be valid.

None of this requires a fixed threshold or a magic percentage. It's a workflow habit: new list, big send, or long gap — validate first.

## The workflow: export, validate, re-import

The mechanics work the same whether you're on Klaviyo or any other ESP, because the underlying steps are ESP-agnostic:

**1. Export your list as CSV.** Every major ESP supports exporting a list or segment to CSV — that's a standard feature, not a Klaviyo-specific one. Pull the list (or the segment) you're about to send to.

**2. Validate it with PingValid.** Two ways to do this, depending on how your team works:

- **Dashboard bulk upload** — drag in the CSV, PingValid processes up to 1,000,000 rows in one job, and hands back a results file with a verdict, a 0–100 risk score, and per-check evidence for every address.
- **API or MCP** — if your team scripts this kind of thing or runs it through an AI-agent workflow, PingValid exposes the same validation as a REST API and as an MCP server that tools like Claude, Cursor, or ChatGPT can call directly. The MCP path is built for exactly this: submit a bulk job, poll status, pull results filtered by verdict — see our companion piece on the [Email Validation MCP Server for AI Agents](/blog/email-validation-mcp-server) if you want the agent-workflow version of this same process. One thing to flag if you go that route: the MCP bulk-job tool caps async jobs at 1,000 emails per job, so a list larger than that needs to be chunked or run through the dashboard/API instead.

Each address run through validation gets checked at the syntax, DNS, MX, disposable/role-account, and SMTP level, and comes back with a verdict plus evidence — the same pattern PingValid's own demo shows: `Valid · risk 4/100`, with each check listed underneath. Single-address lookups complete in under 300 ms, per PingValid's own stated figure — useful context if you're validating one address at a time in a signup form rather than a bulk list, though for a list cleanup you'll be running the bulk path above.

**3. Filter by verdict and risk score.** The results file gives you a verdict and a 0–100 risk score for every row. Set your own line: most teams keep everything rated deliverable and drop or suppress the rest, but where you draw that line for "risky" addresses is a judgment call based on your list's history and your risk tolerance — PingValid doesn't set a universal cutoff for you.

**4. Re-import only what's deliverable.** Import the clean subset back into Klaviyo (or your ESP), and suppress or archive the rest — don't delete the record outright if you might want it for other purposes, just keep it out of your send list.

## What the verdict actually tells you

A few things worth knowing before you read your results file:

- **Verdict + risk score** is the headline. A "Valid" verdict with a low risk score is the address most likely to accept mail; higher scores mean more caution flags (disposable domain, role account, no SMTP confirmation, and so on).
- **"Unknown" verdicts are never charged.** If PingValid can't get a confident read on an address — the receiving server won't confirm mailbox status, for example — that row costs you nothing.
- **Cached lookups are free.** If an address has been checked recently, a repeat check against it doesn't cost a credit; a cached Deep-tier lookup is half the normal Deep price.
- **Three check depths** — Quick, Standard, Deep — trade off cost against thoroughness. For a one-time list cleanup before a big send, Standard or Deep is usually worth the extra confidence; Quick is fine for lighter, ongoing hygiene.

## One thing validation does not do

Worth stating plainly, because it's easy to conflate: **validating an address confirms it's real and can technically receive mail — it does not confirm you have permission to email it.** Whether a given address consented to receive your campaign is a separate question governed by GDPR, CAN-SPAM, CASL, or whatever regime applies to your recipient and your business. A clean list and a compliant list are not the same thing, and PingValid checks the former, not the latter.

## What it costs

You can try this on a small list for free: the Free tier includes 100 validations a month, no card required. Beyond that, pricing is flat and published — no annual lock-in, no sales call required to see a number — starting at $19/mo for 5,000 validations on the Starter tier, scaling up through Growth, Scale, Business, and a custom Enterprise tier for larger volumes. Full breakdown is on [pricing](/pricing). PingValid's pricing page also states a refund-on-bounce policy: if PingValid rates an address deliverable and it still hard-bounces, that specific check is credited back, capped at 5% of your monthly volume.

## FAQ

**Do I need to clean my email list before importing it into Klaviyo?**
Not for every send, but yes before a new-list import, a large campaign, or a list you haven't emailed in a long time. Validation catches syntax errors, non-existent domains, disposable addresses, and mailboxes that reject at the SMTP level before you spend a send on them.
Source: [pingvalid.com](https://pingvalid.com)

**What counts as an invalid email address?**
An address that fails at any check tier: malformed syntax, a domain with no valid DNS/MX record, a disposable or role-based address (if you choose to flag those), or a mailbox that the receiving server rejects at the SMTP level. PingValid returns a verdict plus per-tier evidence so you can see exactly which check failed.
Source: [pingvalid.com](https://pingvalid.com)

**Does validating my list mean I have permission to email those addresses?**
No. Validation confirms an address is real and can technically receive mail. It says nothing about whether the person consented to receive your campaign — that's a separate legal question under GDPR, CAN-SPAM, or CASL depending on your audience.

**How much does it cost to validate a list before a Klaviyo send?**
PingValid's Free tier covers 100 validations a month with no card required; paid tiers start at $19/mo for 5,000 validations, with flat, published pricing at every tier.
Source: [pingvalid.com/pricing](https://pingvalid.com/pricing)

**What's the difference between a verdict and a risk score?**
The verdict (e.g., Valid) is PingValid's overall call on an address; the risk score is a 0–100 number reflecting how confident that call is, backed by per-check evidence (syntax, DNS, MX, disposable/role, SMTP). Use the score to set your own cutoff for "risky but not clearly invalid" addresses.
Source: [pingvalid.com](https://pingvalid.com)

**Can I automate list cleaning instead of running it manually before every send?**
Yes — PingValid exposes the same validation through a REST API and an MCP server that AI-agent tools (Claude, Cursor, ChatGPT, and other MCP clients) can call directly, so a scripted or agent-driven workflow can validate a list without a manual dashboard upload each time. See the [Email Validation MCP Server for AI Agents](/blog/email-validation-mcp-server) piece for the agent-workflow version of this process.
Source: [pingvalid.com/docs/mcp](https://pingvalid.com/docs/mcp)