Skip to content

List Clean · One-time service

Clean a mailing list
before you print it.

Upload a CSV. Minutes later, download it back with every address standardized to USPS format, duplicates flagged, coordinates attached, and a match report — before you pay for postage, printing, or shipping labels against bad rows.

  • One-time: $47 up to 2,500 addresses · $97 up to 10,000. The industry charges $0.02–$0.05 per record for the same pass. No subscription, no integration.
  • Repairs Excel damage before geocoding: stripped ZIP zeros restored (2134 → 02134), full state names to USPS codes, BOM and semicolon exports handled.
  • Standardization + geocoding on the Census Bureau's national address database, plus census tract, county, and median-household-income enrichment per row.
  • Duplicates detected on the standardized form — "St." vs "Street" vs "STREET" collapse into one.
  • Your file stays private, is never used for anything else, and is deleted after 30 days.

Need deliverability-grade DPV verification on every row? That runs on your own USPS key via the API — or ask us to run it as a service.

Step 1 · UploadCSV · ≤10,000 rows

Nothing is charged at this step — you get a free diagnosis of your file first.

Extra columns — names, emails, gift amounts — ride along untouched and come back with your file.

Something off with your results? Reply to the receipt email — a human reads it and refunds are not a fight.

01How it works

Five passes over every row.

1

Parse & repair

BOM headers, semicolon and tab exports, quoted commas. ZIP zeros Excel stripped come back (2134 → 02134), nine-digit ZIPs split into ZIP+4, "New York" and "N.Y." become NY.

2

Standardize

Each address is matched against the Census Bureau's national address database — the federal master file — and rewritten in USPS delivery form: directionals, suffixes, casing.

3

Geocode & enrich

Every match gets rooftop-grade coordinates, county and census tract — then the tract's median household income, population, and vacancy from the ACS 5-year survey.

4

Deduplicate

Duplicates are detected on the standardized form, so "123 Main St.", "123 MAIN STREET", and "123 main st" collapse into one flagged group with the row they duplicate.

5

Account

Nothing disappears silently. Empty rows are flagged, non-matches are named, and the report totals every category — so the file you mail is a decision, not a guess.

02What comes back

Your file, plus twelve working columns.

$ head -3 donors-cleaned.csv

street,city,state,zip,ra_standardized,ra_match,ra_match_type,ra_longitude,ra_latitude,ra_county_fips,ra_census_tract,ra_median_hh_income,ra_tract_population,ra_tract_vacancy_pct,ra_dupe_group,ra_dupe_of_row

11 wall street,new york,New York,10005,"11 WALL ST, NEW YORK, NY, 10005",Match,Exact,-74.01078,40.70711,36061,000700,151250,3711,12.4,,

11 Wall St.,New York,N.Y.,10005,"11 WALL ST, NEW YORK, NY, 10005",Match,Non_Exact,-74.01078,40.70711,36061,000700,151250,3711,12.4,D1,2

Standardized

Every matched row rewritten in USPS delivery format — directionals, suffixes, and casing normalized, against the national address database.

Deduplicated

Duplicates are matched on the standardized form, so spelling variants of the same household collapse into one flagged group — with the row number they duplicate.

Enriched

County, census tract, and tract-level median household income, population, and vacancy on every matched row — segment a donor or customer file by income without buying a data append.

Accounted for

A match report totals what standardized, what matched loosely, what was skipped as empty, and what needs a human — so you know exactly what you're mailing into.

03Proof on public data

We ran San Francisco's business registry through it.

10,000 active locations from the city's public registered-business file — raw municipal data, complete with truncated streets, a "7691 Po Box", and addresses in 40+ states. One pass, 3.2 minutes.

95.5%

match rate — 9,547 standardized, 8,342 of them exact

1,894

duplicates collapsed — 10,000 rows were really 8,106 addresses

9,370

rows income-enriched, across 200 counties, in the same run

122

"different" businesses sharing one address at 580 4th St — a virtual-office cluster the dedupe caught

Tract income on the file ran from $69,671 at the 10th percentile to $220,096 at the 90th — segmentation you'd otherwise buy as a separate data append.

04The arithmetic

Bad rows cost more than cleaning them.

First-class postage is $0.73 a piece before printing. On a 10,000-piece run, a typical 4–8% undeliverable-plus-duplicate rate is $300–$600 of postage alone mailed at addresses that were never going to deliver. One pass here is $97, once.

Cleaning lists on every send? The API does this continuously at the point of entry.

05Straight answers

What it is — and what it isn't.

Is this CASS-certified DPV verification?

No — and anyone selling "verification" without saying which kind is hoping you won't ask. List Clean standardizes against the Census Bureau's national address database and tells you exactly how each row matched. USPS DPV confirmation — "is this specific unit deliverable today" — runs on a USPS license through the API with your own key, and under USPS's new licensing model (effective August 1, industry-wide) that per-business key is the rule, not our quirk. Most lists need this pass first either way: DPV can't fix a stripped ZIP or catch a duplicate.

Does it update addresses for people who moved?

No — that's NCOA (National Change of Address), a USPS-licensed service with its own paperwork. What List Clean does is make your file NCOA-ready: standardized, deduplicated rows are exactly what NCOA processors want as input, and you won't pay their per-record rates on 1,894 duplicates.

What happens to my file?

It's processed for your job and nothing else — never used for training, never resold, never aggregated. Files and results are purged after 30 days, enforced in the worker's own code, not by policy document. Want it gone sooner? Reply to your receipt.

What formats work?

CSV up to 8 MB / 10,000 rows — commas, semicolons, or tabs, with or without Excel's hidden BOM. Headers like street, city, state, zip (many spellings work) or a single full_address column. Uploading an .xlsx tells you to save as CSV instead of pretending. Larger file? Ask — bigger runs are a service engagement.

What if the results are bad?

Reply to the receipt email and say so. A human — the person who built this — reads it, and refunds are not a fight. The report is honest enough that you'll know within a minute of opening the file.