How to Import Salesforce and HubSpot CRM CSV Exports Into Excel

How to Import Salesforce and HubSpot CRM CSV Exports Into Excel Exporting contacts, leads, and deals out of a CRM sounds simple — but if you have ever […]

How to Import Salesforce and HubSpot CRM CSV Exports Into Excel

Exporting contacts, leads, and deals out of a CRM sounds simple — but if you have ever double-clicked a Salesforce or HubSpot CSV and opened it in Excel, you have probably seen mangled phone numbers, vanished leading zeros, 15-character record IDs that Excel silently rewrote, or names that turned into gibberish. There is a safe, repeatable route from a CRM export to a clean, outreach-ready spreadsheet, and it takes about ten minutes once you know the order of operations.

The pattern is always the same. First, export a proper CSV from the CRM (not a copy-paste). Then import it through Data > From Text/CSV, telling Excel to treat IDs, phones, and dates as text before it touches them. Finally run a short cleanup: split names, normalize phones, kill duplicates, tame multi-select fields. Do those three stages in order and your sheet survives everything an outreach campaign throws at it.

The Safe Way to Get a CRM Export Into Excel

How to export contacts from Salesforce

Open the report you want (or build one under Reports > New Report), make sure the columns cover your outreach needs — ID, names, Email, Phone, Account, Job Title, Created Date — and click Export in the report toolbar. Choose Details Only and Comma Delimited .csv.

For bigger jobs, Salesforce's Setup > Data > Data Export produces a zip of CSVs for whole objects like Contact and Lead. That route is better for full-database pulls, but it includes every field and every record, so expect a heavier cleanup pass afterward.

How to export contacts from HubSpot

In HubSpot, go to CRM > Contacts (or Lists if you built a smart list), apply your filters, and click Export. HubSpot lets you choose which properties to include — pick only the ones you need, because HubSpot objects carry a long tail of properties that will clutter your sheet if you export everything. Choose CSV format and download when HubSpot finishes the file. The same flow works for Deals and Companies.

3 Ways to Open a CRM CSV in Excel (And Which to Trust)

Method 1: Double-click the file (fast, risky)

Double-clicking the CSV opens it directly in Excel. It is the fastest path and it works fine for a quick peek at the data — checking that the export has the right row count and the columns you expected. But it is a preview method, not a working method. Excel auto-converts anything that looks numeric: phone numbers lose leading zeros, +44 becomes 44, and long Salesforce IDs can be rewritten. If the sheet will be used for outreach or mail merges, do not stop here.

Method 2: Excel's Data > From Text/CSV wizard (the safe route)

This is the method to use for any list you will actually work with. Open a blank workbook, go to Data > Get Data > From File > From Text/CSV, select the export, and click Transform Data to open Power Query. Set every identity-bearing column to Text before loading:

  • Salesforce: Contact/Lead/Account ID, Phone, MobilePhone, custom external-ID fields, Created Date.
  • HubSpot: Contact ID (hs_object_id), Phone Number, Mobile Phone Number, postal codes.

Verify the delimiter (comma) and the file encoding (UTF-8; see troubleshooting), then click Close & Load. Because Power Query records your steps, you can repeat the exact same import next month with one click.

Method 3: Convert online first, then open the XLSX

If you are on a machine without Excel's full import wizard handy, or you just want the CSV turned into a real .xlsx before you touch it, a free online converter does the job. The free CSV to Excel converter turns your CRM export into an XLSX you can open normally. Treat the result as a clean starting file; for mission-critical lists, still route the original CSV through Method 2's typed import afterward.

CRM Export Cheat Sheet: Where to Go and What to Expect

CRM Export path Typical column quirks First cleanup to run
Salesforce Reports > Export > Details Only > CSV, or Setup > Data > Data Export 15/18-char record IDs; multi-select picklists as semicolon-separated text; owner names as "Last, First" Set ID + phone columns to Text on import; split name fields
HubSpot CRM > Contacts (or Lists) > Export > choose properties > CSV Long property names; lifecycle-stage labels; many empty timestamp columns Delete unused property columns; normalize phones + labels
Salesforce (Data Export service) Setup > Data > Data Export > Export Now One CSV per object with every field, including system fields Filter columns to what outreach needs before anything else
HubSpot (Deals) CRM > Deals > board or list view > Export Deal stage labels; amount fields with currency formatting Standardize stage names; check amounts for text-vs-number issues

Cleaning Up the Sheet: From Raw Export to Outreach-Ready

Split combined name fields

Salesforce reports often give you a single Name column ("Acme — Jane Smith") or an Owner column in "Last, First" order. HubSpot is usually cleaner — unless someone built a custom property that concatenates them. Mail-merge and personalization need separate first/last name columns, so fix this early.

Two routes, both fast:

  • Text to Columns: select the column, go to Data > Text to Columns, choose Delimited, pick Space (or Comma for "Last, First"). Deterministic — best when the data is uniform. Full walkthrough: csv-text-to-columns-excel.
  • Flash Fill: type the desired first name next to row one, start typing row two, press Ctrl+E. Excel infers the pattern — better for messy data like "Dr. Jane Smith" where a blind delimiter split fails. See csv-to-excel-flash-fill-cleanup.

After splitting, filter each new column: middle names, titles (Dr., Mr.), and suffixes (Jr., III) are where splits go wrong.

Normalize phone formats

CRM phone data is famously inconsistent: +1 (555) 123-4567, 5551234567, 0015551234567, sometimes with extensions. For outreach tools and dialers, pick one canonical format — E.164 (+15551234567) is the safest because dialers and SMS gateways accept it universally.

A practical approach in Excel:

  1. Strip everything that isn't a digit or a leading +: use Find & Replace (Ctrl+H) to remove spaces, dashes, parentheses, and periods in a few passes.
  2. Standardize the country code: if your list is all one country and numbers lack the code, prepend it (e.g. +1 for 10-digit US numbers).
  3. Keep the result as Text — never let Excel store phones as numbers, or you are back to losing leading zeros.

There is a dedicated guide to keeping phone-like data intact at csv-to-excel-phone-numbers-zip.

Standardize countries, job titles, and picklist labels

Exports carry whatever users typed: "USA", "U.S.A.", "United States"; "VP Sales", "Vice President of Sales". For segmentation, collapse variants to one label each: build a two-column mapping table (Raw → Standard) on a separate sheet and use XLOOKUP to translate the whole column. Five minutes to build, reusable for every future export.

The same treatment applies to lifecycle stages, lead statuses, and deal stages — especially HubSpot exports, where stage labels come through as full text. Agree on the canonical list once (with whoever owns the CRM), map to it, and your filters and pivot tables start behaving.

Remove duplicates by email or record ID

Duplicates are the silent killer of outreach lists — the same person emailed twice, or a contact that exists in both a Salesforce and a HubSpot export you merged. The rule: dedupe on a stable key, not on names. Email address is the best key for contacts; the CRM record ID is the best key when merging exports from the same system.

In Excel: select your data, go to Data > Remove Duplicates, and check only the key column (uncheck the rest, or Excel will treat two rows as different because some other field differs — which is exactly how duplicates survive). Sort by Created Date descending first so the newest, most complete record is the one kept. See csv-to-excel-duplicates-remove for more strategies.

Handle multi-select picklist values

Salesforce multi-select picklists export as semicolon-separated text in a single cell: Email;Phone;Webinar. Fine for reading, useless for filtering. Two practical options: split into columns with Text to Columns on the semicolon delimiter (when the values are few and bounded), or split into rows via Power Query — select the column, go to Transform > Split Column > By Delimiter, choose semicolon, then Split into Rows. The Power Query route makes pivot-table counting and filtering work properly, and it replays automatically on next month's export because the step is recorded.

Map columns to your outreach template

Most outreach tools (mail-merge, sequencing platforms, SMS tools) expect specific column headers: first_name, email, phone, company. Your CRM export headers won't match, so rename headers to the target template's names and reorder columns to match before the final save. Our column-mapping guide covers the workflow. Save the final layout as a template workbook — next month you paste the cleaned export into it and you are done.

When It Breaks: CRM Import Troubleshooting

Salesforce IDs mangled into scientific notation. A 15- or 18-character ID like 0035g00000AbC12 contains enough digits that Excel, on a blind open, may store it as 3.05E+..., destroying it for matching. Fix: re-import via Data > From Text/CSV and set the ID column to Text in Power Query before loading. IDs can't be reconstructed afterward — re-export from the CRM if this already happened.

Phone numbers lost their leading zeros or the + sign. Same root cause: Excel saw digits and "helped". Fix: Text type on import. If the export is already damaged, check whether the CRM still has the original — phone damage is rarely recoverable from the sheet alone.

Names show as mojibake (é instead of é). The file is UTF-8 but Excel opened it as ANSI/Windows-1252, or vice versa. Fix: in the From Text/CSV dialog, set File Origin to 65001: Unicode (UTF-8) and preview the name columns before loading. If characters are still wrong, re-export and confirm UTF-8. More on diagnosing this at csv-encoding-errors-mojibake-excel.

Duplicate contacts appeared after merging two exports. Merging a Salesforce export with a HubSpot export (common during migrations) creates duplicates where the same person exists in both systems with different record IDs. Fix: dedupe on email address (lowercased and trimmed — TRIM and LOWER the column first, because Jane@Acme.com and jane@acme.com won't match otherwise), not on record ID. Keep the record from the system of record.

Created Date (or any date) imported as text. Salesforce exports timestamps like 2026-10-20T14:32:00.000+0000; Excel may leave these as text, which breaks sorting and date filters. Fix: in Power Query, set the column to Date/Time using the correct locale, or use DATEVALUE on a helper column and paste as values. Verify with a sort — if October sorts after September alphabetically, it is still text.

Empty-looking cells that aren't empty. Non-breaking spaces, zero-width spaces, and carriage returns inside address fields break VLOOKUPs, dedupe, and filters. Fix: use =CLEAN(TRIM(A2)) in a helper column and paste the results back as values.

Your 60-Second CRM Export Checklist

  1. ☐ Exported from the CRM (report/List), not copy-pasted — CSV with only the columns outreach needs.
  2. ☐ Imported via Data > From Text/CSV, not double-click — File Origin set to UTF-8.
  3. ☐ Record ID, phone, and postal-code columns set to Text in Power Query before loading.
  4. ☐ Names split into First/Last; titles and suffixes checked.
  5. ☐ Phones normalized to one format (E.164 recommended), stored as text.
  6. ☐ Countries, titles, stages mapped to canonical labels via XLOOKUP table.
  7. ☐ Duplicates removed on email (or record ID for same-system merges) — newest record kept.
  8. ☐ Multi-select picklists split into rows or columns as the outreach tool needs.
  9. ☐ Headers renamed to the outreach template; final save as .xlsx.
  10. ☐ Spot-check: filter each key column for blanks and oddballs before the list goes live.

Follow that order — typed import first, cleanup second, template mapping last — and every Salesforce or HubSpot export you pull will land in Excel intact, deduplicated, and ready for outreach.

CE
csvtoexcel.site team

We build free, private, browser-based file tools. Every guide is written and tested by our editors.