Bulk Associate Child to Parent Companies in HubSpot

How to Establish Relationships Between Parent and Child Companies in Bulk

Your sales and marketing teams rely on properly associated HubSpot data for context in communications and sales conversations. Without proper child-parent company associations in place, you lack vital context and potentially miss big opportunities.

With Insycle, you can automatically detect and create relationships between child companies and parent companies in bulk. 

If the parent and child records you want to associate are already in your CRM, use the Bulk Operations module. To associate new records from a CSV while importing, use the Magical Import module.

Tips for Creating Relationships between Companies

Identify Parent Companies In Your Database

You will need a convention for identifying parent companies in your CRM. Without this, there is no way to associate them in bulk. 

Common approaches include:

  • Adding an identifier to parent company names, such as "HQ." This is what the filter in the example template is looking for. For example, the Parent Company value could be, "Microsoft HQ." 
  • Adding a custom field to manually tag parent companies before making the relationship.
  • Using other fields, such as opportunity amounts, to automatically identify and tag parent companies. 

There may be other ways to identify parent companies; it will depend on your data and situation.

Associate Child and Parent Companies With the Bulk Operations Module

The Bulk Operations module can associate records that already exist in your database.

Process Summary

  1. Filter records down to those you want to associate.
  2. Set rules for making the associations.
  3. Preview and apply the changes to the CRM.

In this example, the Company Name values of parent companies have already been appended with "HQ" to distinguish them from other companies, as suggested in the Tips for Creating Relationships between Companies above.

Step-by-Step Instructions

Step 1: Select and Filter Records

In the Bulk Operations module, select the database and the Companies record type. 

The Associate child to parent companies pre-built template can provide a good starting point that can be customized to fit your specific needs.

Under Step 1, the filter is configured to find company objects that might be child companies. Here, companies that do not have an associated Parent Company, and the Company Name does not include the value “hq" will be included in the results. These are the company records that you want to associate to a parent company.


When you click Search, Insycle will list records that match the filter criteria in the Record Viewer at the bottom of the page. If you make changes to the filter, you'll need to click the Search button again to refresh the viewer.

Step 2: Configure Rules That Will Create the Child-Parent Relationships

In Step 2, you set up the rules that tell Incycle what records to use, fields to look at, and what criteria the values must meet in order to consider them a match for creating the relationship.

Click the Associate tab. 

This is what the initial associate settings look like when using the template Associate child to parent companies:


1. The Action tells Insycle what to do to the records that surfaced in Step 1. Add is used to create new child-parent company associations, or you could Remove existing associations. The Replace action removes existing child-parent associations and adds new associations in one easy step. 

2. Associate specifies the type of record you want to create the relationship with. This template uses the Company to Company, option.

3. The Labels field is used in HubSpot to identify the relationship. Here, this is set as Child to Parent.

4. The Companies Filter is used to narrow the company records down to those that might be parent companies. To identify these, this filter will only look at companies that have, “HQ” in the company title. Update this filter to match the convention established for identifying parent companies in HubSpot.

The next two lines tell Insycle what values to use to identify company matches: 


5. The Field Name is the field from the child company you want to try and match with the parent company. 

6. Match Field is the corresponding parent company field to be matched with the child record. 

The template will try to match the child Company Name to the parent Company Name, and the child Company Domain Name value to the parent Company Domain Name

The Field Name and Match Field are often the same for both the parent and child companies unless you are using a custom field to track an identifier.

7. The Comparison Rule tells Insycle whether the values between the company records must be an Exact Match or Similar Match. This example uses Exact Match, but you can learn more about these Comparison Rules in the Pro Tip below.

Both of the field rows specify different parts of the values to ignore when considering them as matches:


8. Ignored settings can specify parts of a field value to ignore, such as specific text, whitespace, or characters. In the dropdown, check the box for the values you'd like to ignore.

In the template, the first Ignore rule tells Insycle to ignore a list of Common Terms that may appear in the Company Name field such as "HQ," "LLC" or "Inc." To view or alter the list of Common Terms, click the Terms button at the bottom of this section (see below).

The second Ignore rule in the template says to ignore the Top-Level Domain (Extension), and Sub Domain in the Company Domain Name field values. Insycle will only look at the domain name and not at the extension or subdomain. For example, if the company is Microsoft, microsoft.com, microsoft.co.uk, and app.microsoft.com would all be considered matches.

9. The Match Parts field tells Insycle whether to match the entire field or just part of it—such as the first or last few words, or first and last characters.

10. Click the Terms button to edit the Ignored "Common Terms" from #8 above. 


Step 3: Preview and Apply Changes to Your CRM

Preview Changes in a CSV Report

Now, with the filters and associate actions in place, you can preview the changes you will make to your HubSpot data. Using the CSV, you can check to ensure the relationships are being created as expected before those changes are made in your live CRM. 

First, under Step 4, click the Review button.

In the Bulk Associate popup, select Preview and click Next.


On the Notify tab, add any additional recipients who should receive the CSV (and make sure to hit Enter after each address). You can add colleagues and additional context here.

On the When tab, click the Run Now tab and select which records to apply the change to (in most cases this will be All), then click the Run Now button.


Open the CSV file from your email in a spreadsheet application and review the columns. For each company record that didn't already have a Parent Company value, nor "HQ" in the Company Name, Insycle tried to match it with another company record using the Company Name + Company Domain Name values. You can see the two Company Name values side by side, and the Result column tells you if the relationship was added.

Apply Changes to the CRM

If everything in your CSV preview looks correct, return to Insycle and move forward with applying the changes to the live CRM data.

Under Step 4, click the Review button, select Update mode, then click Next.

On the When tab you can choose to run and apply the update now, or you can set up an automation to run the template regularly. The first time you apply these changes to the CRM, we suggest you Run Now.

In the Run Now tab, you can control how many records to run the template on. Click Run Now to apply the changes to your CRM.

Save Templates and Setup Automation

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, and set up automation so this association process runs on a set schedule. 

By automating with a template, you'll save time and ensure that your company records are consistently associated on an ongoing basis.

Additionally, you can create a Recipe, a template bundle that can then be injected into HubSpot Workflows. Doing this, you could ensure that child and parent companies are correctly associated immediately after they enter your database and before your first communications to them go out.

Pro Tip: Using Exact Match vs. Similar Match in Step 2

The Comparison Rule defines what kind of likeness to look for when deciding if field values should be considered a match.

It's a good idea to start with Exact Match for the straightforward matches, then use Similar Match to look for edge cases.

Exact Match looks for values that match exactly, with no differences from one record to the next. Any unique identifying fields should use Exact Match.

Similar Match looks for values that may be close but with a one-character difference (like a typo, extra character, or missing character) and broadens the search. This search behaves like when Google shows results for a slightly different term, or says “Did you mean...”

For example, if a Company Name of, “Acme” is found, it could include records with the Company Name values, “Akme," "acm," or "Acma,” as matches.

Be careful if using Similar Match, as the looser criteria can incorrectly identify records as matches. It is best to only use Similar Match with very open and generic fields, and only after trying everything else.

*Note that ID fields can only be Exact Match, never Similar Match.

Associate Child-Parent Companies from a CSV With the Magical Import Module

If you have a CSV file containing data to be imported as new records, use the Magical Import module to associate child companies to existing parent companies in HubSpot when you import.

Process Summary

  1. Select the CSV file.
  2. Map the CSV columns to the HubSpot fields and select the import mode for each field.
  3. Select the unique identifier field.
  4. Optionally, specify how to prepare and modify your data before importing.
  5. Set rules to make associations between CSV and CRM records.
  6. Import the data with the specified associations to your CRM.

Step-by-Step Instructions

Step 1: Select the File, Map Columns, and Specify How to Import Values

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 and make associations before actually importing it into HubSpot.

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 HubSpot 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 HubSpot fields and maps them for you. The second row shows the mapped HubSpot 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 dropdown and finding the appropriate HubSpot 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.

Warning, No record in Owners has matching value

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 your HubSpot records with data from all non-empty fields in the CSV.
  • Fill – Import CSV values only when the corresponding field in HubSpot is empty.
  • Overwrite – Insycle will replace any existing data in HubSpot 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 HubSpot records. A typical example of how Append is used would be adding additional text 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.


Step 2: Select Unique Identifier Field

Insycle uses Identity Fields to compare your CSV to your HubSpot data. Identity Fields must be "unique identifiers." This is data that would only belong to a single company—such as company name, company domain, phone numbers, addresses, or ID numbers.

Under Step 2 on the Import tab, select the Identity Field you'll use in your import.


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 company record in HubSpot, a new record will be created.
  • Only update existing – If a corresponding company record is found, it will be updated with the data from your CSV import. CSV rows that are not matched with an existing HubSpot record will not be imported.
  • Only create net new – Only records that can not be matched with an existing record in your HubSpot database will be imported. Company records that already exist will not be updated.
Step 3: Optionally, Modify Your Data before Import

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 before import.


Step 4: Set Up the Child to Parent Association to Make During Import

Under Step 4, click the Associate tab.

Configure the rules that will create the relationship between the two company records:


1. Action tells Insycle what to do to the records surfaced in Step 1. Select “Add," to make this association during the import.

2. Associate specifies the type of record you want to create the relationship with. Choose, "Company to Company."

3. The Labels field is used in HubSpot to identify the relationship. Select, "Child to Parent."

4. In the CSV Column field, select the field from your CSV to use to identify matches. When associating child to parent companies, you would likely choose the “Company Domain” or “Company Name” field from your CSV import.

5. On the Match Field, select the field in your HubSpot database that should match your CSV value. For example, if you are using the “Company Domain” field from the CSV, you'd want to match that to the “Company Domain Name” field in HubSpot. 

Step 5: Import the Data with Associations into HubSpot

By default, Insycle will attempt to import all of your formatted CSV data into your database. Leave the checkboxes blank to import all of the records. If there are only a few records you want to apply the association to—perhaps to test things out before importing the entire CSV—return to the table under Step 1 and check the boxes beside the desired records. 

To import, click the Import Companies button. 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 record of the import.


After you've seen the results in HubSpot and you are satisfied with how the operation runs, you can save all of the configurations as a template so you can easily reproduce the same import and associate operation in the future.

Troubleshooting: Seeing Red Warning Icons in Step 1

If there are issues with a record, the red warning icon will be shown on the left side of the record in Step 1. 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.

Warning, No record in Owners has matching value

If a field in your HubSpot database 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 HubSpot.


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.


Troubleshooting: Using Multiple Identity Fields

You can select more than one Identity Field in Step 2, however, Insycle will check all the fields to match. If one single field does not match, a corresponding company CRM record will not be identified.

Using the Records Mode, Update existing and create net new, Insycle will fail to match many records and instead will create a new record.

With the Only update existing Records Mode, you may identify far fewer existing records and much of your CSV data may not be imported because Insycle will not be able to find the correct record to update.

Too many identity fields

Deduplicating Associated Companies

When deduplicating child or parent companies in HubSpot, Insycle is able to detect even the most complex company hierarchy associations, ensuring that the correct child company master records are associated with the correct parent company master records after the companies are merged.

Advanced How-Tos

Associating Child-Parent-Grandparent Companies

Insycle can associate multiple levels of child-parent relationships by mapping child companies to parent companies and parent companies to grandparent companies.

  • Child Company → Parent Company → Grandparent Company

Similar to other association use cases, you can use Bulk Operations to associate based on existing properties or Magical Import to associate based on CSV files.

In the below example, to associate child-parent-grandparent using Magical Import, the columns in the CSV file include a custom field, "Relationship," populated with the values Child, Parent, and Grandparent. For in-depth instructions on how to do this, see the Associate Child and Parent Companies from a CSV With the Magical Import Module section above.


Create and Associate a New Company Record if No Match is Found

If no matching record is found, you can choose to automatically create a new record based on what is in the source record. The option is located in a different place in each module.

Bulk Operations Module

Under Step 2 of the Bulk Operations module, check the Create new [record] when no matching is found box to enable, then select the field to use for naming the new record.

Create a new record if no match is found

Magical Import Module

Under Step 4 of the Magical Import module, check the Create when no matching is found checkbox to enable.

Frequently Asked Questions

How does Insycle know which company is the parent?

Insycle does not automatically know what company is the parent. You have to make that clear through the data itself. A common way of tagging the parent company is to include "HQ" in the company name field. Or, you can create a custom field and manually tag parent companies before bulk associating with relevant child companies.

Can I have Insycle create a new company record and associate it if no match is found?

Yes, you can instruct Insycle to create the new company record if no match is found in both the Bulk Operations module and Magical Import module. See Create and Associate a New Company Record if No Match is Found in the Advanced How-Tos above for more detail.

create when no match found

Can I make child-parent associations from a CSV?

Yes. See the Associating Child and Parent Companies from a CSV With the Magical Import Module section above for information about making child-parent associations from a CSV file.

Can I make child-parent associations in bulk?

Yes. See the Associate Child and Parent Companies With the Bulk Operations Module section above for information about making child-parent associations in bulk. 

Additional Resources

Related Help Articles

Related Blog Articles