Migration Reference
Pardot (Marketing Cloud Account Engagement) to HubSpot Migration
What actually transfers, what quietly does not, and what has to be rebuilt by hand.
We mapped Pardot (Marketing Cloud Account Engagement) against HubSpot feature by feature: 52 features, 3 synced objects, 13 documented traps and 22 items that have to be rebuilt. The whole map is on this page, ungated.
The PDF is the same reference, formatted for a procurement file.
Get The Reference And The Calculator
The full Pardot (Marketing Cloud Account Engagement) to HubSpot reference as a PDF, plus the Excel calculator we scope these migrations with: every one of the 52 features as a row, enter your counts, get hours.
Three files: the reference as a PDF, the same reference in Markdown for your AI tool, and the full Excel effort calculator.
Pardot (Marketing Cloud Account Engagement) to HubSpot is a high migration, typically 4-16 weeks. Of the 52 features we mapped, 16 carry across as they are and 36 land with something lost: the 22 items nothing moves for you is what will actually set your timeline, not the sync.
Migration Scorecard
- Migration complexity
- High
- Typical timeline
- 4-16 weeks
- Recommended method
- Smart transfer
- Native sync
- Data sync, two way
- Smart transfer
- Supported
- HubSpot subscription
- On the source side, an active Salesforce Marketing Cloud Account Engagement plan is a prerequisite before anything else is discussed. On the HubSpot side, the free CRM covers default field mappings, Data Hub Starter and above is what custom field mappings need, and business units specifically require Marketing Hub Enterprise, a tier worth confirming early if the group runs more than one.
Feature parity across 52 capabilities
- Maps directly: 16 (31%)
- Maps partially: 36 (69%)
- No equivalent: 0 (0%)
3
Objects synced natively
13
Limitations and traps
22
Manual rebuild items
4
Source editions covered
Where this comes from: Our own research corpus, verified 2026-08-01, behind every number on this page.
The Three Objects That Sync Natively
What the connector moves for you, and which way each one flows.
Prospects
Two wayBecomes Contacts
Email address is what deduplication runs on, and treat it as mandatory in practice. Prospects are also the only object the ongoing Data Sync connector moves at all. The deeper issue is structural: Pardot's Prospect is its own marketing object that separately syncs into Salesforce as a Lead or a Contact, while HubSpot holds one unified Contact record inside the CRM, so a single Pardot Prospect can correspond to a Salesforce Lead, a Salesforce Contact, both, or neither. That mismatch is the single biggest source of surprise in the whole migration. Score and grade travel across as static values; the models that generated them do not come with them.
Email templates
Into HubSpotBecomes Marketing email templates
Email templates move, but only through Smart Transfer's one-time post-sync transfer, not the ongoing sync, and that detail contradicts most published Pardot migration guides outright: they state flatly that templates have no automated export path and must be rebuilt from nothing. Check the current Smart Transfer supported-apps list before any estimate you are given quotes rebuild hours for templates, because this line item alone can swing a quote by tens of hours. Even transferred templates still need rendering QA and merge-field remapping before they are ready to send.
Lists
Into HubSpotBecomes Static lists
List membership moves once, as a one-time Smart Transfer, and what lands is a point-in-time snapshot rather than a living list: a Pardot dynamic list does not arrive as a HubSpot active list, and the filter criteria behind it are not translated across. The rule logic for every dynamic list has to be rebuilt by hand against HubSpot properties before it behaves like a dynamic list again.
Thirteen Things the Sync Does Not Tell You
Each one is documented, and each one has ended a migration in a bad week.
Prospect Activity History Does Not Transfer
Reporting continuity is the casualty here, not a side effect: everything you segment on today, email opens, clicks, page views, form submissions and every Engagement Studio step someone completed, has no path out of Pardot. The Data Sync connector carries prospect field values and nothing else, which one HubSpot marketplace reviewer puts bluntly: the app 'doesn't move contact activity or campaign information'. Of everything lost in a Pardot migration, this is the loss buyers underestimate most often, because behaviour-based segmentation and the reports built on it stop working the moment the switch flips.
Workaround: Before decommissioning, export every Pardot activity report and summary to CSV, and hold Pardot in read-only for at least 90 days past cutover rather than switching it off on day one. Where a segment is built on historical engagement, export the audience itself and load it into HubSpot as a static list: the segment survives that way even though the activity behind it does not.
Engagement Studio Programs Have No Export Mechanism
No machine-readable export exists for an Engagement Studio program at all, so every one of them has to be read off the screen, written down, and rebuilt in HubSpot as a Workflow by hand. The two canvases do not think alike either: Engagement Studio steps through wait, trigger, action and rule nodes, while a HubSpot workflow runs on enrollment triggers and if/then branches. This single gap is where a Pardot migration timeline most often runs long, so size it generously in whatever estimate you are given.
Workaround: Screenshot and document every active program before HubSpot is touched at all, and rebuild only the ones actually running and producing results: a dormant program is scope you get to retire rather than recreate. For anyone mid-flight through a program at cutover, use workflow jump steps that check which email a contact already received and enrol them at the matching stage rather than from the start.
Pardot's Dual Score Plus Grade Model Has No Single HubSpot Equivalent
Two separate models collapse into one on the HubSpot side. Pardot keeps behavioural intent as a numeric score and demographic fit as a letter grade from A through F, set by a profile and scoring categories, while HubSpot ships a single HubSpot Score property. Moving the values across is the easy part; moving the model behind them needs a deliberate redesign, and that redesign is the work that actually matters here.
Workaround: Split the model back into two custom score properties, one for engagement and one for fit, and on Marketing Hub Professional and above clone the HubSpot Score property to give the second category somewhere to live. Treat the migration as the chance to fix the model rather than reproduce it: if the current scoring hands sales far more MQLs than the sales team is actually working, rebuilding it exactly as it stands only moves the same problem into the new system.
Form Handlers Have No Direct Analogue, Though External Form Capture Exists
A Pardot form handler is what lets a form built and owned by your website post its data into Pardot without Pardot ever holding the markup, and HubSpot has nothing that does the same job directly. The nearest substitutes are a native HubSpot form, or non-HubSpot form capture, which needs the tracking code installed and does not give you the same explicit field mapping contract the handler did.
Workaround: Before cutover, inventory every form handler and the source posting into it. Where the markup can be changed, replace it with a native HubSpot form; where it cannot, pair non-HubSpot form capture with a workflow instead. Plan the budget around the fact that almost every one of these replacements means someone touching a website template, not just a settings screen.
Embedded Pardot Forms and Landing Pages Die Instantly at Decommission
The moment the Pardot instance is switched off, every Pardot-hosted form, landing page and iframe embed stops collecting anything at all, and nobody is told. Unlike a data sync gap, this failure makes no noise: the page keeps rendering, the form keeps appearing exactly as before, and every submission after that point simply disappears.
Workaround: Crawl the live site for every Pardot form iframe, form handler endpoint and hosted landing page URL before cutover, never after: this is not a check you get to run late. Replace and test each one on staging first, then put 301 redirects in place from every Pardot landing page URL to wherever its HubSpot replacement now lives.
Salesforce Connector Conflicts Are the Highest-risk Part of the Migration
Pardot and HubSpot each run their own connector into Salesforce, with different field direction rules, different conflict resolution and a different inclusion list from one another. Stand the HubSpot-Salesforce integration up while the Pardot connector is still live and you put two systems in a write race over the same Salesforce records, and a default sync configuration is entirely capable of overwriting good data. Where a deal has been worked over months through a committee of stakeholders, the Salesforce record is frequently the only complete account of who agreed to what, which is exactly the record this race can corrupt.
Workaround: Set the order of operations down explicitly: name which system owns which field, and the exact moment the Pardot connector pauses. Configure the HubSpot inclusion list before the first sync runs, not after, and scope selective sync as its own piece of work rather than a subtask, since HubSpot Support will not walk you through implementing it.
Campaign Attribution Models Are Structurally Incompatible
Pardot has always tied a prospect to one connected campaign, whichever represented first touch, while HubSpot lets a contact carry many campaign associations under a configurable attribution model. That is not a setting you can change retroactively: your historical Pardot campaign membership cannot be reshaped into HubSpot's multi-touch model after the fact, because Pardot never stored the intermediate touches multi-touch attribution needs.
Workaround: Accept the clean break on attribution reporting rather than fighting it. Export Pardot campaign performance to CSV to preserve the historical record, and let HubSpot attribution start fresh from cutover. Tell the stakeholders who read the quarterly numbers about the discontinuity before go-live, so the first report that looks strange is not the moment they find out.
Automation Rules Split Across Two Different HubSpot Concepts
One Pardot automation rule, a criteria-plus-action pair evaluated over and over, splits into two HubSpot concepts once it crosses over: the criteria becomes an active list, the action becomes a workflow. Get that split wrong and the result does not fail loudly; it keeps running and quietly acts on the wrong contacts, which is a harder problem to catch than an automation that simply stops.
Workaround: Classify every automation rule before any rebuilding starts: criteria defining membership becomes an active list, criteria triggering a one-time action becomes a workflow enrollment trigger. Test enrollment against a small static list first, and only turn a workflow loose on the full database once that test has held.
Dynamic List Criteria Are Not Translated, and Deprecated Fields Break Filters
What Smart Transfer moves is a snapshot of list membership, never the rules that produced it, so those rules have to be rebuilt by hand from scratch. Rebuild against a field that an earlier Pardot cleanup deprecated and the filter fails quietly: the list looks perfectly valid and simply never populates, which is a harder fault to spot than an error message would be.
Workaround: Audit field usage before a single list is rebuilt. Once dynamic lists become HubSpot active lists, check the membership count against the original Pardot count for each one: a rebuilt list sitting at zero, or wildly off the original number, is the tell that a filter is still pointing at a dead field.
Custom Field Mappings Require a Paid Data Hub Subscription
Default fields are as far as the free Data Sync connector reaches; mapping a single custom prospect field needs Data Hub Starter or above, and even then the field types have to cooperate. Many third-party field types will only map one way, into a HubSpot text field, and a field carrying multiple labelled values, an email, a phone number, an address, cannot be mapped to a custom field at all.
Workaround: Put Data Hub Starter in the budget from the outset if you have meaningful custom fields, and nearly every account does. Audit field types and dropdown values for an exact match before sync is switched on, and know going in that HubSpot captures dropdown options at the moment sync is created: an option added afterwards will not appear without a resync.
Custom Redirects and Tracker Links Break on Decommission
Every Pardot custom redirect, the tracked link sitting in an email, a social post, a PDF or a third-party property, resolves through Pardot's own infrastructure, so all of them 404 the day the instance is retired, including the ones embedded in assets nobody on your team can still edit.
Workaround: Export the full custom redirect list along with its click counts, then rebuild the high-traffic ones as HubSpot tracking URLs or CTAs and put permanent redirects in place for what is left. A link buried in an already-sent email or printed collateral cannot be saved at any price, so let click volume decide the order you work through the rest.
Business Units Require Marketing Hub Enterprise
Pardot business units partition prospects, assets and users inside a single account, and they turn up most in organisations running several brands or several regions, a pattern common to a Gulf group with more than one operating entity under one holding structure. HubSpot's equivalent, Business Units, sits behind Marketing Hub Enterprise; on a lower tier the separation has to be approximated with teams, partitioning and property-based segmentation, none of which holds entities apart as cleanly as a true partition does.
Workaround: Confirm the target HubSpot tier before anyone promises equivalent separation to the business. Where Enterprise is out of scope, design a naming convention and an asset partitioning approach early: retrofitting one onto a portal that already has data in it is significantly more work than building it in from the start.
Landing Pages, Layout Templates, and Hosted Files Must Be Rebuilt
Pardot landing pages sit on layout templates written in Pardot's own HML merge syntax and stylesheet model, and none of that structure has anywhere to go inside a HubSpot template or the drag-and-drop builder. Hosted files carry Pardot-domain URLs of their own, and those URLs die with the instance too.
Workaround: Rebuild only the pages still carrying live traffic or an active campaign link, and use the migration as licence to retire the rest. Re-upload hosted files to the HubSpot Files tool and redirect the old URLs to them, and route anything custom-coded to a developer rather than the drag-and-drop builder, which will not reproduce it.
Two Things a Migration Does Not Rebuild
These are Pardot (Marketing Cloud Account Engagement)'s own code and products, and a HubSpot migration will not carry them across: they carry no hours in the estimate. They still need a decision before cutover, because you are the one giving something up.
Salesforce Connector
Of everything in a Pardot migration, the Salesforce connector cutover is the highest-risk single step, so treat the sequencing as deliberate rather than incidental: configure the inclusion list and confirm it before the first sync ever runs, not after.
Business Units
Confirm the target tier before promising equivalent separation. Retrofitting is significantly more work.
The 22 Items That Get Rebuilt by Hand
This is the list that separates a quote that holds from one that does not.
Data And Objects
Prospect Custom Fields
Before any import or sync runs, every custom prospect field has to already exist as a HubSpot contact property with a matching type, and Pardot record types and dropdown value sets have to match exactly, since the sync rejects any value that does not.
HubSpot: HubSpot Contact Properties
Custom field mapping only comes with a paid Data Hub plan, so it is worth confirming that tier is in scope before promising it. Create every property before the import runs, not after it has already landed.
Prospect Activity History
Opens, clicks, page views and every program step completion have nowhere to go; none of it moves. All that survives is the aggregate score and grade, and only as static property values with the logic behind them stripped away.
HubSpot: None. Export to CSV for the historical record.
Hold Pardot in read-only for 90 days after cutover regardless of how confident the migration felt, because this data exists nowhere else once the instance is gone.
Connected Campaign Structure
A single connected campaign per prospect is Pardot's whole model, and it has to be re-conceived rather than carried over: HubSpot campaign associations are many-to-many and built to support multi-touch attribution, a structure Pardot never asked for.
HubSpot: HubSpot Campaigns
Historical attribution does not make the trip, so plan for a genuine reporting discontinuity at cutover rather than a like-for-like handover.
Salesforce Field Sync Mapping
The HubSpot-Salesforce connector handles the Salesforce-to-HubSpot direction on its own, but the reverse is manual work: HubSpot-native data such as original source and enrichment properties needs matching fields built in Salesforce by hand before it has anywhere to land.
HubSpot: HubSpot-Salesforce Integration field mappings
This is the single highest-risk item in the whole migration, so configure the inclusion list before the first sync runs, not as a follow-up task.
Automation
Engagement Studio Programs
No export format exists for an Engagement Studio program at all, so every one gets documented straight off the screen and rebuilt in HubSpot as a Workflow. The branching logic between the two is different enough that redesign, not translation, is the honest description of the work.
HubSpot: HubSpot Workflows (Marketing Hub)
This is usually the single largest line item in a Pardot migration, so scope it accordingly and rebuild only the programs still active.
Automation Rules
A persistent criteria-plus-action rule does not move across as one thing: the criteria half becomes a HubSpot active list, and the action half becomes a workflow.
HubSpot: HubSpot Active Lists plus Workflows
Get that split wrong and the result is an automation that keeps running and fires silently against the wrong contacts rather than one that visibly breaks.
Completion Actions and Page Actions
Whatever action was attached to a form submission, a file download, a custom redirect or a page view needs rebuilding as a workflow action triggered by the matching HubSpot event.
HubSpot: HubSpot Workflows triggered by form submission or page view
Page actions are the ones most likely to slip through, precisely because each is configured on its own asset rather than sitting somewhere central you can review in one pass.
Segmentation Rules
A one-time segmentation rule that bulk-assigns list membership or field values has to be reproduced either as a list-based workflow or as an import operation, since nothing carries the rule itself across.
HubSpot: HubSpot Workflows or a scoped import
Email Templates
Smart Transfer will move your Pardot email templates as a one-time transfer, but arriving is not the same as being ready to send: every transferred template still needs rendering QA, its merge fields remapped to HubSpot personalisation tokens, and a subscription type assigned before it goes live.
HubSpot: HubSpot Marketing Email Templates
Check what Smart Transfer actually covers before anyone quotes a full manual rebuild: most published guides get this wrong and assume a manual rebuild is mandatory when it is not.
Scoring and Grading Model
Both the numeric scoring rules and the grading profile need rebuilding, and they land as two separate HubSpot score properties rather than one: engagement on one side, fit on the other.
HubSpot: HubSpot Score plus a cloned score property (Marketing Hub)
Treat the rebuild as the opportunity to fix the scoring model, not an obligation to replicate the old criteria untouched.
Reporting
Pardot Reports and B2B Marketing Analytics
Lifecycle reports, funnel reports, campaign influence reports and any B2B Marketing Analytics dashboard all need rebuilding from nothing against HubSpot's own reporting model, because none of it imports.
HubSpot: HubSpot Custom Reports and Dashboards
Reporting continuity is going to break here whatever you do, because the activity history underneath it never migrated in the first place. Design the new reports for what HubSpot can actually show rather than chasing a copy of the old Pardot layouts.
Lifecycle Stage Definitions
MQL and SQL definitions, sales acceptance rules and how lead status gets used are worth redesigning rather than copying wholesale, since Pardot and HubSpot do not model the funnel the same way.
HubSpot: HubSpot Lifecycle Stages and Lead Status
Changing lifecycle definitions in the middle of the migration is the single most common way reporting continuity ends up lost, so settle the definitions before the rebuild starts rather than during it.
Sales And Marketing Config
Forms and Form Handlers
Pardot forms get rebuilt in the HubSpot form builder, progressive profiling included, but form handlers have no real counterpart there: the nearest option, non-HubSpot forms, captures an externally hosted form's post via the tracking code but gives you no explicit field-mapping contract and ignores hidden fields entirely.
HubSpot: HubSpot Forms, or non-HubSpot form capture
Almost every one of these replacements means editing a website template, so test each on staging before cutover rather than finding the break live.
Landing Pages and Layout Templates
Pardot landing pages and the layout templates behind them need rebuilding in HubSpot templates or the drag-and-drop builder, since HML merge syntax has no equivalent to carry across into.
HubSpot: HubSpot Landing Pages and Templates (Content Hub or Marketing Hub)
Any custom-coded page needs a developer involved; this is not work the drag-and-drop builder can absorb on its own.
Custom Redirects and Tracker Links
Any tracked link that resolves through Pardot's own infrastructure needs rebuilding as a HubSpot tracking URL or CTA, with a redirect standing in for whatever does not get rebuilt.
HubSpot: HubSpot CTAs and tracking URLs
Work through them in order of historical click volume, and accept from the start that a link inside an already-sent email cannot be recovered whatever priority you give it.
Email Preference Centre and Subscription Types
Pardot email preference pages and its opt-out handling become HubSpot subscription types, and the rebuild is not optional: every HubSpot marketing email has to belong to a subscription type before it can send.
HubSpot: HubSpot Subscription Types and Preference Pages
Preserve consent state exactly as it stood in Pardot: get this wrong and it is a compliance issue for whoever owns data protection, not a cosmetic detail to fix later.
Sending Domain, Tracker Domain, and DNS
Email sending domain authentication and the tracking domain both need reconfiguring for HubSpot, SPF, DKIM and DMARC alignment included, before a single email can send from the new system with any confidence.
HubSpot: HubSpot Domains and URLs, email sending domain connection
Start the DNS work early and hand it to IT well before the build is finished, because propagation delays and the internal approval it needs routinely push the cutover date back further than the build itself ever does.
Lead Assignment Rules
Where assignment currently happens inside Pardot, rebuild it with HubSpot's rotate action; where it happens inside Salesforce instead, rebuild it with granular workflows and Teams, since the two need different tools on the other side.
HubSpot: HubSpot Workflows rotate action plus Teams
Users And Permissions
Users, Roles, and Permission Sets
Every Pardot user role has to be recreated as a HubSpot role and permission set, spanning Marketing, Sales, Service and Reporting scopes rather than a single one.
HubSpot: HubSpot Users, Teams, Roles, and Permission Sets
Map each Pardot user to a HubSpot user before a single record imports, so ownership lands on the right person the first time rather than needing a clean-up pass afterwards.
Business Units
Pardot business units are what keep prospects and assets apart across brands or regions, and the HubSpot equivalent sits behind a higher Marketing Hub plan than you may currently hold.
HubSpot: HubSpot Business Units (Marketing Hub)
Where that plan is out of scope, approximate the separation with partitioning and a naming convention instead, and set expectations with whoever asked for true partitioning accordingly.
Integrations
Salesforce Connector Cutover
Retiring the Pardot-Salesforce connector and standing up the HubSpot-Salesforce integration cannot happen carelessly in the same window: the two must never be left writing to the same Salesforce records at once.
HubSpot: HubSpot-Salesforce Integration
Sequence this step explicitly and in writing, because of everything in the migration it is the one most capable of causing real data loss.
Third-party Integrations and Webhooks
Webinar platforms, chat tools, data enrichment services and any custom integration built against the Pardot API all need re-pointing at HubSpot, or replacing outright with a marketplace app that does the same job.
HubSpot: HubSpot App Marketplace integrations and Workflows
Build the inventory before cutover, not after: an integration that quietly stops creating contacts is usually only discovered weeks later, once someone asks why a source of leads has gone quiet.
The Sequence
Sync First, Then Migrate
Order is the content here. These steps form a dependency chain, and running them out of sequence is a documented way this kind of migration fails.
- 1
Audit the Pardot Instance in Full Before Anything Else Moves
forms, form handlers, landing pages, custom redirects, dynamic lists, scoring and grading rules, completion actions, page actions, Engagement Studio programs and the Salesforce connector settings governing all of it
- 2
Decide What Moves and What Gets Retired
a dormant program or an unused field is scope nobody has to pay to rebuild, so use the audit to cut it rather than carry it forward out of habit
- 3
Export Everything That Has No Path to HubSpot at All
prospect activity reports, campaign performance, custom redirect click counts and list membership snapshots, while Pardot is still live to pull them from
- 4
Map Fields Object by Object and Create Every HubSpot Contact Property First, Before a Single Record Is Allowed to Move
Map fields object by object and create every HubSpot contact property first, before a single record is allowed to move
- 5
Configure the HubSpot Foundations Before Anything Is Built on Top of Them
domains and DNS, the tracking code, subscription types, lifecycle stages, users, teams and roles
- 6
Plan the Salesforce Connector Cutover Explicitly and in Writing
name which system owns which field, the exact moment the Pardot connector pauses, and what the HubSpot inclusion list contains
- 7
Install the Account Engagement Data Sync App and Run Smart Transfer's Audit to See the Data as It Actually Stands and Prepare the Account for the Transfer
Install the Account Engagement Data Sync app and run Smart Transfer's audit to see the data as it actually stands and prepare the account for the transfer
- 8
Sync Prospects Across to Contacts, Then Run the One-time Post-sync Transfers for Email Templates and Lists Once That Base Sync Has Settled
Sync prospects across to contacts, then run the one-time post-sync transfers for email templates and lists once that base sync has settled
- 9
Rebuild the Scoring and Grading Model as the Two Separate Score Properties It Always Was Underneath
engagement and fit
- 10
Rebuild the Automation Layer
dynamic lists become active lists, automation rules split across lists and workflows, and completion actions become workflow triggers
- 11
Rebuild Engagement Studio Programs as Workflows, and Use Jump Steps to Carry Across Anyone Still Mid-flight Through a Program at the Moment of Cutover
Rebuild Engagement Studio programs as workflows, and use jump steps to carry across anyone still mid-flight through a program at the moment of cutover
- 12
Rebuild Forms, Landing Pages and the Preference Centre, Then Replace Every Embedded Pardot Form Still Live on the Site and Add the 301 Redirects Behind Them
Rebuild forms, landing pages and the preference centre, then replace every embedded Pardot form still live on the site and add the 301 redirects behind them
- 13
Run Both Systems in Parallel for Two to Four Weeks, and Reconcile Whatever Discrepancies Turn up With the Sales Team Directly, Since They Are the Ones Who Notice a Wrong Number or a Missing Record First
Run both systems in parallel for two to four weeks, and reconcile whatever discrepancies turn up with the sales team directly, since they are the ones who notice a wrong number or a missing record first
- 14
Cut Over Out of Hours
swap the forms, activate the workflows, deactivate the Pardot programs and automation rules, and QA every form and auto-response before calling it live
- 15
Monitor Intensively for the First 30 Days, and Keep Pardot Read-only for a Full 90
Monitor intensively for the first 30 days, and keep Pardot read-only for a full 90
Typically 4-16 weeks end to end, depending on how much of the source configuration is actually in use.
Effort Estimator
How Big Is This Migration?
A handful of questions, no sign-up required. The ranges come from the research above: every feature we mapped carries an effort figure, and this totals the ones that apply to your instance.
Estimated Effort
Answer a couple of questions and an hours range appears here.
Built from our research on 52 Pardot (Marketing Cloud Account Engagement) features. It is a range, not a quote.
A planning range, not a quote. It is delivery effort only, with no project management line. What moves it most in practice is data quality.
What Goes Wrong Most Often
The failures that show up again and again, in roughly the order they bite.
Email Templates and Lists DO Transfer Through Smart Transfer, Which Contradicts Most Published Migration Guides Outright, and Quoting a Full Manual Template Rebuild on the Strength of Those Guides Can Overstate a Quote by Tens of Hours
Email templates and lists DO transfer through Smart Transfer, which contradicts most published migration guides outright, and quoting a full manual template rebuild on the strength of those guides can overstate a quote by tens of hours
Prospect Activity History Has No Path Across at All, and Once Pardot Is Decommissioned It Exists Nowhere Else, So Treat the Export Step as the Only Chance to Keep It
Prospect activity history has no path across at all, and once Pardot is decommissioned it exists nowhere else, so treat the export step as the only chance to keep it
Leave the Pardot Connector Live While Standing up the HubSpot-Salesforce Connector and You Put Two Systems in a Write Race Against the Same Salesforce Records, With No Guarantee the Right One Wins
Leave the Pardot connector live while standing up the HubSpot-Salesforce connector and you put two systems in a write race against the same Salesforce records, with no guarantee the right one wins
An Embedded Pardot Form Fails Without a Sound
the page still renders, the form still appears exactly as before, and every submission after cutover simply vanishes
A Custom Redirect Sitting Inside an Already-sent Email or Printed Collateral Cannot Be Saved at Any Price, So Do Not Budget Time Trying
A custom redirect sitting inside an already-sent email or printed collateral cannot be saved at any price, so do not budget time trying
A Rebuilt Dynamic List Returning Zero Members Is Usually Not Broken by the Rebuild
it is almost always still referencing a field an earlier Pardot cleanup deprecated
The Prospect Object Maps to Salesforce Leads and Contacts Both, So Any Mental Model That Treats One Prospect as One Contact Breaks on the Very First Duplicate It Meets
The Prospect object maps to Salesforce Leads and Contacts both, so any mental model that treats one Prospect as one Contact breaks on the very first duplicate it meets
Custom Field Mappings Require Data Hub Starter, and It Is a Line Item Most First-pass Quotes Leave Out, So Check for It Specifically in Any Estimate You Are Given
Custom field mappings require Data Hub Starter, and it is a line item most first-pass quotes leave out, so check for it specifically in any estimate you are given
Business Units Need Marketing Hub Enterprise, Full Stop, and Promising Equivalent Separation on Professional Is a Commitment Nobody Can Actually Deliver
Business units need Marketing Hub Enterprise, full stop, and promising equivalent separation on Professional is a commitment nobody can actually deliver
Attribution Reporting Breaks at Cutover Regardless of How Carefully Everything Else Is Run, Because Pardot Never Stored the Intermediate Touches HubSpot's Model Needs to Work With
Attribution reporting breaks at cutover regardless of how carefully everything else is run, because Pardot never stored the intermediate touches HubSpot's model needs to work with
A HubSpot Email Template's Type, One-time or Automated, Is Locked in the Moment It Is Created and Cannot Be Changed Afterwards, So Get It Right the First Time
A HubSpot email template's type, one-time or automated, is locked in the moment it is created and cannot be changed afterwards, so get it right the first time
Timelines Overrun on Decision-making Far More Often Than on the Data Transfer Itself
the audit tends to surface years of undocumented automation that nobody in the organisation wants to put their name on owning, and reaching a decision on each one is what actually eats the calendar
Questions
Pardot (Marketing Cloud Account Engagement) To HubSpot, Answered
Yes. Data sync, two way, covering 3 objects. Smart transfer is supported. What it will not do is rebuild your configuration: that is the 22 items below.
Typically 4-16 weeks. Complexity is driven by automation and reporting depth, not by record count: the connector moves records, so a large database on its own will not extend the timeline.
Of 52 features we mapped, 16 (31%) carry across directly and 36 (69%) map partially, meaning something is lost or reshaped along the way. 0 have no HubSpot equivalent at any tier, worth raising before sign-off rather than after.
22 items have to be rebuilt by hand, and 13 documented limitations are not surfaced by the connector at all. Both lists are on this page, in full, for whoever is scoping the work.
On the source side, an active Salesforce Marketing Cloud Account Engagement plan is a prerequisite before anything else is discussed. On the HubSpot side, the free CRM covers default field mappings, Data Hub Starter and above is what custom field mappings need, and business units specifically require Marketing Hub Enterprise, a tier worth confirming early if the group runs more than one.
No. 2 items on this page are Pardot (Marketing Cloud Account Engagement)'s own code and products, which a HubSpot migration does not port and which carry no hours in any estimate you are given. They still need a decision before cutover, because you are the one giving something up.
Only in one direction. The sync is not bidirectional here, so running both systems means choosing a system of record up front and accepting drift in the other.
Ready to Get Started?
Plan Your Migration
Tell us which platform you are leaving, how much of it is custom, and when you need to be live in HubSpot. We will tell you what transfers directly, what needs rebuilding, and how long the move actually takes.