The Vantage View | Salesforce

CRM Data Migration: What to Filter Out Before the Full Load

Written by David Cockrum | Sep 18, 2026, 1:29:13 PM

Quick Answer

 

Before a CRM data migration's full load, filter out former and inactive relationships, records past their retention or relevance window, duplicates, and orphaned activity data — and prove the filtered load in a sandbox before touching production. "Migrate everything" is the default instinct and the default failure mode: it imports decades of noise, inflates storage and marketing-contact counts, and buries the data your team actually needs under data nobody has touched in years. This matters for any team planning a move from a legacy or vertical CRM into Salesforce or HubSpot. Vantage Point's data migration practice builds filtering and sandbox-first validation into every migration plan.

Key Takeaways (TL;DR)

  • The rule: Migrate what the business needs going forward — not everything the old system happened to store.
  • Filter first: Former relationships, aged-out records, duplicates, and orphaned activities are excluded before the load, not cleaned up after.
  • Prove it in a sandbox: Full load into a sandbox copy first, validate, remediate, then run production.
  • Expect failures: A small percentage of records failing on referential integrity is normal — plan a remediation window for them.
  • How Vantage Point helps: Migration scoping, filter design, sandbox-first loads, and failure remediation.

Why "Migrate Everything" Backfires

The instinct is understandable — nobody wants to explain why a record from 2011 is missing. But unfiltered migrations create four concrete problems:

Operational noise. Every dead record is search-result clutter, list pollution, and report distortion for the next five years. Users lose trust in a CRM that shows them ten thousand names they've never heard of.

Deliverability and cost. Old contacts become marketing-contact bloat and bounce traps. (On HubSpot, that bloat has a direct billing dimension — see what counts toward your marketing contact limit.)

Compliance exposure. Retention policies usually say data should age out. Migrating records past their retention window into a shinier system doesn't preserve them — it re-publishes them. Filtering is how policy becomes practice.

Timeline risk. Every additional record class adds mapping, validation, and failure surface. The migration that tries to move everything moves later and with more remediation than the one with an opinion about what matters.

The mindset shift: a migration is not an archive. The old system's export files, stored safely, are the archive. The new CRM is for the business going forward.

What to Filter: The Four Categories

Category Examples Default treatment
Former relationships Ex-clients, closed accounts with no activity in years, lost deals beyond re-engagement horizon Exclude from the new CRM; retain in the legacy export
Aged-out records Activity history older than your relevance window, expired consents, superseded records Exclude or migrate as summarized history, not live records
Duplicates and dead data Duplicate contacts, hard-bounced emails, test records, integration artifacts Dedupe and purge before load — never migrate a duplicate
Orphaned activity Tasks, notes, and events whose parent records aren't migrating Exclude; orphaned children fail loads anyway

Two judgment calls deserve real discussion rather than defaults. First, the relevance window — how many years of activity history actually inform current work varies by sales cycle; long-cycle businesses keep more. Second, former relationships with re-engagement potential — some businesses rationally keep ex-clients as a nurture segment. Make those decisions explicitly, write them into the migration spec, and apply them as filters, not vibes.

The Sandbox-First Load: How to Prove It Before Production

A filtered full load still needs proof. The pattern that works:

  1. Full load into a sandbox populated with the same target structure as production. This is where mapping errors surface — a date field stamped wrong across every record, an assigned-to mapping that pivots on user type, a foreign-key relationship ordered incorrectly.
  2. Measure the failure rate honestly. A small fraction of records failing on referential integrity — children whose parents didn't migrate, lookups pointing at records that were filtered out — is normal. Zero failures usually means you haven't looked. Track failure categories, not just counts.
  3. Validate by sampling with the business. The people who know the data review samples: do the records look right, do the relationships resolve, do the reports reconcile against the old system's numbers? Data validation is a business review, not just a technical one.
  4. Run a remediation window. Fix mappings, reload failures, re-sample. Budget dedicated days for this — it is a phase, not an evening.
  5. Then, and only then, production. The production load is the sandbox load with the fixes applied — a rerun, not a first attempt.

Sequencing matters throughout: parents before children, accounts before contacts before activities. Most "mystery" load failures are ordering or mapping problems wearing a disguise.

Files and Attachments: Handle Last, Decide Explicitly

Binary files deserve their own decision, because they behave differently: they're often only accessible via API, volumes are unknown until you measure them, and embedded images in rich-text notes frequently point back to storage in the old system that won't survive decommissioning.

The pragmatic default: migrate structured data first, attachments last, and only after measuring volume. Decide explicitly which file classes matter (signed documents, key correspondence) and which don't (system-generated artifacts). Links into a decommissioned system break silently — if files matter, they need to move, not be referenced.

Building the Filter Spec: Who Decides What

Filtering fails as a technical exercise and succeeds as a governance one. The spec needs three named inputs:

A business owner per record class. The person who can answer "do we need former clients as live records?" is not the migration engineer. Sales leadership decides on prospects and dead deals, service leadership on closed cases, compliance on retention. The engineer's job is to turn those decisions into precise, testable filters — "closed-lost more than N years ago with no open activities" — not to guess the N.

A written decision log. Every filter rule gets recorded with its owner and rationale. Six months after go-live, when someone asks why 2018's activity history isn't in the CRM, the log answers in one line instead of a forensic email thread.

An escape hatch. Filtered-out data isn't deleted — it lives in the legacy export, stored accessibly, with a known owner. Knowing the archive exists and is searchable is what lets business owners make confident exclusion decisions instead of nervous "keep everything" ones.

Teams that skip this step don't skip the decisions — they defer them to go-live week, when they get made under pressure and without documentation. The filter spec is a one-to-two-day exercise that buys a calmer cutover and a cleaner CRM.

What Businesses Should Do Next

Before your full load: write the filter spec (what's excluded, by what rule, decided by whom), confirm the sandbox plan, and put a named remediation window on the calendar. If your migration is already planned around "move everything," a scoping review now is far cheaper than a cleanup project later. Our data quality rules for 2026 are a good companion checklist for what "clean enough to migrate" looks like.

How Vantage Point Helps

Vantage Point runs CRM migrations end to end: filter-spec design, field and relationship mapping, sandbox-first full loads, failure remediation, and file/attachment strategy. Through our system integration and data migration services and managed services and ongoing support, you work with senior consultants only — no junior handoffs; the experts you meet are the experts who deliver. We've migrated from legacy, vertical, and homegrown systems into Salesforce and HubSpot across 400+ engagements.

Planning a CRM Migration?

 

Vantage Point can scope your filters, prove the load in a sandbox, and get your team to go-live with clean data and a realistic timeline. Contact Vantage Point to discuss your migration, or explore our data migration services.

Frequently Asked Questions

Should we migrate all of our historical data to the new CRM?

No — migrate what the business needs going forward, not everything the old system stored. Former relationships, aged-out activity, duplicates, and orphaned records should be filtered out before the load. The legacy export, stored safely, is your archive; the new CRM is for current business.

What should we filter out before a CRM data migration?

Four categories: former relationships (ex-clients, dead accounts), records past their retention or relevance window, duplicates and dead data (hard bounces, test records), and orphaned activities whose parent records aren't migrating. Make the relevance-window and re-engagement decisions explicitly and write them into the migration spec.

Why load into a sandbox before production?

Because mapping errors only surface under real data: mis-stamped dates, broken assigned-to logic, mis-ordered relationships. A sandbox full load lets you measure failures, validate samples with the business, and remediate — so the production run is a rerun of something proven, not a first attempt.

How many record failures are normal in a full load?

A small percentage failing on referential integrity — children whose parents were filtered out, lookups pointing at excluded records — is normal and expected. Zero reported failures usually means nobody has checked. Track failure categories, fix mappings, and reload during a planned remediation window.

What should we do about files and attachments?

Handle them last, and decide explicitly. Files are often API-only, volumes are unknown until measured, and embedded images may reference the old system's storage — which breaks when it's decommissioned. Migrate structured data first, then move the file classes that matter rather than referencing a dying system.

Won't people complain that old records are missing?

Rarely, if two things happen: the filter decisions are made with the business (not just IT), and the legacy export remains searchable for the occasional historical lookup. What users actually complain about is a new CRM full of dead names and broken reports — which is what unfiltered migration guarantees.

How does Vantage Point run CRM migrations?

Filter spec first, then mapping, then a sandbox full load with measured failure rates and business sampling, a dedicated remediation window, and a production rerun of the proven load. Senior consultants run the process end to end, with attachments handled as their own explicit workstream.

Vantage Point is a boutique CRM consulting firm helping businesses transform with Salesforce, HubSpot, and AI — 150+ clients, 400+ engagements, and a 4.71/5 average engagement rating. Learn more at vantagepoint.io.