Set up your import files
Last updated: November 16, 2022
|All products and plans|
Whether HubSpot is your first CRM or you’re moving from another system, importing helps you create records and update your database. Import files are spreadsheets of data used to organize your business’ relationships and processes. Before you start importing, review the relevant HubSpot terms and requirements for your import files.
CRM Object: a type of a relationship or process that your business has, such as contacts, companies, deals, and tickets. When importing, an object is the type of dataset you are importing into HubSpot.
Record: an individual instance of an object (e.g., “Tom Smith” is a contact record). In a single object import file, each row of your file represents one object record. If you are importing multiple objects in one file, each row will represent records that are associated with each other.
- Activity: an engagement that can be associated with records, such as an email sent to a contact, or a note logged on a ticket record. Activities include calls, emails, meetings, notes, and tasks. You can create new activities via import, but cannot update existing activities. Calls and tasks can be imported on their own, but emails, meetings, and notes must be imported and associated with a CRM object.
Property: a field created to store information about your records and activities. In an import, properties will match up with your file’s column headers.
In this example, the object being imported is contacts. Each row represents a contact record, and each column of information represents a contact property (First Name, Last Name, Email Address).
- Unique identifier: a property value that HubSpot uses to recognize each record as one of a kind. In an import, you need a unique identifier to associate two different records (e.g., import “Tom Smith” and associate him with his company “Smith Inc.”), or to avoid creating duplicate records (e.g., two records for “Tom Smith”). The unique identifiers used when importing into HubSpot are:
- Email: the email address of a contact. This is required when importing contacts to avoid duplicates or to associate contacts with another object. If you don’t have contact email addresses, use the Record ID to update and associate existing contact records.
- Company domain name: the website domain of a company (e.g., example.com). This is required when importing companies to avoid duplicates or to associate companies with another object. If you don’t have company domain names, use the Record ID to update and associate existing company records.
- Record ID: a unique property value given to each record by HubSpot. If you export existing records from HubSpot, each record will have a Record ID. This is a required column when importing and associating existing deals or tickets with another object type, but can also be used as the unique identifier for contacts and companies if you do not have emails or company domain names.
- Association label (Professional and Enterprise only): a value that specifies the relationship between records. Once you've created association labels, you can import them with your records.
Map columns: a step in the import process, when you will be prompted to match the column headers in your file to HubSpot properties.
As an example, you want to import and associate contacts and companies in one file. The objects being imported and associated are contacts and companies. Each row represents a contact record and its associated company record. Each column header represents properties that will be mapped during import. The file shown below includes contact properties (First name, Last name, Email address, Phone number, Favorite food) and company properties (Name, Company domain name). There is also a unique identifier for each object that will link the two unique records in HubSpot (Email address for contacts and Company domain name for companies). During the import process, you will map columns to HubSpot properties (First Name column to the First Name HubSpot property).
Mapping columns to properties
File requirementsAll files being imported into HubSpot must:
- Be a .csv, .xlsx, or .xls file.
- Have only one sheet.
- Contain fewer than 1,048,576 rows and 1,000 columns.
- Be smaller than 512 MB.
- Include a header row in which each column header corresponds to a property in HubSpot. The column headers can be organized in any order without affecting the import. You can confirm if a default property already exists to match your header or create a custom property prior to importing. Learn more about HubSpot's default properties for contacts, companies, deals, and tickets.
- Be UTF-8 encoded if foreign language characters are included.
- Contain cells in Number format if you're importing date-time properties in an Excel file.
- Only contain currency data formatted for USD using decimals (e.g. 123.45).
- Depending on the objects or activities you're importing, your file must include the following columns:
- Contacts: at least one of First name, Last name, Email, or Record ID.
- Companies: at least one of Name, Company Domain Name, or Record ID.
- Deals: Deal name or Record ID, and if you're creating new deals, Pipeline, and Deal stage.
- Tickets: Ticket name or Record ID, and if you're creating new tickets, Pipeline, and Ticket status.
- Products: Name or Record ID, and Unit price.
- Line items: Name, Quantity, Price, and the associated deals' Record ID or Deal name. Include the product's Product ID if you're also associating the line item with a product, which will be mapped as a line item property during the import.
Please note: you can import to create new line items, but cannot update existing line items via import. When importing line items associated with deals, the import will update the associated deal amount. If you want to update existing line items or update the associated deal amount, you can manually edit the line items or associate the line items with a deal in HubSpot.
- Calls: Call notes. Learn more about the additional properties you can import for calls.
- Emails: Email body and Email direction. Learn more about the additional properties you can import for emails.
- Meetings: Meeting description. Learn more about the additional properties you can import for meetings.
- Notes: Note body. Learn more about the additional properties you can import for notes.
- Tasks: Task title and Due date. Learn more about the additional properties you can import for tasks.
- The import tool ignores blank cells in a spreadsheet, so when importing new property data, you can leave cells blank for records without a value for the property. However, if an existing record already has a value for the property within HubSpot, blank cells will not clear the existing property value. To clear existing property values in bulk, you can manually edit the values or use the Clear property value workflow action.
- To update existing records, associate records, and avoid duplicate records, your files must include a unique identifier property for each object. For all objects, you can export existing records and use the Record ID as a unique identifier. For contacts, you can also use Email. For companies, you can also use Company domain name.
- If you're importing multiple objects and are including Record IDs, it is recommended to differentiate the file column headers to match the ID with the correct object (e.g., one column called Record ID - Contacts and another called Record ID - Companies).
- You can use a secondary email as the unique identifier for existing contacts who have a secondary email address listed in HubSpot. If you use a secondary email, and do not include the Record ID column in your file, the secondary email will not replace the primary email. However, if you include both the secondary email and Record ID as columns in your file, the secondary email will replace the primary email.
- For the contact properties Phone number and Mobile phone number, to import and automatically format the phone number based on country code, format as +[country code][number]. If there is an extension, add ext[number]. For example, a phone number with a United States country code would look like +11234567890 ext123.
- For properties containing a price, you must use one of HubSpot's accepted currencies. The list of accepted currencies and their currency codes can be found in the Currency tab of your account default settings.
- For properties containing a date, your date values must be formatted as one of:
- mm/dd/yyyy (e.g., 10/28/2020)
- dd/mm/yyyy (e.g., 28/10/2020) or
- yyyy-mm-dd (e.g., 2020-10-28).
Please note: if you're importing a default HubSpot date property (e.g., Close date), your values must be formatted as a UNIX timestamp in milliseconds. The date-time property cells must be in Number format if importing an Excel file. Learn more about how to format timestamp values and how to convert a date into UNIX format.
- To assign an owner to your records or activities during the import, include a [Object] owner header and add the name or email address of the user to each row in that column. Users who are assigned a record through import will not receive a notification that they were assigned a new record.
- Depending on the property field type, there are specific formatting requirements:
- If you've set validation rules for custom number or text properties, your imported values must follow the rules or they will not be imported.
- When importing products (Professional and Enterprise only):
- If you want to import a Term property value, format the value in the Term column as PXM, where X is the number of months (e.g., P6M, for a term of 6 months) or PXY, where X is the number of years (e.g., P1Y, for a term of 1 year).
- If you want to import a Billing frequency property value, use monthly, annually, or quarterly if the product has a recurring price type. Leave the cell blank if the product has a one-time price.
- To import and associate multiple objects in one file, include information about associated records and/or activities in the same row. In two files, use a common column to connect the records in each file. You can refer to the example files for more help importing and associating records.
- Emails, meetings, and notes cannot be imported on their own. They must be imported and associated with records.
- To associate one record with multiple activities or records of another object, include the record's unique identifier in multiple rows for each record you want to associate. For example, Luke Danes is a manager at Luke's Diner, but a contractor at The Dragonfly Inn. To associate him with both companies, you'd need to include two rows for Luke Danes with the columns Email (or Record ID), and Company domain name (or Record ID) for each company.
Please note: if you don't include unique identifiers (e.g., Email, Company domain name, Record ID), the import will create duplicate records instead of associating each to the same record. Learn more about how to import and associate multiple objects.
- To import association labels (Professional and Enterprise only), include an Association label column. You must create the association labels in HubSpot prior to importing.
- To set multiple labels to describe the relationship between two records, you can include multiple association label values in one cell, separated by a semicolon (e.g., Manager; Billing contact).
- If you're importing association labels in a multiple file import, you need to include the Association label column and a unique identifier for the object you're associating in the same file.
- To create child-parent company associations via import, include a Parent company column in your import file with the parent companies' Record ID values. Learn more about importing child companies.
Sample import files
The following files include the required column headers for each object type, as well as possible additional headers. You can add your own column headers to update or create any additional properties that are important to maintain your organization’s HubSpot database.
- Contacts sample spreadsheet: XLSX or CSV
- Companies sample spreadsheet: XLSX or CSV
- Deals sample spreadsheet: XLSX or CSV
- Tickets sample spreadsheet: XLSX or CSV
- Products sample spreadsheet: XLSX or CSV
Once your file is ready, learn how to import one object into HubSpot.
Please note: products can only be imported in a single object import. You can associate an existing product to a line item, or manually associate a product to a deal or quote.
Multiple objects with associations
You can import and associate objects either together in one file or in two separate files, where each file represents one object.
Import multiple objects in one file
To import and associate multiple objects in one file, include the records you want to associate within the same row of your file. These sample files represent common use cases, but you can mix and match objects by replacing the column headers with the properties of another object.
- Contacts and companies sample spreadsheet: XLSX or CSV.
- Contacts and companies with association labels sample spreadsheet: XLXS or CSV.
- Contacts and tickets sample spreadsheet: XLSX or CSV.
- Companies and deals sample spreadsheet: XLSX or CSV.
- Companies and notes sample spreadsheet: XLSX or CSV.
- Companies, deals, and notes sample spreadsheet: XLSX or CSV.
- Deals and new line items sample spreadsheet (with associated products) : XLSX or CSV. When importing in one file, you can only import one line item per deal.
- Calls and contacts sample spreadsheet: CSV.
- Notes and tickets sample spreadsheet: CSV.
- Tasks and existing deals sample spreadsheet: CSV.
Import multiple objects in two files
When importing and associating in two files, each file represents an object. To identify which records should be associated across the files, include a common column in both. One of your files should have a unique value for each row in this column. In the other file, use those values to indicate which record each row should be associated with.
For example, a common use case is to import and associate contacts and companies. In the following sample files, Company Name is the common column:
In the company file, there is a unique value for each row in the Company name column. In each row of the contacts file, the values in the Company name column match the company that the contact will be associated with. You can use these files when importing contacts and companies, or mix and match other objects, as long as you include a common column.
- Deals and companies with association labels in two files: in these sample files, Company name is the unique key for the Company object.
- Deals and new line items in two files: in these sample files, Deal name is the unique key for the Deal object. When importing in two files, you can import multiple line items per deal.
- Calls and contacts in two files: in these files, Email is the common column and unique key for contacts.
Thank you for your feedback, it means a lot to us.
Create and edit properties
Properties are fields that store information on HubSpot records. For example, you can use the City company...Knowledge Base
Review and troubleshoot import errors
When importing records or activities into HubSpot, you may encounter errors. Below, learn how to resolve...Knowledge Base
Deduplicate records in HubSpot
HubSpot automatically deduplicates contacts using email addresses, and companies using domain names. Record...Knowledge Base