ToolsTemplate Library · HubSpot · Import

HubSpot Contact Import template.

Contact import starter with the headers HubSpot auto-maps to default properties — rows show full, minimal, and international shapes.

Download the CSV Free · 11 columns · 3 pre-filled rows · updated July 2026

What's inside — the exact file

This is the complete template, not a sample. The rows are worked examples — replace them with your data (and delete them before any platform import).

First NameLast NameEmailPhone NumberCompany NameJob TitleLifecycle StageContact OwnerCityState/RegionCountry
JaneExamplejane@example.com+1 555 0100Example CorpOps Managerleadowner@yourcompany.comDallasTXUnited States
SamMinimalsam@example.com
LarsInternationallars@example.de+49 30 000000Beispiel GmbHGeschaftsfuhrermarketingqualifiedleadowner@yourcompany.comBerlinGermany

What this template is for

This is the starter file for bulk-loading contacts into HubSpot — new portal setup, list migrations, event uploads, or CRM consolidation. The headers match the names HubSpot auto-maps to its default contact properties, so the import wizard recognizes every column without manual mapping.

The three example rows model the shapes that matter: a fully-populated contact, a minimal row (email only plus name), and an international row — because state/region and phone formatting are where imports from global lists usually go sideways.

How to use it, step by step

  1. Clean before you import, not after. Deduplicate on email in your spreadsheet first, fix obvious casing (JANE SMITH → Jane Smith), and delete rows without email unless you genuinely need email-less records — they can't deduplicate automatically.
  2. Keep the header names exactly as written. These headers match HubSpot's default property labels, so the wizard auto-maps them. Rename them and you'll hand-map every column — or worse, someone maps 'Phone' to the wrong property at 5pm.
  3. Set Lifecycle Stage deliberately. Every imported contact gets a lifecycle stage — decide it per list, not per default. A purchased event list is not 'customer', and mislabeled stages poison reporting and automation forever after.
  4. Assign owners that exist. Contact Owner must match a HubSpot user's exact name or email. Rows with unknown owners import unowned, and unowned contacts are where follow-up goes to die.
  5. Import via the contacts page and map-check. In HubSpot, go to Contacts → Import. Even with auto-mapping, read the mapping screen line by line — it's thirty seconds that prevents the classic city-in-the-state-field import.
  6. Tag the batch and spot-check ten records. Use the import name (HubSpot records it on each contact) to build a list of this batch. Check ten records for stage, owner, and formatting before acting on the list.

What each column means

First NameGiven name, proper case — merges display everywhere from emails to deal cards.
Last NameFamily name, proper case.
EmailThe deduplication key. HubSpot matches on email; rows with a matching email update the existing contact.
Phone NumberInclude country code for international lists (+1, +44…).
Company NameFree-text company label on the contact — this alone doesn't create or associate a company record.
Job TitleAs it should read in personalization tokens.
Lifecycle StageMust match a HubSpot stage exactly (Lead, Marketing Qualified Lead, Customer…). Decide per list.
Contact OwnerA real HubSpot user's name or email — otherwise the contact imports unowned.
CityCity, proper case.
State/RegionSpelled out or standard abbreviation — pick one convention per file.
CountryFull country name; needed for anything geographic downstream.

Common mistakes to avoid

  • Importing everything as 'Lead' by reflex — lifecycle stages drive automation and reporting, and bulk-correcting stages later is genuinely painful because stages don't move backward without help.
  • Assuming Company Name associates the contact to a company record — association needs the company to exist and (usually) a domain match or a separate association import.
  • Uploading a list you don't have consent to email, then adding everyone to a nurture sequence — a compliance problem, not just a deliverability one.
  • Excel silently reformatting phone numbers into scientific notation or dropping leading zeros — format phone columns as text before saving the CSV.

Questions, answered

Will importing duplicates overwrite my data?

HubSpot deduplicates contacts on email: matching rows update existing records, filling empty properties and overwriting populated ones with your file's values where mapped. Property history preserves the old values, but review the mapping screen carefully before updating at scale.

Do imported contacts count against my marketing contacts limit?

Only if they're set as marketing contacts. As of July 2026, HubSpot bills marketing contacts by tier — import as non-marketing where the list isn't being emailed, and flip segments to marketing status when campaigns actually need them.

Can one file import contacts and companies together?

Yes — HubSpot's wizard supports multi-object imports from one file or paired files with association columns. For most teams, separate imports (companies first, then contacts) are easier to verify; our company import template pairs with this one.

This is a Market Disrupt worksheet, not a vendor file. Import-format templates follow each platform's documented layout as of July 2026 — platforms evolve, so validate against current documentation before a large import.

Rather have it done than downloaded?

Imports, cleanups, and portal architecture are the day job — and buying HubSpot through us waives the onboarding fee, because we deliver the onboarding ourselves.

Talk to a HubSpot partner