All posts

HubSpot Contact Import File: Required Columns, Phone Format, Extra Emails and Limits

··4 min read

A HubSpot contact import needs one column, Email, and works best with First name, Last name and a Phone number written as +country code and number. The file can be .csv, .xlsx or .xls with a single sheet and a header row. Verify the Email column before the import: a contact record triggers workflows, sequences and sends, and every bad address in the file is a bounce waiting to happen. The details below come from HubSpot's guide to setting up your import file, read on 9 November 2026.

Format your HubSpot file →

What the file has to look like

According to HubSpot's guide:

  • Contacts need an Email column. First name and Last name are optional but useful.
  • File types: .csv, .xlsx or .xls, with only one sheet.
  • Header row: the first row must be headers, and each header should match a HubSpot property. Columns can be in any order.
  • Columns: fewer than 1,000.
  • Encoding: use UTF-8 if the file has foreign-language characters, so names like Zoë and José survive.
  • Updates: to update existing records, you need a unique identifier such as Record ID or Email.

If you exported from another tool, headers like "E-mail address" or "Mobile" won't line up with HubSpot properties on their own. The mapping screen lets you match them by hand, but renaming them first saves clicks on every import.

Phone numbers

HubSpot asks for + followed by the country code and the number, for example +11234567890 for a US number. For an extension, add ext and the number, such as +11234567890 ext123. Numbers copied from a spreadsheet often lack the country code, which is the main reason phone cells fail to import cleanly. Our post on HubSpot phone number format goes into it, and the phone number formatter fixes a column on its own.

More than one email per contact

If a person has a work address and a personal one, put the first in Email and the rest in an Additional email addresses column, separated by semicolons. HubSpot's guide adds a catch: when you create new records, a new Email can't match an existing secondary email on another record. In practice, that means a contact you think is new can collide with a record that already holds that address as a secondary one. The formatter fills the extra column when one cell of your export holds several addresses.

Limits to know before a large file

HubSpot's guide gives these limits, which apply to a rolling 24-hour period:

Free tools Smart CRM, Starter, Professional, Enterprise
File size 20 MB 512 MB
Imports per day 50 500
Rows per day 500,000 10,000,000
Rows per file Not stated 1,048,576
Simultaneous imports 3 3

The guide also says imports beyond the simultaneous limit are queued. These numbers are HubSpot's and can change, so read the live page before planning around them. A list that needs a split will be easier to split before verification than after.

Why verify the list before you import

In HubSpot, an imported contact isn't inert. Depending on your setup:

  • Workflows enroll new contacts the moment they appear.
  • Marketing emails go to anyone who can be marketed to.
  • Sequences and calls are queued for the owner.
  • Your contact count goes up with every row.

If the list is full of old or mistyped addresses, the first send bounces, and a high bounce rate can get a HubSpot account into trouble. Our posts on the HubSpot bounce rate warning and HubSpot sending suspended show what that looks like. Verifying before the import is cheaper than cleaning up after: invalid addresses never become contacts.

Already imported? Clean your HubSpot contacts and re-import verified emails cover the other direction.

Sorting the results

  • Valid: import and market to.
  • Invalid: leave out of the file, or import as non-marketing if you need the record for other reasons.
  • Risky or unknown: import, but keep them out of your first campaign. The answer wasn't clear, often because the company domain accepts all mail, and a small slow send tells you more than a guess.

Verification can't judge consent. Import only people you are allowed to email, and bring their consent status with them if your setup records it.

A routine for each import

  1. Collect the export, with one row per person.
  2. Remove duplicates by email with the duplicate email remover.
  3. Verify at /verify.
  4. Format with the HubSpot formatter, so you have Email, First Name, Last Name, Phone Number and, where needed, Additional email addresses, with phones in the country-code form.
  5. Check the left-out rows. Rows with no valid email are counted and left out, since Email is how HubSpot identifies a new contact.
  6. Import from a file, upload it, and confirm each column maps to the property you expect.
  7. Save the clean file, and the date, so a later export can be compared.

If you split names yourself, the name splitter is quicker than formulas.

What the formatter does not do

It writes only five columns: Email, First Name, Last Name, Phone Number and Additional email addresses. Custom properties, lifecycle stages and owners are mapped in HubSpot's own screen. It doesn't check mailboxes either; verification is a separate step. And HubSpot's limits are its own, so a very large file still needs a size check against your plan.

Try it on your own list

Upload a sample at /verify. The first 100 checks are free with a Google sign-in, no card.

Pro, $39 a month: Unlimited email verification.* Never metered, never cut off. See pricing.

*Fair use: the first 100,000 checks a month at full speed, then slower, never cut off.

Common questions

What is the only required column for importing HubSpot contacts?

Email. HubSpot's guide says First name and Last name are optional, though useful.

What file types can I import into HubSpot?

The guide lists .csv, .xlsx and .xls, with only one sheet. The first row must be a header row, and each header should match a HubSpot property.

How do I import more than one email per contact?

Use an Additional email addresses column and separate the values in a cell with semicolons. HubSpot adds that a new Email can't match an existing secondary email on another record.

How should I format phone numbers for HubSpot?

As +, the country code and the number, for example +11234567890. To include an extension, add ext followed by the number.

What are HubSpot's import size limits?

Per HubSpot's guide: 20 MB per file and 50 imports per day on free tools; 512 MB, 500 imports per day and 1,048,576 rows per file on Smart CRM, Starter, Professional and Enterprise. Limits apply to a rolling 24 hours and may change, so read the guide.

Does HubSpot check that imported emails are real?

The import guide covers format and limits. It doesn't describe checking whether each mailbox exists, so verify the list before you import.

Does the formatter upload my file?

No. The HubSpot contact import file formatter works in your browser.

Check your list before you send

Real mailbox checks over SMTP, and nothing is sent to the address. Sign in with Google and your first 100 email checks are free, no card. Plans for bigger lists are on the pricing page.