Marketo to HubSpot Migration: Why Copying Everything Is the Wrong Goal
Most Marketo-to-HubSpot migrations don't fail at the data export — they fail at the question that comes after it: how much of the complexity Marketo accumulated over the years gets rebuilt automatically. Decide first what the business actually needs going forward, and you end up with a simpler system, not a copy of the old one.
Why is a 1:1 migration from Marketo to HubSpot usually the wrong goal?
A 1:1 migration doesn't just move contacts — it moves every Marketo program, smart campaign and workaround built up over years, including the ones that stopped creating value long ago. A migration isn't judged by how much data made the trip, but by how well the resulting system actually runs afterward.
None of this makes Marketo a weak platform. Its depth in programs and scoring logic is exactly why instances get this complex in the first place: a new smart campaign for every launch, a new list for every exception, a new field for every edge case nobody wanted to model properly. Rebuilding that logic unchanged in HubSpot just moves the workarounds — most of which existed because Marketo required them, not because the business does.
So the migration shouldn't start with "how do we move everything," but with "what does the business actually need going forward." The target architecture in the next section comes before field mapping, not after. What a straight copy tends to drag along unexamined:
- Smart campaigns still reacting to a product line or pricing tier that no longer exists
- Static lists built for a one-time campaign years ago that nobody has touched since
- Scoring rules tied to behavior on a website or product structure that has since been rebuilt
- Fields that once belonged to a sales team that no longer exists in that form
A pattern we see across B2B SaaS instances: a smart campaign network built for a single product line expands over years into multiple product lines, regions and languages — each new combination gets its own copy instead of a parametrized workflow. A straight rebuild multiplies those copies. A deliberate one collapses them into a single parametrized set.
What should the target architecture look like before migration starts?
Before any field gets mapped, decide the architecture: HubSpot runs marketing execution, Salesforce stays the system of record for sales and revenue, and tools like Clay handle enrichment and intent. Only once it's clear which system owns which field can you meaningfully decide what actually needs to leave Marketo.
A workable target picture: HubSpot as the marketing execution layer, Salesforce as the sales and revenue system, Clay for ABM, intent and enrichment, webinar and video platforms feeding engagement directly into lifecycle logic, and ad channels with attribution that's actually traceable back to a campaign. The point isn't the tool stack itself — it's clarity on data ownership per system, which is the backbone of any HubSpot implementation, migration or not.
| Architecture question | Typical answer in the target picture |
|---|---|
| Who owns Lifecycle Stage? | HubSpot, with a defined sync direction into Salesforce |
| Where does Lead Status live? | Salesforce, once sales has taken the lead over |
| Where does lead assignment happen? | A HubSpot workflow triggers it, Salesforce executes the assignment |
| Which engagement signals reach Salesforce? | only the ones meant to trigger an action — not every activity |
Clay takes over the enrichment and intent detection that Marketo instances usually bolt on through extra fields and manual list maintenance. Webinar and video platforms feed engagement straight into that same lifecycle logic instead of sitting in a disconnected spreadsheet. And paid channels only get attribution that holds up once channel, campaign and conversion type exist as real fields — more on that below.
What belongs in a Marketo audit, and how do you decide what to migrate, rebuild, archive or retire?
A Marketo audit covers four areas: assets, data model, integrations and historical activity. Every item that surfaces then gets exactly one of four calls: migrate, because it's still needed operationally or legally; rebuild, because the process matters but the logic is outdated; archive; or retire outright.
Terminology here follows the official Adobe Marketo Engage glossary, so audit findings stay unambiguous once someone else picks up the project.
- Marketo assets: programs (event, engagement, email or default), smart campaigns with their smart list, flow and schedule, forms, landing pages, email templates, static and smart lists, scoring and operational campaigns
- Data model: contact and company fields, Salesforce fields, lifecycle fields, source fields, consent data, segmentation and scoring fields
- Integrations: Salesforce, website/CMS, webinar and video platforms, advertising, enrichment and intent tools, reporting, Zapier or custom builds
- Historical activity: demo and trial requests, webinar attendance, content downloads, video engagement, program memberships, interesting moments, lead and behavior score
This structure largely mirrors HubSpot's own data migration checklist. Every item found gets run through the same four-way call:
| Decision | When it applies | Example |
|---|---|---|
| Migrate | still needed operationally or legally | contacts, consent status, current lifecycle stage, open handover cases |
| Rebuild | process still matters, logic gets restructured | lead scoring, nurturing, lead routing, attribution, reporting |
| Archive | compliance or analysis value, no daily use | old program memberships, historical campaign logic, retired automations |
| Retire | no future value | duplicate workflows, obsolete fields, undocumented one-off logic |
Those four columns are the actual project work. Not the export button.
Which historical engagement data is actually worth migrating?
Not every Marketo activity makes marketing in HubSpot better — a complete activity log is often just technical weight. What's worth migrating is historical context with decision value: the last relevant conversion, a demo or trial request, webinar attendance, or the most recent score reached. Everything else belongs in an archive, not on the contact record.
The line between historical context and full activity history determines how heavy the new system gets:
- Historical context (migrate): last relevant conversion, demo request, webinar attendance, trial request, product interest, engagement level, former program membership, most recent score
- Full activity history (usually archive): every past email open, every historical pageview, complete Marketo activity logs, old campaign reactions with no current relevance
Prioritize by future usefulness, not completeness: a sales rep needs the last demo request visible immediately, not the seventh email open from two years ago. There's a technical reason too — every migrated activity becomes a timeline entry or custom property in HubSpot, and counts against limits, load time and how readable the contact record stays. A record with ten years of unbroken Marketo history is harder for sales to read than one with the five moments that actually explain a buying decision.
How do you rebuild lead scoring in HubSpot instead of copying it?
A model that holds up separates at least three dimensions: an engagement score for behavior, a fit score for how well a contact matches the ICP, and an account score for the company as a whole. A high engagement score with no fit isn't a good lead — a perfect fit with no activity isn't a buyer yet either.
Not the other way around. The three dimensions in practice:
- Engagement score: email clicks, webinar attendance, content downloads, demo requests, trial requests, high-intent pages, video engagement
- Fit score: company size, industry, job title, role, region, revenue, ICP fit
- Account score: intent signals, multiple engaged contacts at the same company, account-level engagement, Clay data, target-account status
A combined score merges fit and engagement into one priority. On top of that sit rules most Marketo instances either lack or scatter across multiple campaigns: score decay, recycling, suppression, disqualification, and a defined MQL threshold — the point value at which a contact becomes a Marketing Qualified Lead: a contact whose scoring and behaviour indicate sales-readiness but who hasn't yet been confirmed as qualified. Just as important are clear SAL and SQL definitions — a Sales Qualified Lead is an MQL that sales has reviewed and judged worth an active deal. Our guide to lead scoring in HubSpot goes deeper on calibrating each dimension. None of this pays off unless it feeds into actual pipeline generation — a high score with no handover process is just a number nobody acts on.
Here's why a single Marketo score rarely survives the move well: it blends behavior and fit into one figure, which hides why a contact scored high in the first place. Split scores can each be explained, calibrated and communicated to sales on their own — "high fit, no engagement yet" calls for a different action than "high engagement, wrong fit."
How do you set up attribution correctly from the moment data is captured?
Attribution doesn't start in a report — it starts at the first form field. Channel, channel detail, lead capture, conversion type and topic interest need to be captured consistently from day one. Bolt that governance on after go-live, and you're analyzing data that was never captured comparably in the first place.
The recommended attribution logic follows a fixed chain:
- Channel
- Channel Detail
- Lead Capture
- Conversion Type
- Topic Interest
- Campaign
- Lifecycle Progression
- Revenue Outcome
Relevant fields: original source, latest source, source detail, UTM source/medium/campaign, campaign type, conversion type, topic interest, first and latest conversion. Governance to settle before the first form goes live: UTM naming, campaign naming, form strategy, hidden fields, offline and partner sources, webinar attribution, LinkedIn lead gen forms, and Salesforce campaign mapping.
A common failure point: original source and latest source get used interchangeably in Marketo because a contact rarely converts twice. Once HubSpot starts collecting multiple touchpoints over months, the two fields diverge — and only teams that captured them separately from the start can answer first-touch and multi-touch questions later, instead of trying to reconstruct them from raw data after the fact.
How do you deliberately limit the Salesforce integration — and what else needs checking beforehand?
HubSpot doesn't need to mirror the entire Salesforce data model. Sync only what marketing, handover and reporting actually need — lifecycle stage, lead status, owner, MQL/SAL/SQL date, source, campaign, score and product interest. Everything else stays where it belongs.
Settle these upfront too: which system leads on each field, sync direction, conflict rules, duplicate logic, deliberate sync exclusions, and marketing contact management. The same questions surface in common traps in HubSpot-Salesforce sync, independent of whether Marketo is involved at all.
The same rigor applies to every other integration — LinkedIn, Google Ads, webinar and video platforms, Clay, attribution tools, interactive demo platforms, Zapier, the data warehouse. For each, ask the same four questions before building anything: is there a native integration, which objects and activities sync, is it bidirectional, and does the custom-development burden end up on marketing or on IT?
| Field | System of record | Sync direction |
|---|---|---|
| Lifecycle Stage | HubSpot | HubSpot → Salesforce |
| Lead Status | Salesforce | Salesforce → HubSpot |
| Score | HubSpot | HubSpot → Salesforce |
| Owner | Salesforce | Salesforce → HubSpot |
Treat this as a starting point, not a template to copy — the real mapping depends on the sales process. What matters is that it exists on one page before the first sync job runs, not scattered across four different Slack threads.
What does a realistic project structure for the migration look like?
A Marketo-to-HubSpot migration runs through six phases: discovery and audit, architecture blueprint, migration, implementation, QA and go-live, hypercare and enablement. Discovery and architecture shouldn't be compressed to save time — mistakes made in those two phases cost far more to fix later than they would have cost to get right upfront.
| Phase | Covers |
|---|---|
| 1 · Discovery & Audit | Marketo analysis, data and asset inventory, process mapping, integration analysis, stakeholder interviews |
| 2 · Architecture Blueprint | target architecture, data model, lifecycle, scoring, attribution, Salesforce sync, naming conventions, migration decisions |
| 3 · Migration | mapping, data cleanup, test imports, pilot migration, historical data, consent data |
| 4 · Implementation | forms, workflows, scoring, nurturing, reporting, integrations, sales handover |
| 5 · QA & Go-Live | data validation, workflow/Salesforce/permission tests, reporting tests, cutover |
| 6 · Hypercare & Enablement | training, support, troubleshooting, process refinement, power-user sessions, documentation |
How many weeks each phase takes depends on the size of the existing Marketo instance and the number of integrations involved. A credible timeline only exists after the audit, not before it — anything else is a sales pitch, not a project plan.
The reason discovery and the architecture blueprint can't be shortened: every call from the migrate/rebuild/archive/retire model depends on what those two phases surface. Skip the depth there, and the project ends up making that same decision later anyway — just field by field, under deadline pressure, during implementation, instead of once, deliberately, for the whole instance.
Marketing Hub Professional or Enterprise — what actually decides that?
There's no blanket answer: the right edition follows from actual requirements, not from how complex the old Marketo instance was. Teams that need a large number of marketing contacts, custom objects, sandboxes or multiple business units land on Enterprise. Teams that don't are paying for headroom they'll never use.
According to HubSpot's own Marketing Hub Enterprise page, the editions differ mainly on four points: the number of included marketing contacts (Enterprise starts meaningfully higher, both editions scale with paid tiers beyond that), custom objects (Enterprise only), sandboxes as an isolated test environment (Enterprise only), and business units for splitting data by team or region (Enterprise only). Teams that don't need any of those four generally don't need Enterprise — regardless of how complex the old Marketo setup looked.
Also worth checking: marketing contact volume, teams and permissions, scoring and reporting requirements, governance needs, number of brands and domains, transactional email volume, and whether a dedicated IP matters. Our guide to managing HubSpot marketing contacts on Enterprise goes deeper on the cost side of that specific decision. That checklist — not the old Marketo invoice — decides the edition.
What are the most common mistakes in a Marketo-to-HubSpot migration?
The costliest mistake is rebuilding Marketo unexamined instead of evaluating each piece of data on its own. Close behind: importing too much historical activity, copying scoring rules instead of remodeling them, and leaving the Salesforce sync undefined until after go-live.
- rebuilding Marketo unexamined instead of evaluating each piece of data individually
- importing too much historical activity instead of prioritizing by future use
- copying scoring rules instead of separating engagement, fit and account score
- leaving the Salesforce sync undefined until after go-live
- underestimating consent data
- analyzing integrations last instead of first
- not planning marketing contact volume in advance
- building reporting only after go-live
- never defining clear data ownership per system
- underestimating how much time QA actually needs
- treating user training as optional
Most of these share one root cause: a strategic decision gets pushed into a later, more technical phase where it can only be made reactively. Run the migrate/rebuild/archive/retire model from earlier in this guide before the build starts, and most of these mistakes never make the trip in the first place — not because they're banned, but because there's nothing left unexamined for them to hide in.
A Marketo-to-HubSpot migration succeeds when the new system is simpler, more transparent and easier to run day to day than the old one — not when the largest possible share of Marketo survived the move. Migrate what matters. Rebuild what creates value. Archive what creates noise. Answer those three sentences before the first field gets mapped, not after, and you skip the second migration three years from now. Book a free Launchpad and we'll map the audit, target architecture and project structure against your actual Marketo instance.
Frequently asked questions
Do you need to migrate every Marketo program?
How long does a Marketo-to-HubSpot migration realistically take?
Does Salesforce stay the system of record for sales after migration?
What happens to old Marketo lead scoring rules?
Is Marketing Hub Professional enough for most B2B teams?
How do you avoid carrying Marketo's old complexity into HubSpot?
A free 60-minute Launchpad clarifies which lever should move first. No pitch, honest fit / no-fit answer and a clear next step.