Table of Contents
Are you new to HubSpot or attempting to consolidate your tech stack in the new year? Importing can be a great way to control what data gets inserted into HubSpot. This guide will cover:
- Planning out the order of operations
- Things to consider when formatting your CSV files
- QA’ing your import
- What to do with your data following an import
Managing an import, you may have your hands full coordinating former and new data sets. Onboarding specialists can help you oversee a process and make sure it fits your business requirements and goals.
Confirm That Importing Is The Best Approach
Before you start exporting and working with files, it's important to weigh your options for bringing data into HubSpot. Importing is a more manual approach, where an ongoing data sync or integration may be a better fit. Determine which route is better for your use case by asking yourself:
- Will this import need to happen periodically?
- Does my data source have an API endpoint?
- Does my data need to be into the platform nearly instantaneously to support business requirements (for example - when hot leads are involved)?
If you answered yes, you should look for a data sync or integration partner as an alternative. The hours spent on manual importing can really hinder your business growth. We recommend exploring the HubSpot marketplace, exploring our custom capabilities, or checking out our product brand SyncSmart.io.
Planning Your Import
If you’ve decided an import is right for you, let’s dig in. Here are some things to consider right off the bat.
- Your first course of action is to understand which object(s) you are importing data to. Contact, Company, Deal, Ticket, Custom Objects, and Products are the standard objects in HubSpot.
- Your second course of action is to understand if these records (Jane Doe, a contact) might already exist in HubSpot or if all of these records are net new. Finally, determine if any of these records need to relate to one another (Jane Doe and her Company, Jane Doe and her deal).
Once you’ve got your list, it's time to plan out the correct order of these imports. For this following example, the import plan assumes several objects with relationships and pre-existing records.
Sample Plan:
- Company records, matching against any existing records based on company domain (website URL)
- Contact records, matching against any existing records using email address
- Deal records
- Company and contact relationship import(s)
- Deal and contact relationship import(s)
- Deal and company relationship import(s)
In this example, we’re keeping single imports together to troubleshoot errors after each import effectively. You also benefit from having fewer objects to sort through when mapping larger file sets. You may attempt an approach that combines files, which is perfectly fine as well.
Cleaning and scoping your data
Before preparing files, you'll want to consider cleaning your data at its source where possible. This can streamline your efforts when exporting and importing data. Common cleansing exercises include:
- Check for valid and active email addresses — if your source system shows hard bounce records, review if you truly want that data to exist in the new system. If you don’t have this data, consider using kickbox.com or zoominfo.com to identify invalid emails.
- Review unengaged, unsubscribed contacts and companies — review if you want these to exist in the new system.
- Review for bad data such as placeholder values and duplicates.
- Review dropdown properties that have extra values.
- Consider data formatting consistency for phone numbers, dates, and addresses to ensure proper standardization.
Preparing HubSpot for your import
A smooth import implementation means HubSpot is ready to accept your data. This means, doing some prep work inside HubSpot to get the tools ready. Common tasks you'll want to complete prior to importing:
- Add HubSpot users who need to be made contact, company, deal, or ticket owners after import
- Create missing custom properties on your objects, including dropdown and multi-select properties based on your source data
- Customize default properties as needed, including lifecycle stage and lead status options
- Create custom properties to hold data for properties that HubSpot identifies as read-only in the system (Opt-out status for contacts is a common one)
- Create association labels and business units as needed
- Create deal and ticket pipelines with all appropriate stages and statuses
- Create any additional currencies you may need
- Set up data quality automation rules to standardize imported data
- Create custom objects if you're importing specialized data that doesn't fit standard objects
- Set up property groups to organize custom properties efficiently
Preparing single object imports
For single object imports, it will be important to review the latest documentation on required properties per object. The import wizard will also give you this feedback. For contacts, you'll want to consider the following additions to your exported file:
- Email address (this is critical for de-duplicating records in the system)
- Lifecycle stage
- Lead status
- Opt out status (see note above, you’ll want to map to a custom property)
- Contact owner (as an email address)
- Business unit (if using the business units add-on)
- Create date (format as “short date” using Excel’s date formatting)
- Last activity date (format as “short date” using Excel’s date formatting)
- Phone number (consider using international format with country code)
- Any other critical properties for your segmentation needs
- If you have a unique ID from a former system, this can be helpful for auditing later, and you may want to consider mapping to a custom property as well
For companies:
- Company name
- Company website domain
- Company owner (as an email address)
- Create date (format as “short date” using Excel’s date formatting)
- Last activity date (format as “short date” using Excel’s date formatting)
- Industry (using standardized values that match HubSpot's options)
- Company size
- Annual revenue
- Any other critical properties for your segmentation needs
- If you have a unique ID from a former system, this can be helpful for auditing later, and you may want to consider mapping to a custom property as well
For deals:
- Deal name
- Amount
- Currency
- Deal owner (as an email address)
- Create date (format as “short date” using Excel’s date formatting)
- Last activity date (format as “short date” using Excel’s date formatting)
- Close date (format as “short date” using Excel’s date formatting)
- Deal pipeline
- Deal stage
- Deal priority
- Any other critical properties for your segmentation needs
- If you have a unique ID from a former system, this can be helpful for auditing later, and you may want to consider mapping to a custom property as well
For tickets:
- Ticket name
- Ticket owner (as an email address)
- Create date (format as “short date” using Excel’s date formatting)
- Last activity date (format as “short date” using Excel’s date formatting)
- Close date (format as “short date” using Excel’s date formatting)
- Ticket pipeline
- Ticket stage
- Ticket priority
- SLA status
- Any other critical properties for your segmentation needs
- If you have a unique ID from a former system, this can be helpful for auditing later, and you may want to consider mapping to a custom property as well
For products:
- Product name
- Product code/SKU
- Description
- Price
For custom objects:
- Required identifier properties
- Category fields
- Related standard object identifiers
For single objects, CSV files with UTF-8 encoding will ensure international characters are retained on import. Give your imports meaningful names like "Dec 2022 Christmas Party Attendees". The import name can be used to look up records and also display them at the record level.
Preparing association files
After following a single object import approach, you'll likely want to associate these objects to each other. Keep in mind there are settings to allow for automatic contact and company associations using the company email domain.
Also, be aware that you can create associations by taking a different approach to imports, which may include one file with multiple objects per row or multiple files with a shared column.
This is where having unique identifiers can come in handy. If you export all the new records in HubSpot per object, you now have a database of old IDs and new IDs to match against using a Vlookup function. Your final association files should contain:
- One relationship per row (one contact ID, one company ID)
- HubSpot IDs
- Association Labels
- Association Direction (for bidirectional associations)
- Association Direction (for bidirectional associations)
If your source data has multiple relationships in each row, you may find this guide handy for separating them into single rows.
Reviewing and Using Your Data
Following each import, you'll want to review and address errors. HubSpot's knowledge base provides more insight into these errors, and HubSpot support can also guide you through solutions. Common issues include:
- Missing dropdown or multiselect property type values
- Duplicate data
- Missing owners (matched by email address)
- Incorrectly formatted dates or phone numbers
- Invalid association IDs
You can save yourself quite a bit of time by making sure these are addressed in your data set and HubSpot prior to import.
From each object view, you can filter down to your import names. This can help you check the records for accuracy and completeness within any saved views you already use.
When you import contacts, often there are properties you can’t set by default. To handle this workaround, import that data to custom properties, then use workflows, like the following examples, to set those properties for your use.
- [Contact workflow] Set non-marketing status for anyone opted out of communication
- [Contact workflow] Setting “opted out of all email” property based on your custom property
- [Contact workflow] Standardize phone formats automatically post-import
- [Company workflow] Update company size tier based on employee count
- [Deal workflow] Calculate deal probability based on stage and other factors
Leveraging Data Import Automation
HubSpot's Operations Hub can help automate repeating imports with scheduled data sync tools:
- Create data sync pipelines for recurring imports
- Set up programmable automation for data cleanup
- Establish import monitoring to catch data quality issues
Need Hands-on Help With Importing?
Hopefully this guide will help you organize your next import project. Still, we understand organizations like yours might need additional guidance to steer the nuances like the correct order of operations with multiple data sources, importing with parent/child relationships, and more. If you need hands-on help, consider a HubSpot partner that specializes in onboarding and auditing HubSpot portal configurations like yours.
You May Also Like

Inbound Marketing
Everything to Know About HubSpot's Marketing Events Object
HubSpot has added new features to the Marketing Events Object to allow customers to create, manage, and use marketing event d...
Keep Reading
HubSpot
4 Reasons You Need HubSpot’s Operations Hub
Not getting the data you need? Need a more complex workflow? Sounds like you need to upgrade to Operations Hub. Here’s why.
Keep Reading
HubSpot
HubSpot Programmable Automation 101
Curious what you can do with HubSpot's Programmable Automation? Check out these examples for how programmable automation can ...
Keep ReadingSubscribe Today