How to Migrate from Pipedrive to HubSpot
Pipedrive's Person/Organization/Deal model maps almost perfectly onto HubSpot. The friction is Pipedrive's Leads Inbox, its per-pipeline custom fields, and the fact that HubSpot prices marketing contacts by volume.
- Difficulty
- Moderate
- Typical duration
- 1–2 weeks
- Downtime
- None — import into HubSpot while Pipedrive stays live
- Native importer
- Yes — HubSpot's Pipedrive import tool
| Pipedrive | maps to | HubSpot CRM | What to watch |
|---|---|---|---|
| Organization | Company | Direct match. Pipedrive's linked-organization hierarchy maps to HubSpot parent/child companies. | |
| Person | Contact | HubSpot deduplicates on email. Pipedrive allows multiple emails per person — the primary becomes the HubSpot key, the rest land in secondary email properties. | |
| Deal | Deal | Create every pipeline and stage in HubSpot first. Pipedrive rotting-deal settings and stage probabilities have no equivalent and are set separately. | |
| Lead (Leads Inbox) | Contact with Lifecycle Stage = Lead | Pipedrive's Leads Inbox is a pre-deal staging area. HubSpot has no direct equivalent, so these arrive as contacts and need a list or lifecycle stage to stay separated. | |
| Activity | Task / Meeting / Call | Pipedrive activity types split across three HubSpot engagement types. Map each custom activity type explicitly or everything defaults to Task. | |
| Note | Note | Carries over, but only if the parent record imported successfully first. | |
| Product | Product / Line item | Pipedrive products become HubSpot products in the product library; deal-level line items rebuild from the deal's product attachments. | |
| Custom field | Custom property | Pipedrive lets custom fields exist per-pipeline. HubSpot properties are global on the object, so per-pipeline fields collapse into one shared property set. |
What transfers cleanly
- Organizations, Persons and Deals with their custom fields, once matching HubSpot properties exist.
- Deal values, currencies and expected close dates, keeping historical win-rate reporting intact.
- Notes and activity history attached to the correct records.
- Owner assignment, provided each Pipedrive user has a HubSpot seat with the same email address.
- Won and lost deals with their lost reasons, if you pre-create a matching HubSpot property.
What doesn't come across
- Pipedrive Workflow Automations. No export path. Every automation is a manual rebuild in HubSpot Workflows, which is a different trigger model.
- Per-pipeline custom fields. HubSpot properties are global on the Deal object. Two pipelines that used different field sets will end up sharing one long property list unless you split them with conditional logic.
- Insights reports and dashboards. These do not migrate. Rebuild only what your team actually uses.
- Email templates and sequences. Pipedrive templates need recreating in HubSpot; merge-field syntax differs, so they cannot be pasted across unedited.
- Rotting deal rules and stage probabilities. Configured per pipeline in Pipedrive, configured differently in HubSpot. Note your settings before you cancel.
Migration order that works
- Export a Pipedrive field inventory per object and decide which custom fields are actually still in use — most accounts carry dead ones.
- In HubSpot, create every pipeline, every deal stage and every custom property before importing a single record.
- Provision HubSpot seats matching Pipedrive user emails so deal ownership resolves rather than defaulting to the importer.
- Decide the Leads Inbox question: import as contacts flagged with a lifecycle stage, or leave them behind.
- Run HubSpot's Pipedrive import on a small subset first, then reconcile counts for Companies, Contacts and Deals.
- Set marketing-contact status deliberately after import — HubSpot bills on marketing contacts, and a bulk import defaults can be expensive.
- Rebuild automations and email templates, then keep Pipedrive read-only for a month as a reference.
Pipedrive to HubSpot is one of the gentler CRM migrations, because the two products agree on how a sales database should be shaped. Organizations, Persons and Deals map cleanly onto Companies, Contacts and Deals, and HubSpot maintains a dedicated Pipedrive importer that reads the API directly rather than making you assemble CSVs. Record associations survive, which is the single most common thing to lose in a manual export.
Pre-create the pipeline before you import
The one mistake that forces a re-import is starting the transfer before your HubSpot pipelines exist. Deals whose stage has no match land in the first stage of the default pipeline, and untangling several thousand of those afterwards is worse than starting over. Build every pipeline and every stage first, including the ones you only use occasionally.
Watch the marketing-contact meter
This is the cost trap specific to HubSpot. Pipedrive charges by seat only, so most accounts accumulate contacts freely — old event lists, bounced addresses, one-touch inbound. HubSpot's marketing pricing scales with marketing contacts, and a bulk import can silently push you into the next pricing band. Import everything as non-marketing contacts, then promote only the segments you genuinely email.
Per-pipeline fields need a decision
Pipedrive lets you attach custom deal fields to a specific pipeline, which teams running two distinct motions — new business and renewals, say — lean on heavily. HubSpot properties live on the Deal object globally. You either accept one long shared property list, or you use conditional property logic to show the right subset per pipeline. Decide before import, because the field mapping depends on it.
Keep Pipedrive for a month
Insights dashboards and workflow automations do not come across, and you will not remember every configuration detail until someone asks why a reminder stopped firing. A single read-only Pipedrive seat for thirty days answers those questions cheaply.

