Integration guide

CRM migration without losing attribution

Move CRM platforms without wiping click identifiers, stage semantics or offline conversion history that paid media still depends on.

UI verification note

  • Export and import wizards differ by CRM vendor and edition. Treat field mapping as an operation to complete in your tenant's current import tools.

What this integration solves

CRM migrations often succeed as contact moves and fail as attribution moves. GCLID fields get dropped, stage names change meaning, and offline upload automations point at dead properties. Paid media looks like it fell off a cliff when only the wiring moved.

This guide is a migration checklist for attribution continuity across HubSpot, Salesforce and Pipedrive moves.

Prerequisites and permissions

Admins on old and new CRM, Google Ads access, a freeze window for stage changes, and a mapping workbook that lists every attribution field: gclid, gbraid, wbraid, ga_client_id, original utm fields, offline upload flags, and conversion external IDs.

The build, step by step

1. Inventory attribution fields and automations in the source CRM. Export sample rows with known paid conversions.

2. Recreate fields in the destination with identical meaning. Prefer same API names where possible.

3. Map stages with a written dictionary. Do not collapse PQQ and ITT into Proposal without documenting the loss.

4. Migrate historical click IDs even for closed records; you may still need them for lookbacks and audits.

5. Rebuild upload jobs against new field API names. Keep the old job running until parity checks pass.

6. Parallel run: for two weeks, compare upload volume and accepted conversions pre/post.

7. Only then decommission the source automations.

Gotchas

Deduping contacts can discard the contact that held the gclid. Activity history migrations that rewrite timestamps break conversion_date_time audits. Soft-deleted marketing contacts excluded from export. Re-labelling stages without updating Google Ads conversion action names. Currency field defaults changing on import.

How to verify it is working

Reconcile 50 known paid-won records: click ID present, stage equivalent, upload flag equivalent, and a fresh stage change produces an Accepted upload in Google Ads. Compare weekly Accepted count to the pre-migration baseline.

What breaks it later

Post-migration cleanup scripts that null custom fields, and new sales processes that invent stages without measurement owners. Keep an attribution field lock list.

Identity and capture for CRM migration without losing attribution

Inventory every click ID field, upload flag and stage trigger in the source CRM before cutover. Rebuild meanings in the destination even when API names change, and keep a field dictionary. Historical IDs on closed records migrate for auditability, not for bidding nostalgia.

Upload contract for CRM migration without losing attribution

Parallel-run old and new upload jobs until Ads Accepted volume and missing-ID rates are stable for a full week. Freeze stage renames during that window. Do not cut over on a single green test Opportunity. Fifty-record reconciliations beat a demo.

Monitoring for CRM migration without losing attribution

Daily during parallel run: source stage volume, destination stage volume, Ads Accepted count and missing click ID rate. After cutover, lock attribution fields against cleanup scripts that null custom properties. Name a measurement owner with veto power over stage redesigns.

Deep dive: CRM migration without losing attribution

Migrations fail attribution when the workstream is treated as optional IT. Treat measurement as a go-live gate. Publish a short internal note covering the dictionary, the parallel-run exit criteria and who can rename stages after cutover.

Operator checklist: crm-migration-without-losing-attribution

1) Source field inventory signed. 2) Destination dictionary complete. 3) Historical IDs migrated. 4) Parallel run stable for seven days. 5) Fifty-record sample reconciles. 6) Attribution fields locked. 7) Measurement owner named in writing.

FAQs

CRM migration without losing attribution FAQs

Should we migrate closed-lost click IDs?

Yes. Audits and late corrections need them, and storage cost is trivial versus media waste.

Can we change stage names during migration?

Only with a written mapping and updated upload rules. Otherwise keep names stable until measurement parity is proven.

Do Google Ads conversion actions need recreating?

Not if names and resource IDs remain; update middleware field references. Create new actions only when stage economics change.

What about historical offline uploads already in Google Ads?

They remain in Ads. Your job is not to re-upload history blindly; it is to keep new events flowing with valid IDs.

How long should the parallel run last?

At least one full weekly bidding cycle, longer on low-volume accounts.

Next step

Tell us about the pipeline you want to build

Share the vertical, the stack, and where enquiries are leaking. We will tell you plainly whether we are the right team for it.

Enquire now