Skip to main content

Agency Migration Guide

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 to send to a client.

Get The Guide And The Calculator

The full Pardot (Marketing Cloud Account Engagement) to HubSpot reference as a branded PDF you can send straight to a client, 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 guide as a PDF, the same guide unbranded in Markdown for your AI tool, and the full Excel effort calculator.

PDF documentPDFMarkdown documentMDExcel workbookXLS
Pardot (Marketing Cloud Account Engagement) logoHubSpot logo

Pardot (Marketing Cloud Account Engagement) to HubSpot is a high migration, typically 4-16 weeks. Of 52 features we mapped, 16 carry across as they are and 36 land with something lost. The work is not moving records: it is the 22 items nothing moves for you.

Migration Scorecard

Complexity: High
Migration complexity
High
Typical timeline
4-16 weeks
Recommended method
Smart transfer
Native sync
Data sync, two way
Smart transfer
Supported
HubSpot subscription
An active Salesforce Marketing Cloud Account Engagement plan is required on the source side. HubSpot Free CRM is enough for default field mappings; Data Hub Starter and above is required for custom field mappings. Business units require Marketing Hub Enterprise.

Feature parity across 52 capabilities

1631%
3669%
  • 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 wayTwo way

Becomes Contacts

Email address is the deduplication key and is effectively mandatory. This is the ONLY object the ongoing Data Sync connector moves. Pardot's Prospect is a separate marketing object that itself syncs to Salesforce Leads and Contacts, whereas HubSpot uses one unified Contact record inside the CRM. That structural difference is the single biggest source of migration surprises: a Pardot Prospect may correspond to a Salesforce Lead, a Salesforce Contact, both, or neither. Score and grade values migrate as static property values; the models that produced them do not.

Email templates

Into HubSpotInto HubSpot

Becomes Marketing email templates

Moved by Smart Transfer as a one-time post-sync transfer, NOT by the ongoing sync. This contradicts most published Pardot migration guides, which state flatly that email templates have no automated export path and must be rebuilt by hand. Verify against the current Smart Transfer supported-apps list before quoting rebuild hours for templates: this line item alone can swing a quote by tens of hours. Transferred templates still need rendering QA and merge-field remapping.

Lists

Into HubSpotInto HubSpot

Becomes Static lists

Smart Transfer moves list membership as a one-time transfer. Membership arrives as a point-in-time snapshot: Pardot dynamic lists do NOT arrive as HubSpot active lists, and their filter criteria are not translated. The rule logic behind every dynamic list has to be rebuilt manually against HubSpot properties.

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

Email opens, clicks, page views, form submissions, and Engagement Studio step completions stay locked in Pardot. The Data Sync connector moves prospect field values only. One HubSpot marketplace reviewer states plainly that the app 'doesn't move contact activity or campaign information'. This is the most commonly underestimated loss in a Pardot migration, because reporting continuity and any behaviour-based segmentation depend on it.

Workaround: Export every Pardot activity and summary report to CSV before decommissioning, and keep Pardot in read-only for at least 90 days after cutover. Where historical engagement drives segmentation, export the resulting audiences and load them into HubSpot as static lists so the segment survives even though the underlying activity does not.

Engagement Studio Programs Have No Export Mechanism

There is no way to export an Engagement Studio program in any machine-readable form. Every program must be read on screen, documented, and rebuilt as a HubSpot Workflow. The branching models differ: Engagement Studio is a step-based canvas with wait, trigger, action, and rule nodes, while HubSpot workflows use enrollment triggers plus if/then branches. This is where Pardot migration timelines most often overrun.

Workaround: Screenshot and document every active program before touching HubSpot. Rebuild only programs that are actually running and producing results; treat dormant programs as an opportunity to retire scope rather than recreate it. For contacts mid-flight at cutover, use workflow jump steps that check whether a given email was already received and enroll the contact at the right stage.

Pardot's Dual Score Plus Grade Model Has No Single HubSpot Equivalent

Pardot separates behavioural intent (a numeric score) from demographic fit (a letter grade A through F driven by a profile and scoring categories). HubSpot ships one HubSpot Score property. Migrating the model, not just the values, requires deliberate redesign.

Workaround: Rebuild as two separate custom score properties: an engagement score and a fit score. On Marketing Hub Professional and above, clone the HubSpot Score property to create the second scoring category. Use the migration as the moment to fix a bloated model rather than replicate it: if the current model produces far more MQLs than sales actually works, rebuilding the same criteria just moves the problem.

Form Handlers Have No Direct Analogue, Though External Form Capture Exists

Pardot form handlers let an externally hosted form post data into Pardot while the form markup stays owned by the website. HubSpot has no direct analogue. The closest options are a native HubSpot form, or the non-HubSpot form capture feature which requires the tracking code and does not offer the same explicit field mapping contract.

Workaround: Inventory every form handler and its posting source before cutover. Replace with native HubSpot forms where the markup can be changed, or use non-HubSpot form capture plus a workflow where it cannot. Budget for the fact that each replacement usually means touching a website template.

Embedded Pardot Forms and Landing Pages Die Instantly at Decommission

Pardot-hosted forms, landing pages, and iframe embeds stop collecting the moment the Pardot instance is switched off. Unlike a data sync gap, this failure is silent: the page still renders, the form still appears, and submissions simply go nowhere.

Workaround: Crawl the live website for every Pardot form iframe, form handler endpoint, and hosted landing page URL before cutover, not after. Replace and test each one on staging. Add 301 redirects from every Pardot landing page URL to its HubSpot replacement.

Salesforce Connector Conflicts Are the Highest-risk Part of the Migration

Pardot syncs to Salesforce through its own connector. HubSpot syncs to Salesforce through a different one with different field direction rules, different conflict resolution, and its own inclusion list. Standing up the HubSpot-Salesforce integration while the Pardot connector is still live puts two systems in a write race against the same Salesforce records. A default sync configuration can overwrite good data.

Workaround: Decide the order of operations explicitly: which system owns which field, and when the Pardot connector is paused. Configure the HubSpot inclusion list before the first sync rather than after. Treat selective sync as a separate scoped piece of work; HubSpot Support does not guide its implementation.

Campaign Attribution Models Are Structurally Incompatible

Pardot historically assigns each prospect a single connected campaign representing first touch. HubSpot supports multi-touch attribution with contacts associated to many campaigns and configurable attribution models. Historical Pardot campaign membership cannot be reshaped into HubSpot's multi-touch model after the fact, because the intermediate touch data was never stored.

Workaround: Accept a clean break on attribution reporting. Export Pardot campaign performance to CSV for the historical record, and start HubSpot attribution fresh from cutover. Communicate the reporting discontinuity to stakeholders before go-live, not when the first quarterly report looks wrong.

Automation Rules Split Across Two Different HubSpot Concepts

A Pardot automation rule is a persistent, repeatedly evaluated criteria-plus-action pair. In HubSpot that logic lands partly in active lists (the criteria) and partly in workflows (the action). Mapping a rule to the wrong one produces automations that appear to work but silently act on the wrong contacts.

Workaround: Classify every automation rule before rebuilding: criteria that define membership become active lists, criteria that trigger a one-time action become workflow enrollment triggers. Test enrollment on a small static list before enabling any workflow against the full database.

Dynamic List Criteria Are Not Translated, and Deprecated Fields Break Filters

Smart Transfer moves list membership as a snapshot, not the rules that produced it. When rules are rebuilt manually, filters that referenced fields deprecated during earlier Pardot cleanups fail quietly, producing lists that look valid but never populate.

Workaround: Audit field usage before rebuilding lists. Rebuild dynamic lists as HubSpot active lists and verify the membership count against the Pardot count for each one; a rebuilt list with zero or wildly different membership is the signal that a filter references a dead field.

Custom Field Mappings Require a Paid Data Hub Subscription

The free Data Sync connector maps default fields only. Any custom prospect field mapping requires Data Hub Starter or above. Field type compatibility is also constrained: many third-party field types map one way only into HubSpot text fields, and fields with multiple labelled values such as emails, phones, and addresses cannot be mapped to custom fields at all.

Workaround: Price Data Hub Starter into the migration from the outset for any account with meaningful custom fields, which is nearly all of them. Audit field types and dropdown values for exact matches before enabling sync, and note that HubSpot captures dropdown options at sync-creation time and will not pick up options added later without a resync.

Custom Redirects and Tracker Links Break on Decommission

Pardot custom redirects are tracked links used across emails, social posts, PDFs, and third-party properties. They resolve through Pardot infrastructure, so every one of them 404s when the instance is retired, including links embedded in assets nobody controls any more.

Workaround: Export the full custom redirect list with click counts. Rebuild high-traffic redirects as HubSpot tracking URLs or CTAs, and put permanent redirects in place for the rest. Accept that links inside already-sent emails and printed collateral cannot be saved and prioritise by click volume.

Business Units Require Marketing Hub Enterprise

Pardot business units partition prospects, assets, and users within one account, and are common in multi-brand or multi-region organisations. The HubSpot equivalent, Business Units, is a Marketing Hub Enterprise feature. On lower tiers the separation must be approximated with teams, partitioning, and property-based segmentation, which is weaker than true partitioning.

Workaround: Confirm the target HubSpot tier before promising equivalent separation. If Enterprise is out of scope, design a naming convention plus asset partitioning approach early, because retrofitting one across a populated portal is significantly more work.

Landing Pages, Layout Templates, and Hosted Files Must Be Rebuilt

Pardot landing pages are built on layout templates using Pardot's own HML merge syntax and stylesheet model. Nothing about that structure ports to HubSpot templates or drag-and-drop pages. Hosted files keep Pardot-domain URLs that die with the instance.

Workaround: Rebuild only pages with live traffic or active campaign links; use the migration to retire the rest. Re-upload hosted files to the HubSpot Files tool and redirect the old URLs. Custom-coded landing pages need developer involvement rather than the drag-and-drop builder.

Two Things a Migration Does Not Rebuild

These are Pardot (Marketing Cloud Account Engagement)'s own code and products. A HubSpot migration does not port them, so they carry no hours in any estimate. They still need a decision, because the client is giving something up.

Salesforce Connector

Highest-risk item in the migration. Sequence the cutover explicitly and configure the inclusion list before the first sync.

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

Every custom prospect field must exist as a HubSpot contact property, with a matching type, before any import or sync runs. Pardot record types and dropdown value sets must match exactly or the sync rejects the value.

Prospect Activity History

Opens, clicks, page views, and program step completions cannot be moved. Only the aggregate score and grade values survive as static property values.

Connected Campaign Structure

Pardot's single connected campaign per prospect must be re-conceived as HubSpot campaign associations, which are many-to-many and support multi-touch attribution.

Salesforce Field Sync Mapping

The HubSpot-Salesforce connector maps Salesforce fields into HubSpot automatically, but the reverse direction requires creating matching fields in Salesforce by hand for HubSpot-native data such as original source and enrichment properties.

Automation

Engagement Studio Programs

Every program must be documented on screen and rebuilt as a HubSpot Workflow. No export exists in any format. Branching logic differs enough that programs are redesigned rather than translated.

Automation Rules

Persistent criteria-plus-action rules must be split into HubSpot active lists for the criteria and workflows for the actions.

Completion Actions and Page Actions

Actions attached to form submissions, file downloads, custom redirects, and page views must be rebuilt as workflow actions triggered by the equivalent HubSpot event.

Segmentation Rules

One-time segmentation rules used to bulk-assign list membership or field values must be reproduced as list-based workflows or import operations.

Email Templates

Smart Transfer moves Pardot email templates as a one-time transfer, but transferred templates still need rendering QA, merge-field remapping to HubSpot personalisation tokens, and subscription type assignment.

Scoring and Grading Model

The numeric scoring rules and the grading profile must be rebuilt as two separate HubSpot score properties: engagement and fit.

Reporting

Pardot Reports and B2B Marketing Analytics

Lifecycle reports, funnel reports, campaign influence reports, and any B2B Marketing Analytics dashboards must be rebuilt from scratch against HubSpot's reporting model.

Lifecycle Stage Definitions

MQL and SQL definitions, sales acceptance rules, and lead status usage should be redesigned rather than copied, since Pardot and HubSpot model the funnel differently.

Sales And Marketing Config

Forms and Form Handlers

Pardot forms are rebuilt in the HubSpot form builder with progressive profiling. Form handlers have no direct analogue: the closest is the non-HubSpot forms tool, which captures externally hosted form posts via the tracking code but offers no explicit field-mapping contract and ignores hidden fields.

Landing Pages and Layout Templates

Pardot landing pages and their layout templates must be rebuilt using HubSpot templates or the drag-and-drop builder. HML merge syntax does not carry across.

Custom Redirects and Tracker Links

Tracked links resolving through Pardot infrastructure must be rebuilt as HubSpot tracking URLs or CTAs, with redirects for the rest.

Email Preference Centre and Subscription Types

Pardot email preference pages and opt-out handling must be rebuilt as HubSpot subscription types. Every HubSpot marketing email must belong to a subscription type.

Sending Domain, Tracker Domain, and DNS

Email sending domain authentication and the tracking domain must be reconfigured for HubSpot, including SPF, DKIM, and DMARC alignment.

Lead Assignment Rules

Assignment happening in Pardot must be rebuilt with HubSpot's rotate action; assignment happening in Salesforce must be rebuilt with granular workflows and Teams.

Users And Permissions

Users, Roles, and Permission Sets

Pardot user roles must be recreated as HubSpot roles and permission sets across Marketing, Sales, Service, and Reporting scopes.

Business Units

Pardot business units partition prospects and assets. The HubSpot equivalent requires Marketing Hub Enterprise.

Integrations

Salesforce Connector Cutover

The Pardot-Salesforce connector must be retired and the HubSpot-Salesforce integration stood up without both writing to the same records simultaneously.

Third-party Integrations and Webhooks

Webinar platforms, chat tools, data enrichment, and any custom Pardot API integrations must be re-pointed at HubSpot or replaced with marketplace apps.

The Sequence

Sync First, Then Migrate

Order is the content here. These are a dependency chain, and running them out of order is a documented way these migrations fail.

  1. 1

    Audit the Pardot Instance

    forms, form handlers, landing pages, custom redirects, dynamic lists, scoring and grading rules, completion actions, page actions, Engagement Studio programs, and Salesforce connector settings

  2. 2

    Decide What Moves and What Is Retired; Dormant Programs and Unused Fields Are Scope You Do Not Have to Pay to Rebuild

    Decide what moves and what is retired; dormant programs and unused fields are scope you do not have to pay to rebuild

  3. 3

    Export Everything That Cannot Migrate

    prospect activity reports, campaign performance, custom redirect click counts, and list membership snapshots

  4. 4

    Map Fields Object by Object and Create Every HubSpot Contact Property Before Any Data Moves

    Map fields object by object and create every HubSpot contact property before any data moves

  5. 5

    Configure HubSpot Foundations

    domains and DNS, tracking code, subscription types, lifecycle stages, users, teams, and roles

  6. 6

    Plan the Salesforce Connector Cutover Explicitly

    which system owns which field, when the Pardot connector pauses, and what the HubSpot inclusion list contains

  7. 7

    Install the Account Engagement Data Sync App and Run Smart Transfer to Audit Data and Prepare the Account

    Install the Account Engagement Data Sync app and run Smart Transfer to audit data and prepare the account

  8. 8

    Sync Prospects to Contacts, Then Run the One-time Post-sync Transfers for Email Templates and Lists

    Sync prospects to contacts, then run the one-time post-sync transfers for email templates and lists

  9. 9

    Rebuild the Scoring and Grading Model as Two Separate Score Properties

    Rebuild the scoring and grading model as two separate score properties

  10. 10

    Rebuild Automation

    dynamic lists as active lists, automation rules split across lists and workflows, completion actions as workflow triggers

  11. 11

    Rebuild Engagement Studio Programs as Workflows, Using Jump Steps to Handle Contacts Mid-flight at Cutover

    Rebuild Engagement Studio programs as workflows, using jump steps to handle contacts mid-flight at cutover

  12. 12

    Rebuild Forms, Landing Pages, and the Preference Centre; Replace Every Embedded Pardot Form on the Live Site and Add 301 Redirects

    Rebuild forms, landing pages, and the preference centre; replace every embedded Pardot form on the live site and add 301 redirects

  13. 13

    Run Both Systems in Parallel for Two to Four Weeks and Reconcile Discrepancies With the Sales Team, Who Notice Them First

    Run both systems in parallel for two to four weeks and reconcile discrepancies with the sales team, who notice them first

  14. 14

    Cut Over Out of Hours

    swap forms, activate workflows, deactivate Pardot programs and automation rules, and QA every form and auto-response

  15. 15

    Monitor Intensively for 30 Days and Keep Pardot Read-only for 90

    Monitor intensively for 30 days and keep Pardot read-only for 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 email required. The ranges come from the research above: every feature we mapped carries an effort figure, and this adds up the ones that apply to you.

Custom fields and properties across all records

Everything beyond the out-of-the-box fields, added up across contacts, companies, deals and anything custom.

Automations, workflows and rules

Anything that fires on its own: workflows, sequences, assignment and validation rules, approvals.

Custom reports and dashboards

Only the ones the business actually uses. Reports nobody opens do not need rebuilding.

Marketing assets to rebuild

Email templates, forms, landing pages, lists and segments taken together.

Third-party integrations wired into the current system

Anything connected by API, webhook or installed package that has to keep working afterwards.

Users to move across

Seats, plus whatever permission structure sits behind them.

Roughly how many contact records

This affects the sync approach and the reconciliation effort, not the per-record work. The connector moves records; people do not.

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 and no agency markup, so add your own. 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 via Smart Transfer, Contradicting Most Published Guides; Quoting a Full Manual Template Rebuild Can Overstate a Quote by Tens of Hours

Email templates and lists DO transfer via Smart Transfer, contradicting most published guides; quoting a full manual template rebuild can overstate a quote by tens of hours

Prospect Activity History Does Not Transfer and Exists Nowhere Else Once Pardot Is Decommissioned

Prospect activity history does not transfer and exists nowhere else once Pardot is decommissioned

Running the HubSpot-Salesforce Connector While the Pardot Connector Is Still Live Puts Two Systems in a Write Race Against the Same Salesforce Records

Running the HubSpot-Salesforce connector while the Pardot connector is still live puts two systems in a write race against the same Salesforce records

Embedded Pardot Forms Fail Silently

the page renders, the form appears, and submissions vanish

Custom Redirects Inside Already-sent Emails and Printed Collateral Cannot Be Saved at Any Price

Custom redirects inside already-sent emails and printed collateral cannot be saved at any price

Rebuilt Dynamic Lists That Return Zero Members Usually Reference a Field Deprecated in an Earlier Pardot Cleanup

Rebuilt dynamic lists that return zero members usually reference a field deprecated in an earlier Pardot cleanup

The Prospect Object Maps to Salesforce Leads AND Contacts, So a One-to-one Mental Model of Prospect Equals Contact Breaks on the First Duplicate

The Prospect object maps to Salesforce Leads AND Contacts, so a one-to-one mental model of Prospect equals Contact breaks on the first duplicate

Custom Field Mappings Require Data Hub Starter, Which Is a Line Item Most First-pass Quotes Omit

Custom field mappings require Data Hub Starter, which is a line item most first-pass quotes omit

Business Units Need Marketing Hub Enterprise; Promising Equivalent Separation on Professional Creates a Commitment That Cannot Be Met

Business units need Marketing Hub Enterprise; promising equivalent separation on Professional creates a commitment that cannot be met

Attribution Reporting Breaks at Cutover No Matter How Carefully the Migration Is Run, Because Pardot Never Stored the Intermediate Touches HubSpot Needs

Attribution reporting breaks at cutover no matter how carefully the migration is run, because Pardot never stored the intermediate touches HubSpot needs

Email Template Type in HubSpot, One-time Versus Automated, Cannot Be Changed After Creation

Email template type in HubSpot, one-time versus automated, cannot be changed after creation

Timelines Overrun on Decision-making, Not on Data Transfer

the audit surfaces years of undocumented automation nobody wants to own

Questions

Pardot (Marketing Cloud Account Engagement) To HubSpot, Answered

Ready to get started?

Let's do something great together.

Augment your agency's marketing team's bench with our end-to-end inbound and digital solutions and find out why we're "The HubSpot Agency for HubSpot Agencies."

Fill out this form, and someone from our Solutions team will be in touch with you soon!