Gerris home
Gerris

Chris Abraham: technical consulting, AI tools, and technical SEO

Home › Case Studies › Data Cleanup

Contact data: three cleanups and an AI audit

Messy contact data costs money: bounced campaigns, damaged sender reputation, embarrassing wrong-name emails, and decisions made from lists nobody trusts. These projects turned unusable lists into reliable ones.

An 88,900-contact master list

For a communications agency, a Python pipeline built one master list from a large accumulated set of contacts. It normalized names, removed bad email addresses, validated names against a global names database, flagged contradictions between a contact's name and email address, recovered missing names from email prefixes, and deduplicated across domains. The result was about 88,900 unique contacts.

Two 28,800-record exports merged

For a reconnection campaign, I consolidated former clients and colleagues into one clean record per person, with company, first name, last name, and best email address, preferring personal addresses. The sources were a working spreadsheet and two contact-manager exports of about 28,800 records each, with shifted columns and broken field mappings that had to be repaired first. Tighter deduplication rules followed. The output reached about 94% email coverage, and every record carries a tag showing how it was resolved.

An AI-generated tracker audited

An outreach tracker built with an AI tool claimed messages had been sent to contacts who had bounced or didn't exist, with uniform timestamps that couldn't be real, and duplicates throughout. I rebuilt it against the actual sending records: 452 rows became 392 real contacts, each with a status the evidence supported.

Lessons

See data cleanup and AI-output audits.

Updated October 5, 2026