How to Migrate from Salesforce to HubSpot (Step-by-Step Guide)

Quick Answer: This guide shows you how to migrate from Salesforce to HubSpot in 2–6 weeks, depending on data volume and automation complexity. The core steps: export Salesforce data → clean it → map fields → import into HubSpot → rebuild automations → train your team. The biggest risk isn’t the import itself — it’s dirty data. Fix duplicates and incomplete records before you migrate, not after. Cleaning post-import costs three times as long.

Why Companies Migrate from Salesforce to HubSpot

Cost is usually the first reason. Salesforce Enterprise runs $165/user/month billed annually — and that’s before add-ons like Pardot (now Marketing Cloud Account Engagement) at $1,250/month, or CPQ, which adds another $75/user/month. For a 10-person team, you’re looking at $19,800/year in Salesforce licenses alone before anyone configures anything.

Admin overhead is the second reason. Salesforce is a highly configurable platform — which means someone has to configure it. Most SMBs end up paying a Salesforce admin ($80,000–$120,000/year salary) or a consulting firm just to keep the system functional. In contrast, HubSpot is designed to be managed without dedicated technical staff.

Who Should Stay on Salesforce

To be fair: Salesforce is the right tool if your operation requires deep custom object modeling, complex territory management, or integrations with enterprise ERP systems. Specifically, if you’re running a 200-person sales org with custom approval chains, multi-currency deals, and Salesforce-native reporting, the migration cost and feature trade-offs likely don’t make sense. This guide is for SMBs — 10 to 100 employees — where Salesforce’s complexity has become a cost center rather than a competitive advantage.

Before You Migrate from Salesforce to HubSpot: What to Prepare

Audit Your Salesforce Data First

Before touching HubSpot, spend time inside Salesforce understanding what you actually have. Run a duplicate contact report — most Salesforce instances that haven’t been actively maintained have a 10–20% duplicate rate. Check for incomplete records: contacts missing email addresses, deals with no close date, accounts with no associated contacts.

Next, document your active workflows and Process Builder automations. List every custom field that currently stores business-critical data — these will need manual mapping. Finally, inventory your third-party integrations: billing tools, marketing platforms, support systems. Each one will need to be reconnected after migration, so knowing what’s live now saves surprises later.

Define Your HubSpot Object Mapping

Salesforce and HubSpot organize data differently. Notably, HubSpot has no native “Lead” object — all leads become Contacts. Before importing anything, create a field mapping document that covers every object you’re moving.

Salesforce Object HubSpot Equivalent Notes
Leads Contacts No Lead object in HubSpot — merge Lead + Contact data before import
Accounts Companies Direct mapping — import Companies before Contacts
Contacts Contacts Direct mapping — associate to Company via domain or ID
Opportunities Deals Pipeline stages may need remapping — HubSpot stages are per-pipeline
Cases Tickets Requires Service Hub — not available on Sales Hub only
Tasks / Events Tasks / Activities Direct mapping — historical tasks import via CSV
Campaigns Lists / Campaigns Partial — HubSpot Campaigns work differently; rebuild don’t import
Custom Objects Custom Objects Enterprise-only in HubSpot — plan carefully before migrating

Choose Your Migration Method

Three approaches exist, and the right one depends on your data volume and technical comfort level.

Option 1 — Native HubSpot CSV import (free). Export your Salesforce data as CSV files, clean them in Google Sheets, and import directly into HubSpot’s import tool. This works well for under 5,000 records and requires no budget. However, it’s manual and time-consuming, and historical activity (call logs, email threads) doesn’t carry over automatically.

Option 2 — HubSpot-Salesforce native integration. HubSpot offers a bidirectional Salesforce integration (available from Sales Hub Professional) that syncs both systems simultaneously. This approach lets you run both platforms in parallel during the transition, reducing cutover risk. It costs more — you’re paying for two platforms during the overlap period — but it’s the lowest-risk method for complex setups.

Option 3 — Third-party migration tool. Tools like MigrateMyCRM (formerly Trujay) automate the field mapping and record transfer process. Self-service plans start at around $299 as a one-time fee; guided migration with an account manager adds $875. For mid-size datasets (5,000–50,000 records), this is often the fastest option and substantially reduces manual error risk.

Step-by-Step: How to Migrate from Salesforce to HubSpot

Step 1: Export Your Data from Salesforce

In Salesforce, navigate to Setup → Data → Data Export. You can run a weekly or monthly automated export, or use the Data Loader for a one-time full export. Choose CSV format — HubSpot’s import tool requires it. Export each object separately: Contacts, Accounts, Opportunities, Cases, and Tasks.

Pay attention to what doesn’t export cleanly. File attachments (documents, contracts stored in Salesforce) don’t transfer via CSV — download these separately and store them in your document management system. Chatter posts and internal notes aren’t exportable in a format HubSpot can read directly; capture critical notes manually. Additionally, formula field results export as their calculated values, not as formulas — verify these are still accurate after export before importing.

Step 2: Clean Your Data Before Import

This step takes longer than the import itself, and skipping it creates problems that follow you for months. Open your exported CSVs in Google Sheets and start with these four checks.

First, run deduplication on contacts and companies. Look for records with matching email domains, similar names, or identical phone numbers. Dedupely (from $25/month) connects directly to Salesforce and HubSpot to identify duplicates before you move them. Second, standardize your formatting: phone numbers, country codes, date formats, and company names all need to match HubSpot’s expected format. Third, flag and remove contacts with no email address — HubSpot requires email as a unique identifier for contacts. Fourth, check that every deal has an associated contact and that every contact has an associated company. Orphaned records create messy data in HubSpot’s association model.

OpenRefine is a free, open-source tool for bulk data cleaning — particularly useful for normalizing inconsistent values across large datasets.

Step 3: Map Salesforce Fields to HubSpot

Open HubSpot and navigate to Settings → Properties. For every custom Salesforce field that stores business-critical data, create the equivalent HubSpot property before importing. Match the field type exactly: a Salesforce picklist should become a HubSpot dropdown select, not a text field.

Standard Salesforce fields like First Name, Last Name, Email, Phone, and Company map natively to HubSpot. Custom fields — industry classifications, lead scores, contract values, custom stage labels — require manual property creation. Build a field mapping spreadsheet with three columns: Salesforce field name, HubSpot property name, and field type. This document becomes your import checklist and prevents errors during the CSV import step.

Two fields that commonly cause problems: Lead Source (Salesforce values may not match HubSpot’s default options — customize the HubSpot property to match) and Lifecycle Stage (Salesforce uses different stage labels than HubSpot’s default Subscriber → Lead → MQL → SQL → Opportunity → Customer pipeline).

Step 4: Import Contacts and Companies

Import order matters. Always start with Companies, then Contacts, then Deals. If you import Contacts first, HubSpot can’t associate them with Companies that don’t yet exist.

In HubSpot, go to Contacts → Import → Start an Import → File from computer. Upload your cleaned Company CSV first. Map each column to the corresponding HubSpot property using the field mapping document you built in Step 3. Run a test import with 50 records before importing your full dataset — this surfaces mapping errors before they affect thousands of records.

After Companies are imported, repeat the process for Contacts — making sure the Company Name or Company Domain columns match what you imported. Then import Deals, associating each to the correct Contact and Company. Finally, import historical Tasks and Activities. Note that email thread history from Salesforce doesn’t import natively — only logged tasks and notes carry over via CSV.

Step 5: Rebuild Your Automations

Salesforce automations (Process Builder, Flow, Workflow Rules) don’t migrate to HubSpot — they must be rebuilt manually using HubSpot Workflows. This step is often the most time-consuming part of the entire process when you migrate from Salesforce to HubSpot.

Start by documenting every active Salesforce automation: what triggers it, what it does, and what data it touches. In HubSpot, navigate to Automation → Workflows to rebuild each one. Simple automations — “when a contact submits a form, send an email” — translate directly. Complex branching flows with multiple conditions and cross-object updates require more planning. Specifically, any automation that updated both Leads and Contacts in Salesforce needs to be reconsidered, since HubSpot’s single Contact object changes the logic.

Rebuild your highest-priority automations first: lead assignment rules, deal stage update triggers, and follow-up sequences. Lower-priority automations can wait until after cutover, provided you have manual processes to cover the gap temporarily.

Step 6: Reconnect Your Integrations

Every tool currently integrated with Salesforce needs to be reconnected to HubSpot after the migration. Work through this list systematically rather than assuming integrations will carry over.

Email (Gmail or Outlook): connect via HubSpot’s native email integration under Settings → Integrations → Email. Slack: install the HubSpot app from the Slack App Directory and configure deal notifications and task alerts. Zapier: rebuild any Zaps that referenced Salesforce objects, since HubSpot triggers and actions use different naming conventions. Billing tools (Stripe, QuickBooks, Xero): check HubSpot’s App Marketplace for native integrations before defaulting to Zapier — many billing tools have direct HubSpot connectors that are more reliable.

Step 7: Run a Parallel Period

Before cutting Salesforce off entirely, run both systems in parallel for 2–4 weeks. During this period, new records enter HubSpot as the primary system, while the Salesforce data serves as a historical reference. This parallel period catches problems you won’t discover in testing: associations that didn’t import correctly, automations that fire on wrong conditions, pipeline stages that don’t reflect your actual sales process.

Set specific cutover criteria before the parallel period starts. Define what “ready” looks like — for example: all active deals imported and verified, top-5 automations rebuilt and tested, all integrations reconnected and confirmed. When those criteria are met, set a firm cutover date and communicate it to your team at least two weeks in advance.

Step 8: Train Your Team

HubSpot Academy at academy.hubspot.com offers free certifications covering the CRM, Sales Hub, and Marketing Hub. The Sales Software certification is the most relevant for reps migrating from Salesforce — it covers deal management, sequences, and pipeline navigation in approximately 4 hours.

Four things your team needs to know before day one on HubSpot. First, there’s no Lead queue — all prospects are Contacts, and lifecycle stage determines where they are in the funnel. Second, activity logging works differently — HubSpot logs emails automatically via the inbox integration, so manual logging is less critical than in Salesforce. Third, pipeline stages are customizable per pipeline — reps should know which pipeline applies to their deals before they start. Fourth, tasks in HubSpot appear on the contact record and in the task queue — help reps find their task view on day one to avoid the “where did my tasks go?” confusion that slows adoption.

Common Migration Mistakes (And How to Avoid Them)

Migrating Dirty Data As-Is

The most expensive mistake is importing your Salesforce data without cleaning it first. Duplicate contacts create duplicate deals, which skew pipeline reporting and cause reps to work the same prospect twice. Incomplete records — contacts without emails, deals without close dates — break automation triggers. Cleaning data after import is harder than cleaning it before, because HubSpot’s merge tool requires manual review for each duplicate pair.

Skipping the Parallel Period

Teams that cut over to HubSpot immediately after import consistently report more post-migration problems than those that run parallel systems for 2–4 weeks. The parallel period surfaces issues you can’t find in a test environment. Specifically, it reveals automation edge cases, association errors on older records, and pipeline stage mismatches that only appear when real deals move through the system.

Forgetting to Migrate Historical Activity

Pipeline data and contact records aren’t the only things that matter. Call logs, meeting notes, and email history give your team context on every relationship. Historical tasks can be imported via CSV. However, Salesforce Chatter posts, email thread content, and file attachments don’t migrate natively — plan for this loss and communicate it to your team before cutover so they know to reference Salesforce for historical context during the transition period.

Underestimating Automation Rebuild Time

Most migration plans allocate one week for automation rebuilding. In practice, rebuilding complex Salesforce automations in HubSpot typically takes two to three times longer than expected, because the logic doesn’t translate directly. Build in buffer time and prioritize ruthlessly — not every automation needs to be live on day one.

Not Creating Custom Fields Before Import

If you import a CSV with a column that doesn’t match an existing HubSpot property, that data is lost. There’s no retroactive way to map an unmapped column after import. Create every custom property in HubSpot before you upload a single file — this step takes an hour and saves hours of reimport work.

How Long Does a Salesforce to HubSpot Migration Take?

Company Size Data Volume Estimated Time Recommended Method
Solo / Micro (1–5 people) < 1,000 records 1–3 days DIY — HubSpot CSV import
Small (10–25 people) 1,000–10,000 records 1–2 weeks DIY + MigrateMyCRM for records
Mid-size (25–100 people) 10,000–50,000 records 3–6 weeks MigrateMyCRM guided or HubSpot Partner
Large (100+ people) 50,000+ records 6–12 weeks HubSpot Solutions Partner — mandatory

These estimates assume you’re doing the data cleaning and automation rebuilding in parallel with the import, not sequentially. Furthermore, they assume a dedicated owner who isn’t managing the migration alongside a full-time workload. If migration is a 20%-of-time side project, double every estimate in the table.

Migrate from Salesforce to HubSpot: FAQ

Can I migrate from Salesforce to HubSpot for free?

Yes — using HubSpot’s native CSV import tool, the migration itself costs nothing. In practice, “free” means manual: you export from Salesforce, clean the data in Google Sheets, create properties in HubSpot, and import file by file. For datasets under 2,000 records with a straightforward field structure, this approach is entirely reasonable. Above that threshold, the time cost of manual import starts to exceed the cost of a migration tool. MigrateMyCRM starts at around $299 one-time for self-service migrations and automates most of the field mapping and transfer process.

Will I lose data when migrating from Salesforce to HubSpot?

Some data won’t transfer natively, and it’s important to know this before you start. Salesforce Chatter posts have no equivalent in HubSpot and don’t import. File attachments stored in Salesforce (contracts, proposals, documents) need to be downloaded separately and stored in a document management tool like Google Drive. Additionally, email thread content — the actual body of emails exchanged with contacts — doesn’t import via CSV. Only logged tasks and notes carry over. Historical activity data that doesn’t transfer should be preserved by keeping your Salesforce account accessible (read-only) for 6–12 months post-migration, giving your team a reference point for older conversations.

How much does it cost to migrate from Salesforce to HubSpot?

The range is wide: $0 for a DIY CSV migration, up to $15,000+ for a fully managed migration by a HubSpot Solutions Partner. The middle ground — migration tools like MigrateMyCRM — runs $299–$2,999 as a one-time fee depending on record volume and complexity. Professional HubSpot Partners typically charge $2,000–$8,000 for a standard SMB migration that includes data cleaning, field mapping, automation rebuilding, and team training. Beyond the migration itself, factor in HubSpot subscription costs — read our full HubSpot Pricing 2026: Full Breakdown (Every Plan, Hidden Costs) to avoid surprises at contract signing.

Should I hire someone to migrate from Salesforce to HubSpot?

The threshold is roughly 5,000 records and/or more than 10 active automations. Below that, a technically comfortable ops manager can handle the migration in-house using this guide and HubSpot’s documentation. Above that threshold — or if your Salesforce instance includes custom objects, complex approval chains, or integrations with ERP systems — hire a HubSpot Solutions Partner. The cost of a botched DIY migration (data loss, broken automations, team confusion) consistently exceeds the cost of hiring an expert. If you’re evaluating whether HubSpot is even the right move, first check our guide to 10 Best HubSpot Alternatives for Small Business 2026 — some companies realize during migration planning that a different tool fits better at their stage.

Visit HubSpot to start your free account and explore the import tool before committing to a migration plan.

Similar Posts