Data enrichment mistakes: 12 anti-patterns I've seen kill projects

Five honest reads on what goes wrong — plus the 12 anti-patterns that have torpedoed real enrichment projects, with the fix for each one.

Most enrichment failures aren't from picking the wrong vendor. They're from doing the right thing in the wrong order, or treating cleansing as enrichment, or running a script that wastes credits on rows that already had the data. This cluster collects the five most common patterns and the fixes that actually stick.

Newsletter

Get every new Pitfalls & deep-dives guide in your inbox

We ship ~1 new Pitfalls & deep-dives guide per month. One email per release, nothing else. No spam, no resale.

Why this cluster matters

Every team running enrichment hits the same 5 traps in their first 6 months. The cost shows up later — wasted credits, dirty CRM, decisions made on bad data. Reading this cluster up-front saves the typical scale-up €5-15k/year and an embarrassing data-quality meeting with the CFO.

For who · Anyone who's already running enrichment and wants to stop bleeding credits.

What you'll learn

  • The 7 enrichment mistakes that quietly bleed budget — and how to spot each one before it hurts
  • When to use enrichment vs cleansing vs scraping (and why teams confuse all three)
  • The real ROI of automating manual enrichment — with hours and dollars on the table
  • How to schedule an enrichment to run nightly with Apps Script, no infra needed
  • The legal status of scraping in EU/US — and where Derrick fits on that spectrum

5 silent failure modes that turn enrichment from asset to liability

The headline failures of enrichment programs make conference talks: "we burned €40k in 90 days." The silent failures are worse — they don't show up in any meeting, they just steadily corrupt CRM data quality until the day someone runs a sales report and notices the numbers don't add up. Here are the five silent failure modes that turn an enrichment investment into a liability — and the fix for each.

1. Enriching rows that already have the data (the "refresh-as-overwrite" trap)

The fastest way to burn enrichment credits is to re-enrich records that already have the field you're looking for. It sounds obvious — until you realize that every "refresh all" script does exactly this by default. A naive nightly job that calls the enrichment API on every CRM contact will spend 70-80% of its credits on records that haven't changed.

The fix: diff before you enrich. Only call the API on records where the target field is null, or where it was last updated more than X days ago. A simple WHERE clause cuts credit consumption by 5-10x with zero quality loss. Most teams discover this after their second month's bill.

How Derrick handles it: our Sheet integration auto-skips rows that already have the requested field populated (unless you explicitly toggle "force refresh"). Same with the API/MCP — idempotent by default. You only pay for new info.

2. Trusting "found" emails without verification (the deliverability bomb)

Enrichment APIs return emails with a "confidence" or "validity" score. The score is calibrated against the API's own ground truth — not against what mailgun or SES will accept. A provider can claim 90% "valid" emails while 20-25% of those bounce in production.

The damage compounds: bounces hurt sender reputation, which hurts inbox placement, which hurts reply rate on the emails that DID land. A typical outbound team that skips verification loses 30-40% of expected reply volume to deliverability issues they don't attribute correctly — they blame the copy instead.

The fix: always verify emails before sending. The cost is ~€0.005/email (one-tenth the cost of enrichment itself) and saves your domain reputation. Pair it with bounce monitoring so you can pull a provider that suddenly drops in quality.

How Derrick handles it: verification happens in the same call as enrichment, with a separate "validity" column you can filter on before exporting to your outreach tool. One step, not two, and no "forgot to verify" mishaps.

3. Confusing enrichment with cleansing (the "add to mess" trap)

Teams routinely run enrichment on a dirty CRM: duplicate contacts, mismatched company-account links, normalized job titles that didn't get normalized. The enrichment then adds new fields on top of records that should have been merged first. You end up with the same person enriched 3 times under 3 contact IDs — paying 3x and creating worse data, not better.

The discipline: cleanse before you enrich. Dedupe by email, normalize company names to a single account, fix obviously stale records ("CEO of company that died in 2019"). Then enrich. The order matters: enrichment is multiplicative on quality, so if you enrich dirty data, you get cleaner-looking dirty data — which is worse than obviously dirty data because nobody knows to question it.

How Derrick handles it: we surface duplicate-email and company-mismatch warnings before enriching, so you can dedupe in the same Sheet pass. No separate cleansing tool required for the basics.

4. Running enrichment on prospects the rep won't actually contact (waste at scale)

Enrichment everything in the CRM "just in case" is one of the most expensive patterns in B2B. A typical RevOps team that enriches all 50k leads in the CRM monthly is spending €5-8k/month, when only ~5k of those leads will ever get touched by a rep. That's a 10x waste ratio sitting in plain sight.

The fix: enrich on the trigger that creates value — when a rep is about to call, when a sequence is about to start, when a deal moves stage. Not on a schedule that ignores whether anyone needs the data. Pair this with cached results: if Derrick enriched a contact 30 days ago and the rep finally opens it today, return the cache, don't re-charge.

How Derrick handles it: trigger-based enrichment is the default mode in the Sheet — enrich a row when you mark it for outreach, not on every refresh. And the cache returns previous enrichments for free, so reps can re-open without re-billing.

5. No quarterly audit (the "slow drift" failure)

An enrichment program left on autopilot drifts. Match rates slowly degrade as providers change their data sourcing. Cost per match creeps up as ICPs evolve and the easy matches get exhausted. Compliance posture goes stale as regulations tighten. By month 12, the program your CFO approved at quarter 1 is meaningfully worse — but nobody notices because the system "works."

The fix is operational, not technical: quarterly audit, 30 minutes, four checks. (1) Match rate per provider trend. (2) Cost per verified match trend. (3) Bounce rate trend. (4) Provider compliance status (DPA still valid, GDPR basis still documented). Four numbers, four trend lines. If any goes the wrong way for two consecutive quarters, you have a fixable problem before it becomes a CFO-meeting-problem.

How Derrick handles it: all four metrics live in the Sheet dashboard, refreshed automatically. The quarterly audit is reading 4 numbers off your existing setup — 5 minutes, not 30.

The pattern across the five: enrichment failures are almost never about picking the wrong vendor. They're about running the right vendor in a wrong-shaped process — re-enriching what doesn't need it, skipping verification, enriching dirty data, paying for prospects nobody calls, ignoring drift. Fix the process and the vendor question becomes secondary.

If you'd rather have all five failure modes prevented by default — diff-before-enrich, in-line verification, dedupe warnings, trigger-based runs, in-Sheet metrics — install Derrick free. The 5 guides below cover each anti-pattern in tactical depth.

FAQs about this cluster

I'm just starting, do I need this cluster?

Read 'Enrichment vs scraping' and 'Common enrichment mistakes' before your first purchase — they save you from the most common buyer mistakes. The other three guides become relevant after 3 months of usage.

Is scraping ever a better choice than enrichment?

Yes, for very specific niche data unavailable in any enrichment API. 'Enrichment vs scraping' covers when each one wins. For 90% of standard B2B prospecting, enrichment is the safer, cheaper, faster option.

What's the #1 mistake teams make?

Not validating emails on output. They pay for 'found' emails that bounce at 20-30%, then wonder why deliverability tanks. Always pair enrichment with verification — Derrick does this in one step.

Start enriching your sheet in 30 seconds

Free for 100 credits/month. No credit card.

Install Derrick free →