Email validation
Check that addresses exist before you send: list validations, one email at a time, credits and results.
What it's for
Email verification checks which addresses in your base are real and can receive email, before you send: fewer bounces, a protected reputation and credits spent only on addresses that have not been verified yet. It has four tabs: Overview, Validations (whole lists), Check an email (one address on the spot) and Credits.
When to use it: Before the first broadcast to a new or old list, when importing contacts from a spreadsheet and when the bounce rate starts to climb.
#Overview
Where to find it: Marketing › Email verification. Address: app.postal.so/verification.
This is the landing screen of the area. If your team's plan does not include verification, you see an introduction instead of the tabs (Clean your list before you send, with the list of what is checked) and the Upgrade button. In the header, Validate a list takes you to the Validations tab.
| Section | What it shows |
|---|---|
| What we check | Address syntax, Domain that accepts mail, Disposable addresses, Role accounts (contact@, sales@), Whether the mailbox exists (real check), Typos and Your bounces and complaints. |
| Period | The period for everything the screen shows (shortcuts and calendar). |
| Your credits | The balance, with Buy validation add-on. When it is running low, the screen warns you: Your credits are running low. Buy the validation add-on to keep verifying lists. |
| Cards | Addresses checked (with how many were Already verified, free), Deliverable, Risky, Invalid and Credits used. |
| Addresses checked per day | The total per day and how each day came out. |
| How the addresses came out | The split of everything that was checked: valid, risky, invalid, unknown. |
| Top reasons | Why addresses did not come out as deliverable (table of reasons). |
| Domains with the most invalid addresses | The Domain, Checked and Invalid table: where the addresses that do not exist are. |
| Recent validations | The latest ones, with See all. |
See also: Overview (API).
#List validations
Where to find it: Marketing › Email verification › Validations tab. Address: app.postal.so/verification/jobs.
Here you start a new verification and see the history of earlier ones.
New verification
- Under Where the addresses come from, choose: CSV file (up to 20 MB, with a header row, separated by commas or semicolons; choose the Email column and check the First rows of the file), Segment (choose which one) or All contacts.
- Under What to verify: Only the ones not verified yet (addresses already verified reuse the saved result, free of charge) or Recheck expired ones (older than 90 days).
- See the estimate: "N addresses · N already verified · N to verify" and the Estimated cost in credits, with how many you have. If credits are missing, Not enough credits shows up with the link to buy the Validation add-on. A verification accepts up to 200,000 addresses; above that, split the file.
- Optional: Preview verifies a random sample (5% of the list, between 50 and 500 addresses) and shows the List health preview: the percentage of Deliverable, Invalid and Risky addresses, the Main problems and what the full list would cost. Some of the month's previews are free (the screen shows Free previews this month); anything beyond that uses credits.
- Click Verify the full list and confirm under Verify the full list? (Verify now). The dashboard shows Verification started and opens the results page.
How long it takes
Large lists take time: every address is actually checked on the recipient's server. A small list finishes in minutes; a large one, with tens of thousands of addresses, can take from minutes to hours. You do not need to wait on the screen: progress shows on the task card in the corner of any page (Verifying emails, N of M addresses) and, when it finishes, Postal emails you the summary if the Finished tasks option is on in Profile › Notifications (it is on by default). Only two verifications can run at the same time per team.
History
| Column | What it shows |
|---|---|
| Source | The file name, the segment or All contacts, with the Preview badge on samples. Clicking opens the results. |
| Status | Queued, Verifying, Completed, Canceled or Failed. |
| Result | A bar showing the split between valid, risky, invalid and unknown. |
| Credits | How many credits the verification used. |
| Created on | When it was created. |
You can also start a validation from contacts: the Verify emails button on the contact list opens this screen with the segment or all contacts already chosen, and the Verify emails bulk action validates only the selected contacts.
See also: Create validation (API) · List preview (API).
#Check an email
Where to find it: Marketing › Email verification › Check an email tab. Address: app.postal.so/verification/check.
To check a single address on the spot, before signing someone up or to understand a bounce. Type the address under Email to verify and click Verify. An address verified in the last 90 days is free. You can check up to 30 addresses per minute; for lists, use Validations.
| Item | What it shows |
|---|---|
| Status | Valid, Invalid, Risky or Unknown, with the risk level (Low risk, Medium risk, High risk) and the address already normalized. |
| Reason | The main explanation in one sentence and, if there are any, the other points observed. |
| Did you mean ...? | When it looks like a typo in the domain (gmial.com), the button suggests the right one and, when clicked, verifies the suggestion. |
| Result footer | Already verified on ... · free, Verified now · 1 credit or Verified now · free. When the mailbox exists and was confirmed: The mailbox exists and was confirmed by the server. |
Below, the What we check list sums up the checks. When the credits run out, the error carries the link to Buy validation add-on.
See also: Validate an address (API).
#Credits
Where to find it: Marketing › Email verification › Credits tab. Address: app.postal.so/verification/credits.
Each new address verified spends one credit. Anyone verified in the last 90 days reuses the result and costs nothing, and some cases that cannot be confirmed (such as providers that do not let the mailbox be checked) are not charged either. We use the plan's credits first and then those from the packs that expire sooner; packs with no expiry go last.
| Item | What it does |
|---|---|
| Available balance | The total you can use right now (or Unlimited). |
| From your plan this month | What is left of the plan's monthly credits (N of M) and when they Renew on. |
| From packs | Credits from the Validation add-on, each pack with what is left and its validity (N of M · expires ..., or N of M · No expiry for packs that do not expire). |
| Bonus credits | Complimentary credits, when there are any. |
| Buy validation add-on | Opens the packs for sale, with the price, the validity (or No expiry, for packs that do not expire) and the price per thousand verifications; the most popular one has the Most popular badge. The payment is one-time, with no subscription, by credit card or, when available, Pix (with Pix, the credits arrive when the payment is confirmed). Only the team owner and admins buy. |
| Validation add-on purchases | The history: Date, Pack, Left, Price, Status (Awaiting payment, Active, Used up, Expired, Payment not completed, Refunded or Canceled), Valid until and Receipt. |
The same data is in Settings › Billing. The plan's credits renew every month; the packs of the Validation add-on add to the balance for each pack's term, and the ones with no expiry never run out.
See also: Credits (API).
#Results of a validation
Where to find it: Marketing › Email verification › Validations tab, by opening a verification. Address: app.postal.so/verification/jobs.
A verification's page shows the progress and what was found. The per-address results and the file to download are available for 7 days; the verification itself is kept for 30 days. After they expire, the contacts' labels stay saved (The results expired on ...).
| Section | What it does |
|---|---|
| Header | The name (with Preview: ... on samples), the status and the date. While it runs: the Cancel button and a progress bar. When it finishes, Download results (CSV). |
| Apply to your list | Acts on the contacts with bad results. Under What to do: Unsubscribe the invalid ones (they stay in your base but stop receiving broadcasts) or Delete the invalid ones (removes them for good; this cannot be undone). The Include the risky ones too switch widens the target, and the window says This affects N contacts. Afterwards, the page records Applied on ...: N contacts. It does not exist for previews. |
| Addresses / Verified now / Already verified / Credits used | The verification's numbers: the total, how many were checked in this run, how many reused a recent result and how many credits it cost. |
| Verification result | The split between Valid, Invalid, Risky and Unknown. |
| Top reasons | The most frequent reasons, with the count and the percentage. |
| Results | The table of addresses, with a filter by status (All and each status, with a count). Columns: Email (link to the contact; Already verified badge; "Did you mean ..." suggestion), Status and Reason. |
Warning
If the credits run out midway, the verification ends and tells you: The credits ran out during the verification; the remaining addresses were not verified. Buy the validation add-on and run it again: the ones already verified do not cost again.
Statuses and reasons
| Status | What it means |
|---|---|
| Valid | The domain accepts email and there are no risk signals; the mailbox was confirmed when the provider allows it. |
| Invalid | It will bounce: a malformed address, a domain that does not exist or does not accept email, a mailbox that does not exist, or an address that already bounced, complained or is suppressed. |
| Risky | It may work, but there is a risk signal: a server that accepts any address (Accepts all, so the mailbox cannot be confirmed), a disposable address, a role account with no engagement history or a likely typo. |
| Unknown | We could not reach a conclusion: the domain's DNS did not respond or the provider does not let you confirm the mailbox. There is no charge in these cases; try again later. |
The reasons, as they appear in the table: Complained (spam), Suppressed, Bounced before, Malformed, No such domain, Domain without email, Does not exist, DNS failure, Accepts all, Mailbox full, Unknown, Disposable, Typo, Role account, Free provider, Engaged, No history and All good. Hovering over the reason shows the full explanation.
Tip
A safe strategy for the first broadcast to an old list: Unsubscribe the invalid ones, send only to Valid and decide case by case on the Risky ones (for example, sending only to those who have already opened your emails).
See also: Results (API) · Apply to the base (API) · Result object.