Skip to content

Platform migration · 6 weeks · fixed price

A migration that never finished, reconciled.

Marketo to HubSpot, Pardot to Marketo, Eloqua to anything, or a CRM swap underneath them. We reconcile what actually crossed, what silently did not, and the records refused on purpose — each with a reason attached.

From USD $14,5006 weeks · fixed scopeEvery record accounted for

What you get

Deliverables, named before we start.

A record-level reconcile

Source counts against destination counts, object by object, with the delta explained rather than estimated. You get the query behind every number.

The refusal list

Records that did not cross and should not have — malformed, duplicated, consent-expired — each with the rule that refused it, so the gap is a decision instead of a mystery.

Field and value mapping, corrected

Picklists that lost their options, dates that shifted timezone, booleans that became strings. Fixed in place, with a before-state captured for each change.

Re-migration of the gap

What should have crossed, moved across under gates — 0 then 1 then 10 then the remainder — with your written go at each step.

Reporting continuity

The historical attribution that broke at the cutover, rebuilt so year-over-year comparisons survive the move.

A runbook for the next one

The import standard, the mapping table and the checks, written down so your team runs the next migration without us.

How it runs

Week by week.

1

Counts and contracts

Every object counted on both sides. We agree what "complete" means in numbers before touching a record.

2

The delta, explained

Each missing record traced to a cause: refused by a rule, lost to a mapping, or never attempted. No bucket called "other".

3

Mapping repair

Fields, picklists and values corrected in a sandbox or a scoped test group, with the before-state captured.

4

Gated re-migration

The gap moves across in stages with tripwires: executions must equal enrolments, or the run halts.

5

Reporting rebuild

Attribution and lifecycle history stitched across the cutover so the numbers reconcile to what finance closed.

6

Hand-off

Runbook, recorded walkthrough, and the standing checks your team runs monthly.

Fit

When this is right — and when it isn't.

A fit when

  • A migration was declared done and the numbers have not matched since
  • You inherited a platform someone else moved you onto
  • Reporting history broke at the cutover and nobody rebuilt it
  • You are mid-migration and want the seams found before you finish

Not a fit when

  • You want a net-new platform selected and stood up from scratch
  • The problem is campaign performance rather than data integrity
  • You need it done this week — the reconcile takes six

Questions

Answered before you ask.

Do you need production access?

Week one is read-only. Write access is requested only for the mapping repair and re-migration, scoped to the objects in play, and revoked in writing on delivery.

What if the source system is already switched off?

We work from the last export. If no export exists, the reconcile is limited to what the destination can prove — we tell you that before you buy, not after.

Is this the same as the Rescue Sprint?

The Sprint fixes one named deadlock. This is the migration-shaped version of it, with the reconcile methodology built in.

How do you price above 500k records?

Quoted on the call after a record count. The price is fixed once scoped and does not move afterwards.

Start with a scoping call. Thirty minutes.

If this isn't the engagement you need, you'll hear that — in writing, with the reason and the one that is.