The 9-Point Lead List Quality Checklist
A bad lead list doesn't announce itself. It looks like a good one until you're a hundred emails in and the bounces start, or until someone opens the CRM and finds the same business three times under three names.
These are the nine checks worth running before a list gets used for anything. Most take under a minute on a sample of twenty rows, and between them they catch nearly everything that goes wrong later.
The Data Itself
1. Every row is a real, current business. Scraped sources include closed businesses, duplicated listings, and the occasional entry that was never a business at all. Spot-check twenty rows against their websites. If more than one or two are dead, the whole list needs requalifying rather than cleaning.
2. The business name is a name, not a page title. "Bright Smile Dental Practice | Leeds | Book Online Today" is a title tag. Anything after a pipe, an en dash, or a spaced hyphen is usually junk, along with "Official Site" and "Home". This field ends up in your emails and your CRM, so it's the one worth being fussy about.
3. Contact fields are populated at a rate you can live with. Decide the threshold before you look. A list where 40% of rows have an email address might be fine for a large scrape and useless for a curated shortlist. What matters is knowing the number rather than discovering it mid-campaign.
Consistency
4. Phone numbers are all in one format. Mixed 0113 249 6000, +44 113 249 6000, and 01132496000 in the same column means no deduplication on phone, no reliable dialler integration, and leading zeros that Excel will eventually eat. Pick E.164 and convert everything — the UK phone formatting guide covers the edge cases.
5. URLs are normalised and free of tracking parameters. Same protocol, no www inconsistency, no trailing slash, and nothing after a question mark. Tracking parameters break domain matching, which breaks deduplication, which is how the same business arrives in your CRM twice.
6. Empty means empty. One convention for missing data across the whole file, and it should be a genuinely empty cell rather than "N/A" or "null". Mixed conventions produce contacts whose email address is the word null and mail merges that greet people as N/A.
Fitness for Purpose
7. The list is deduplicated on something reliable. Exact-match on business name catches almost nothing real. Match on a stable identifier, then normalised domain, then fuzzy name anchored to a postcode. And mark duplicates rather than deleting them — deduplication is a judgement call and you want to be able to reverse it.
8. The targeting is actually narrow enough. A list of "businesses in Manchester" is not a lead list, it's a phone book. If you can't write one opening sentence that's true and relevant for every row, the list is too broad and the campaign will underperform regardless of data quality. Split it.
9. You know where the data came from and whether you can use it. Source, collection date, and lawful basis if the list contains personal data. A named individual's work email is personal data under UK GDPR even in a B2B context, and legitimate interests requires a documented balancing test rather than an assumption. The legality of scraping business data covers what this means in practice.
How to Actually Use This
Run checks 1 to 3 on a twenty-row sample before you invest any effort in a list — they tell you whether it's worth cleaning at all. Checks 4 to 6 are mechanical and should be automated; if you're doing them by hand more than once, that's a sign the export step is in the wrong place. Checks 7 to 9 happen once per list, before it goes anywhere near a CRM or a sending tool.
The order matters. Clean the fields, then deduplicate, then export. Deduplicating before normalisation means matching on inconsistent strings, which is what produced the duplicates in the first place.
Getting a List That Passes
Most of this checklist is what LeadSnipe's export pipeline does automatically — E.164 phone formatting, tracking parameters stripped, page-title junk trimmed off names, one empty-cell convention, and non-destructive deduplication on place identifier then fuzzy name plus postcode. The clean CSV export guide walks through each of those, and spreadsheet or CRM covers where the list should live once it passes.