Skip to main content

Agency Migration Guide

Campaign Monitor to HubSpot Migration


What actually transfers, what quietly does not, and what has to be rebuilt by hand.

We mapped Campaign Monitor against HubSpot feature by feature: 29 features, 1 synced object, 5 documented traps and 24 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 Campaign Monitor 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 29 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
Campaign Monitor logoHubSpot logo

Campaign Monitor to HubSpot is a low to medium migration, typically 2-4 weeks. Of 29 features we mapped, 22 carry across as they are and 7 land with something lost. The work is not moving records: it is the 24 items nothing moves for you.

Migration Scorecard

Complexity: Low
Migration complexity
Low to medium
Typical timeline
2-4 weeks
Recommended method
CSV export/import with optional data sync for parallel operation during transition
Native sync
Data sync, two way
Smart transfer
Not supported
HubSpot subscription
Free HubSpot CRM or higher

Feature parity across 29 capabilities

2276%
724%
  • Maps directly: 22 (76%)
  • Maps partially: 7 (24%)
  • No equivalent: 0 (0%)

1

Objects synced natively

5

Limitations and traps

24

Manual rebuild items

3

Source editions covered

Where this comes from: Our own research corpus, verified 2026-07-31, behind every number on this page.

The One Object That Syncs Natively

What the connector moves for you, and which way each one flows.

Subscribers

Two wayTwo way

Becomes Contacts

Two-way subscriber/contact sync with default field mappings. Custom mappings available with Data Hub Starter+. Supports filtering by Campaign Monitor field (status, custom fields) or HubSpot list. Historical sync of existing records on initial setup.

Five Things the Sync Does Not Tell You

Each one is documented, and each one has ended a migration in a bad week.

Campaign Activity Does Not Sync

Email engagement data (opens, clicks, bounces, unsubscribes) from Campaign Monitor campaigns does not sync to HubSpot contact timelines. Campaign performance metrics are not transferred.

Workaround: Export Campaign Monitor campaign reports manually. Use a third-party tool like Salespanel or Zapier to push engagement events to HubSpot.

Custom Field Mappings Require Data Hub

Default field mappings are provided free, but creating custom field mappings or modifying defaults requires HubSpot Data Hub Starter or Professional.

Workaround: Use default mappings or upgrade to Data Hub.

Multi-value and Complex Properties Excluded

Properties with multiple values (multiple email addresses, phone numbers with labels) cannot be synced in custom mappings.

Workaround: Map only primary values for each field.

List Membership Does Not Sync

Campaign Monitor list assignments do not map to HubSpot lists. Contacts sync as flat records without list structure preservation.

Workaround: Recreate list segmentation in HubSpot using active lists based on contact properties.

Automation Journeys Do Not Sync

Campaign Monitor's automated journeys, triggers, and email sequences cannot be transferred to HubSpot. All automation logic must be manually rebuilt.

Workaround: Document all existing Campaign Monitor journeys and recreate them as HubSpot workflows.

The 24 Items That Get Rebuilt by Hand

This is the list that separates a quote that holds from one that does not.

Data And Objects

Subscriber Lists and Segments

Campaign Monitor lists hold subscribers, with segments layered on as saved rules.

HubSpot: Static lists and active lists

Lists import as static. Segments are rules and must be rebuilt as active lists or they stop updating.

Subscriber Custom Fields

Per-list custom fields holding subscriber attributes.

HubSpot: Contact properties

Fields are defined per list in Campaign Monitor and globally in HubSpot, so the same-named field on two lists has to be reconciled into one property first.

Suppression and Unsubscribe Lists

Unsubscribed, bounced and suppressed addresses across the account.

HubSpot: Unsubscribed contacts and the opt-out list

Import before the first send. Suppression is held per client account, so collect from each one.

Email Engagement History

Opens, clicks and bounces recorded against past campaigns.

HubSpot: No equivalent import path

Cannot be imported as engagement. Export for the record and expect reporting to restart at cutover.

Automation

Automated Journeys

Campaign Monitor's multi-step automated paths.

HubSpot: Workflows

Rebuilt step by step. Capture each journey visually before access ends, because the logic does not export in readable form.

Triggered Email Sequences

Sends fired by a subscriber action or field change.

HubSpot: Workflows

Check what each trigger watches. Campaign Monitor triggers on list join more often than teams expect.

RSS-to-email Campaigns

Sends generated automatically from a feed.

HubSpot: RSS email

The feed carries over but the template does not. Rebuild the layout and re-test the item loop before switching the schedule on.

Transactional Email Templates

Templates used for transactional sends, where the account used them.

HubSpot: Transactional email or a dedicated sending service

Transactional sending is a separate purchase decision on HubSpot. Confirm the route before scoping, or plan to keep a third-party service.

Welcome and Onboarding Journeys

The first-contact sequence after a signup.

HubSpot: Workflows

The triggering form is being rebuilt, so rebuild the enrolment rather than translating it.

Reporting

Campaign Performance Reports

Per-campaign open, click, bounce and unsubscribe reporting.

HubSpot: Marketing email analytics

Historical campaigns do not transfer. Export a final set before the account closes.

A/B Test Results

Split-test outcomes recorded against past campaigns.

HubSpot: No equivalent import path

Lost with the send history. Write down any standing conclusions before cutover.

Subscriber Growth and Engagement Trends

List growth and engagement-over-time reporting.

HubSpot: Contact and marketing email reporting

Trend lines restart at migration. Keep a snapshot if year-on-year comparison is expected.

Custom Analytics Dashboards

Saved dashboard views used for recurring reporting.

HubSpot: Dashboards and custom reports

Rebuild from the question each dashboard answers, since the available metrics differ.

Sales And Marketing Config

Email Templates

Branded campaign templates built in Campaign Monitor's editor.

HubSpot: Marketing email templates

HTML can be exported but arrives carrying the old editor's structure. Rebuilding from brand assets is usually faster than reformatting it.

Campaign Monitor Landing Pages

Hosted pages built in Campaign Monitor, where used.

HubSpot: Landing pages

Rebuilt page by page. Redirect any URL that is linked externally.

Signup Forms

Embedded and hosted subscribe forms.

HubSpot: Forms

Swap every website embed at cutover or signups keep landing in the old account.

Preference Centres

The hosted page where subscribers choose what they receive.

HubSpot: Subscription preferences page

Subscription types have to be defined in HubSpot first, and they should mirror the old choices or existing consent becomes ambiguous.

Lead Scoring

Engagement scoring used to rank subscribers.

HubSpot: Score properties

Built from scratch. The old weights are a starting point, not a specification.

Link Tracking and UTM Conventions

Tracking parameters appended to campaign links.

HubSpot: Tracking URLs and campaign tracking

Agree the convention before the first send. Changing it later splits the analytics history in two.

Users And Permissions

User Accounts and Access Levels

Logins and the permission level attached to each.

HubSpot: Users and permission sets

Created fresh. Audit the list first rather than recreating dormant accounts.

Client and Sub-account Structure

Campaign Monitor's per-client accounts, used by agencies to separate work.

HubSpot: Teams and permission sets

HubSpot has one database per portal, so separate clients cannot be separate accounts. If the client genuinely needs isolation, that is a portal decision and belongs in the conversation before the contract.

Integrations

Third-party App Connections

Commerce and CMS connectors joining Campaign Monitor to the stack.

HubSpot: App Marketplace integrations

Reconnected individually. Check field mapping on each rather than assuming parity by name.

Custom API Integrations

Bespoke code written against the Campaign Monitor API.

HubSpot: HubSpot APIs

Rewritten against a different object model. Scope against the code.

Webhook-based Triggers

Outbound webhooks fired by subscriber events.

HubSpot: Workflow webhook actions

The receiving endpoint expects the old payload shape, so both ends usually need work.

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 Campaign Monitor Account

    lists, journeys, templates, integrations, custom fields

  2. 2

    Export All Subscriber Lists as CSV With Custom Field Data

    Export all subscriber lists as CSV with custom field data

  3. 3

    Export Suppression List (unsubscribed, Bounced, Complained Contacts)

    Export suppression list (unsubscribed, bounced, complained contacts)

  4. 4

    Export Email Template HTML for Reference When Rebuilding

    Export email template HTML for reference when rebuilding

  5. 5

    Document All Automated Journeys With Triggers, Conditions, and Email Content

    Document all automated journeys with triggers, conditions, and email content

  6. 6

    Clean Data

    remove duplicates, validate emails, standardize formatting

  7. 7

    Import Suppression List Into HubSpot BEFORE Any Marketing Sends

    Import suppression list into HubSpot BEFORE any marketing sends

  8. 8

    Import Contacts With Field Mapping to HubSpot Contact Properties

    Import contacts with field mapping to HubSpot contact properties

  9. 9

    Recreate List Segments as HubSpot Active Lists

    Recreate list segments as HubSpot active lists

  10. 10

    Rebuild Email Templates in HubSpot's Email Editor

    Rebuild email templates in HubSpot's email editor

  11. 11

    Recreate Automated Journeys as HubSpot Workflows

    Recreate automated journeys as HubSpot workflows

  12. 12

    Rebuild Forms and Landing Pages in HubSpot

    Rebuild forms and landing pages in HubSpot

  13. 13

    Configure Email Authentication (SPF, DKIM, DMARC)

    Configure email authentication (SPF, DKIM, DMARC)

  14. 14

    Warm Sending Domain Over 4-6 Weeks Starting With Most Engaged Contacts

    Warm sending domain over 4-6 weeks starting with most engaged contacts

  15. 15

    Monitor Deliverability and Gradually Decommission Campaign Monitor

    Monitor deliverability and gradually decommission Campaign Monitor

Typically 2-4 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 29 Campaign Monitor 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.

Campaign Monitor Engagement Data Not Syncing, Leaving Gaps in Contact Intelligence

Campaign Monitor engagement data not syncing, leaving gaps in contact intelligence

Forgetting to Import Suppression Lists Before Sending From HubSpot

Forgetting to import suppression lists before sending from HubSpot

Complex Automated Journeys Requiring Significant Effort to Rebuild in HubSpot Workflows

Complex automated journeys requiring significant effort to rebuild in HubSpot workflows

Template Design Differences Between Campaign Monitor and HubSpot Email Builders

Template design differences between Campaign Monitor and HubSpot email builders

RSS Email Campaigns Working Differently in HubSpot Than Campaign Monitor

RSS email campaigns working differently in HubSpot than Campaign Monitor

Not Accounting for Campaign Monitor's Client/sub-account Structure in Multi-brand Setups

Not accounting for Campaign Monitor's client/sub-account structure in multi-brand setups

Questions

Campaign Monitor 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!