How to Associate Records From a CSV While Importing Into Your CRM
Your sales and marketing teams rely on properly associated data for context in communications, sales conversations, and decision-making. But when you import data—whether manually or through an integration—proper associations are not in place. Manually associating contacts can be extremely time-consuming.
Use the Magical Import module to import and associate new records from a CSV, and automatically detect and link contacts, companies, deals, and custom objects in bulk to maintain order in your database and give your teams a complete picture of every account.
Process Summary
- Upload the CSV file.
- Map the CSV columns to the CRM fields and specify how to import the values.
- Select the Identify Field.
- Optionally, specify how to prepare and modify your data before importing.
- Set rules to make associations between CSV and CRM records.
- Import the data with the specified associations to your CRM.
Step-by-Step Instructions
Select the CSV File for Import
In the Magical Import module, select the database and the record type in the top menu.
Click the Choose button and select the CSV file that you would like to import. Uploading a file into Insycle does not import it to the CRM right away, instead, you can prepare the data in a variety of ways before actually importing it to the CRM.
Map CSV Columns to CRM Fields
After uploading your CSV data, Insycle analyzes your file and compares the columns in the file to fields in your CRM database.
A column is included for each field in the CSV, with the CSV Column header appearing as the top row. Insycle automatically detects the matching CRM fields and maps them for you. The second row shows the mapped CRM field names.
If your CSV contains fields that are not matched to your CRM, a red error notification icon will show at the top of the column. These unmapped fields need to be mapped manually by clicking the picklist and finding the appropriate CRM field. If they remain unmapped they will not be imported.
To remove fields from the import, hover over the column name and click the “X”.
If there are issues with row data, the red warning icon will be shown on the left side of the row. When you hover over the icon, an explanation of the error will be displayed. Records that have errors in them will not be imported. Learn about fixing common errors in the Troubleshooting section below.
Specify How to Import Values for Each Column
With all relevant fields mapped, tell Insycle how to use the data on a field-by-field basis by selecting the Import Mode, in the third row of the table.
Four Import Mode Options
- Update – Update CRM records with all non-empty field data contained in the CSV.
- Fill – Import CSV values only when the corresponding field in your CRM is empty.
- Overwrite – Insycle will replace any existing data in your CRM with the data in the CSV — even if the CSV field is empty.
- Append – Import values from the CSV and append (add them to) the existing data already in your CRM. A typical example of how “Append” is used would be in a “Notes” field.
To make any final changes to values before they are imported, you can edit the import data directly in Insycle by hovering over a value and clicking the pencil icon.
Insycle uses identity fields to compare your CSV to your CRM data. Identity Fields must be "unique identifiers." This is data that would only belong to a single contact, such as email addresses, phone numbers, home addresses, or ID numbers. For companies, it could also be company name, or company domain.
For example, no other contact in the database would have Maria Hernandez's email address, phone number, or ID number listed on their contact record.
Under Step 2 on the Import tab, and select the Identity Field from the dropdown.
Note that when using an email field, Insycle will automatically cross-reference any additional email fields in the records for a match. If using a domain field, Insycle will check additional domain fields.
Select the Records Mode to tell Insycle how the imported data should be handled during the import process.
- Update existing and create net new – If Insycle is unable to find a corresponding record, a new record will be created in your CRM.
- Only update existing – If a corresponding record is found, it will be updated with the data from your CSV import. Records that are not matched with an existing CRM record will not be imported.
- Only create net new – Only records that can not be matched with an existing record in your database will be imported. Records that already exist in your CRM will not be updated.
You can make changes to the CSV data in Insycle before it is uploaded to your CRM. You could apply formatting to a field, cleanse data, organize, and perform other actions prior to import.
On the Functions tab of Step 3, select the Column Name from the CSV file. Then, tell Insycle how the data should be formatted when it is imported. When finished, click Apply.
In the above example, the settings will do three things:
- Capitalize First and Last Names
- Standardize the Phone numbers to E.164 international format
- Format Organization names to title case
Explore the list of options in the Function dropdown to find formatting options for any field in your CSV, or review the full Function Catalog.
Under Step 4, you'll define the rules for bulk matching the two record types during the association process. In this example, we'll associate Contacts from the CSV to Companies in the CRM.
Click the Associate tab. Note that this tab may be labeled differently, depending on what it's called in the CRM you are working with (i.e., Linking, Mapping, etc.).
Configure the rules that will create the relationship between the two record types:
1. Action tells Insycle what to do to the records surfaced in Step 1. All CRMs allow you to Add or Remove associations. Additionally, for Hubspot, you can use the Replace action. For associating on import, choose “Add."
2. Associate specifies the type of record you want to create the relationship with. In the example above, Contacts will be associated to Companies. The options will vary, depending on your CRM and configuration.
3. Hubspot users will see a Labels field which is used to provide further context to the association.
4. The CSV Column is the field from the CSV contacts you want to try and match with the CRM Company records. If you are associating contacts to companies, for example, you will likely choose the “Company” or “Company Name” field from your CSV import.
5. On the Match Field, select the field that the CSV field should match to in your CRM database. If you are using the “Company” field from the CSV, for example, you'd want to match that to the “Company” or “Company Name” field in your CRM.
The CSV Column and Match Field are often the same for both records.
6. If no matching Company is found, an association will not be created. In these cases, you can choose to automatically create a new Company record based on what is in the Contact record. Check the Create new Companies when no matching is found box to enable. Note that this feature only works when associating Contacts to Companies, not Companies to Contacts.
By default, Insycle will attempt to import all of your formatted CSV data into your database.
If there are only a few records you want to import—perhaps to test things out before importing the entire CSV—return to the table under Step 1 and check the boxes beside the select records. Leave the checkboxes blank to import all of the records.
When ready, click the IMPORT button under Step 5. Note that changes are applied to your CRM immediately, there is no preview step.
After the import runs, the Import Result breaks down the import information—how many records you tried to import and how many succeeded, failed, were updated, deleted, or unmodified. Click the Run ID to open a CSV report.
After you've seen the results in the CRM and you are satisfied with how the operation runs, you can save all of the configurations as a template, to reproduce the same formatting operation in the future.
Tips for Creating Associations Between Records
- To create associations between records, you need a field with a similar value in both records. For example, "Email Domain" on the contact and "Website Domain" on the company. Then, you can pick those fields to match the records and establish the association.
- Though making associations will work in both directions, consider that Contacts to Companies is the standard direction, and some features (such as the "If Company is Not Found Create New Company" feature) are only designed to work when Contacts are being associated to Companies.
- For straightforward relationships with obvious matching fields, the direction of the association doesn't matter. But in some cases, such as creating relationships with custom objects or child and parent companies, the direction may be important.
Advanced How-Tos
Insycle uses Identity Fields to compare your CSV to your CRM data. Identity fields must be "unique identifiers." These are data points that could only belong to a single contact—such as email addresses, phone numbers, street addresses, or ID numbers.
Additionally, when using an email field, Insycle will automatically cross-reference any additional email fields in the records for a match. If using a domain field, Insycle will check additional domain fields.
When you make your Identity Field selection, the data under Step 1 will refresh, and you'll be able to see which records are already in your CRM. The records that Insycle found will become blue links that will open the record in your CRM.
Important Note
You can select more than one identity field; however, ALL of the fields must match, not just one or some of them. If you include five identity fields and four of them match, but one doesn't, Insycle will not consider the record a match.
In this scenario, if you use the Update Existing and Create Net New setting, Insycle will create a new record for any CSV rows that don't match all five criteria.
If you use the Only Update Existing setting, there will most likely be few records that match all your criteria, and much of your CSV data will not be imported because Insycle will not be able to find the correct record to update.
Typically, it is best to use a single identity field to improve the likelihood of finding existing records in your CRM.
Troubleshooting
If there are issues with a CSV row, the red warning icon will be shown on the left side of the record. Records that have errors in them will not be imported.
To learn what the problem is and determine steps to resolve it, hover over the red exclamation mark—an explanation of the error will display.
If a field in your CRM includes picklist values and the data included in your CSV does not match, the row will display an "Invalid picklist value" error. This value needs to be changed to match the picklist options used in your CRM.
You can make quick fixes to the import data directly in Insycle by hovering over a value and clicking the pencil icon.
A "Failed" Result with the Message "Import succeeded but association failed (multiple records [x] match value)" occurs when multiple records meet your matching specifications. For example, if you were linking contacts to companies, and Insycle found two company records with the name "Ace," it wouldn't know which Ace to establish the relationship with.
If there shouldn't be multiples of these records you should first go through the process of merging duplicates before trying to import and create these relationships. Learn more about merging duplicates using Insycle.
Or, you can import the records, and then go back and create the relationships using the Associate app. This will let you add multiple matching fields and other criteria to make the selection more specific. Learn more about creating relationships with Insycle's Associate app.
Bulk associations require that you have a field that you can use to match the two records. For instance, you might store "Company" for contacts and "Company Name" for companies. You then use these two fields to associate the two records.
But what do you do if you have no obvious matching field between the two record types that you would like to associate?
This is a fairly common scenario. For example, maybe you would like to associate contacts not only with the company that they work for but with the parent company as well. In this scenario, it is not very likely that you capture the parent company on the Contact record, which means that you may have no field to use to match the association. As a result, you'll need to create a custom field for contacts and companies, such as "Custom Parent Company."
Then, you'll be able to use the Custom Parent Company field for both contacts and companies to make the match.
The key is finding a data point that would allow you to match the associations, even if it is only available for one record type. Then we create the custom matching fields that allow us to make the associations.
Frequently Asked Questions
Yes, Insycle will automatically map fields that it can identify. However, if there are cases where it can't figure out what a field should map to, a warning icon will appear, and the CRM field dropdown will say "Not Mapped." You should select the corresponding CRM field to ensure it is included in the import.
Yes, you can easily add to existing data using the Fill or Append Import Modes in Step 1.
- Fill: Import CSV values only when there is no existing value in CRM (will not overwrite existing CRM values).
- Append: Add CSV values to existing values in your CRM. For example, append notes from a CSV to existing notes or add values on multi-select fields (checkboxes or picklists).
Yes, Insycle provides many functions that can clean, format, and standardize data from your CSV before it's imported into your database. The options selected and applied here will be reflected in the table view of the data in Step 1, not done directly in your CRM.
Under Step 3, on the Functions tab, you can select fields and apply formatting and transformation changes to the field data. These are the same functions found in the Transform Data module, which you can learn more about in the Function Catalog.
You can use any field in your database to create relationships between records, you just need to figure out which field in each record type will have the same value. For instance, you might select "Company" for contact records, and "Company Name" for company records. Or you could use "Email Domain" on the contact, and "Website Domain" on the company.
Yes, the Magical Import module can handle up to 100k rows for each CSV import. Keep in mind that the more rows and fields you have in your CSV, the slower the import process will be. If you run into any issues, try breaking the CSV into segments, and remove any extraneous fields.
Yes, but you will have to run the Magical Import module multiple times. Insycle is only able to run one association operation with each run of the Magical Import module. So if you need to make up to three associations per contact, you'll need to run the module three times. Alternatively, once you've imported the CSV, you can make additional associations using Insycle's Associate app.
Additional Resources
Related Help Articles
- Import New Records or Update From CSV
- Link and Associate People to Companies
- HubSpot Multiple Associations and Labels
- Associate or Link Parent-Child Companies, Create Accounts Hierarchy and Relationships
- Module Overview: Bulk Operations
Related Blog Articles
- Fix Stray HubSpot Contacts With Bulk Association — Connect Contacts to Companies and Deals With Complete Control
- How Insycle Solves Common Problems with HubSpot and Salesforce Integration
- Considerations for Using HubSpot’s Automatic Contact to Companies Association
- Salesforce ABM - Associating Leads and Contacts to Accounts