Operelio
SalesforceHubSpot

How to migrate Salesforce to HubSpot

13 of the 14 columns in a Salesforce export, mapped into 13 HubSpot fields under HubSpot's own names.

Free · 19 KB · Excel 365 or Google Sheets

Check your Salesforce export first

Built on Salesforce’s export columnsChecked against HubSpot’s import rulesUpdated October 13, 2026

One Salesforce row, through the templatecopied as it ischanged on the way
  • First Name to First NameWei
  • Last Name to Last NameChen
  • Email to Emaillowercasedwei.chen@meridian.example.com
  • Phone to Phone Number+1 503-555-0174
  • Company to Company NameMeridian
  • Title to Job TitleRevenue Operations Lead
  • Website to Website URLmeridian.example.com
  • Street to Street Address700 SW Fifth Avenue
  • City to CityPortland
  • State to State/RegionOR
  • Zip/Postal Code to Postal Code97204
  • Country to Country/RegionUnited States
  • Description to NotesRenewal due in March.
Not imported: Lead Source. The template leaves it out; map any to a custom field in Operelio.

Check your Salesforce export before you import it

Looks for the 13 columns this template reads, and what HubSpot would skip.

Drop your Salesforce CSV here

Runs in your browser. Nothing is uploaded, and results are counts only.

Salesforce to HubSpot in three steps

Step 1Export from Salesforce
  1. Build or open a Leads or Contacts report.
  2. From the report's dropdown, choose Export.
  3. Choose Details Only and pick .csv.
  4. Click Export and save the file.

You need the Export Reports permission. A report export takes up to 100,000 rows and 100 columns.

Salesforce: Export a report
Step 2Paste into the template
  1. Paste the export at A1 of Paste Salesforce export here.
  2. Start here checks all 13 columns were found.
  3. Save HubSpot Contacts import as a CSV.

Works in Excel for Microsoft 365 and Google Sheets. Excel 2019 and older, Apple Numbers and LibreOffice can't run the formulas this file uses.

Just the 13 headers as a CSV

Step 3Import into HubSpot
  1. On the Contacts page, click Add contacts in the top right and choose Import, or go to Data Management, then Data Integration.
  2. Click Import data, choose the advanced import for all objects, select Contacts and Notes and click Next.
  3. Upload your file, keep Create and update contacts as the import type, and click Next.
  4. Check the column mapping. Email is the unique identifier, and the Notes column goes to Note body. Click Next.
  5. Name the import, check the consent box and click Finish import.
HubSpot's importer, screen by screen

Operelio, with the same template

Fixes the capitals in names, formats phone numbers, removes duplicate and blank rows, which the Excel file leaves to you. On every plan. Email verification, a check against your HubSpot records and dropdowns, and the push, from Starter.

Use this template in Operelio

Questions

Where does Salesforce's export fill Email, which HubSpot requires?

Email comes from Salesforce's Email column, lowercased. The checker above counts the rows with Email blank.

Where does Lead Source land in HubSpot?

HubSpot doesn't have a single Lead Source property that mirrors Salesforce's. To keep it, create a custom contact property in HubSpot, such as Salesforce Lead Source. With HubSpot connected to Operelio (Starter and up), the property shows in the Map step, and you can map Lead Source to it there. Without a connection, turn off Remove unmapped columns in the Review step, and the downloaded file keeps Lead Source as its own column for you to map to the property in HubSpot's import.

Duplicates and undoing an import: HubSpot import questions.

Try this template free

Upload your Salesforce export and download a file HubSpot can import. No credit card needed. The push into HubSpot is from Starter.