NeverBounce sells two ways, pay-as-you-go credits and a subscription it calls Sync, so the rate you pay depends on which one your account sits on. ZapBounce prints one price ladder for everything, from $5 for 1,000 checks to $949 for a million, with no plan needed.
The move is mostly a mapping exercise. Your sending rules read NeverBounce's result codes today, so the key job is making sure each rule reads the right ZapBounce field tomorrow. The ZapBounce vs NeverBounce page covers price and features side by side, and this guide covers the move itself.
The short version
- Your recent NeverBounce result files and a list of the places your code or tools read them
- A ZapBounce account (100 free checks a month, no card) with a live key and a zb_test_ sandbox key
The steps
Export your recent NeverBounce results
Download the result files for the lists you still send to. Keep them as a record of each address's last status and the date it was checked.
Find every rule that reads a result
Search your code, your ESP segments and your automation tools for NeverBounce's result names. Write each one down with what it does, such as drop, send or hold.
Map five results to four
NeverBounce returns valid, invalid, disposable, catchall and unknown (its developer docs, read 24 September 2026). ZapBounce returns
valid,invalid,catch_allandunknown, and moves disposable to adisposableflag beside the result. Point any rule that reads their disposable result at our flag, and every other rule carries straight across.Build against the sandbox key
Swap your single-check call for
POST https://api.zapbounce.com/v1/verifywith a JSON body holdingemail, and send the key asAuthorization: Bearer. Read theresultfield. Calls with azb_test_key never bill, so you can run your whole test suite free. The single verification docs show the full response.Move bulk jobs to files or batches
Upload CSV or TXT files with
POST /v1/files, or send up to 100,000 addresses as JSON withPOST /v1/batches. PollGET /v1/batches/{id}or wait for a webhook, then page through the rows with the results endpoint.Re-point webhooks and no-code steps
Subscribe to
batch.completedandbatch.failed, and check theZapBounce-Signatureheader on each delivery. In Zapier, replace the NeverBounce step with the ZapBounce Verify email action. The webhooks docs list every event.Re-check lists older than a month
Upload any list you last checked more than a month ago to the bulk page. Addresses decay as people change jobs, so an old valid is a guess, not a fact.
Switch the live key on
Change the key in your environment from
zb_test_tozb_live_, watch the first day's results for anything your mapping missed, then turn off the NeverBounce calls.
The result mapping at a glance
NeverBounce valid becomes ZapBounce valid. NeverBounce invalid becomes invalid, and our reason field tells you why, such as mailbox_not_found or domain_not_found.
NeverBounce catchall, which its docs call Accept-all (Unverifiable), becomes catch_all. NeverBounce unknown becomes unknown, and at ZapBounce an unknown is never billed. NeverBounce disposable becomes whatever result the mail server gave, with disposable set to true, so you learn both facts about the address.
What changes on your bill
ZapBounce bills one credit when we asked a mail server and got an answer. valid, invalid and catch_all cost a credit. An unknown, a duplicate in the same batch, a syntax reject and any error on our side cost nothing. Every result row carries a billed field, so you can audit the count yourself.
The ladder runs $5 for 1,000, $25 for 10,000, $139 for 100,000 and $949 for 1,000,000, and credits never expire. The pricing page has every tier.
Questions people ask
How do I migrate from NeverBounce to another verifier?
Export your recent NeverBounce results, map its five result codes to the new vendor's results, swap the API calls and bulk uploads, re-point webhooks and Zapier steps, and re-check lists older than a month. ZapBounce sandbox keys never bill, so the whole switch can be tested free.
What NeverBounce result codes are there?
NeverBounce returns five: valid, invalid, disposable, catchall and unknown, per its developer docs read on 24 September 2026. ZapBounce returns four results, valid, invalid, catch_all and unknown, and reports disposable as a separate flag.
Do I need to re-verify lists NeverBounce already checked?
Re-verify any list checked more than a month ago before you send to it. A result describes the mailbox on the day of the check, and business addresses change as people move jobs.
Does ZapBounce charge for unknown results?
No. An unknown result is never billed at ZapBounce, and neither are duplicates or syntax rejects. You pay for valid, invalid and catch_all answers only, from $5 per 1,000 checks.