How to Link Contacts and Companies to Associate Related Records

Your sales and marketing teams rely on accurately associated records for context in sales conversations and account-based marketing applications. When these associations are missing, prioritizing opportunities is difficult, and your staff fails to engage effectively with important stakeholders.

With Insycle, you can automatically detect and link contacts, companies, deals, and custom objects in bulk. This will maintain order in your CRM and give your teams a complete picture of every account. 

If the records you want to associate are already in your CRM, use the Associate app. To associate new records from a CSV while importing, use the Magical Import module.

Associate Contacts to Companies Using the Associate App

To associate existing records, use the Associate app. Here, you can associate contacts, companies, deals, and custom objects as needed, including child and parent associations.

Process Summary

  1. Filter records down to those you want to associate.
  2. Set rules for making the associations.
  3. Optionally, copy a value between the associated records.
  4. Preview and apply the changes to the CRM.

 

Step-by-Step Instructions

Step 1: Select and Filter Records

In the Associate app, select the CRM database and the record type in the top menu. Then explore the default templates for a pre-built solution.

Each row in Step 1 is for a field you want to look at to determine whether to include or exclude a record from this task. With this filter, you're telling Insycle what records you would like to update. 

In the below example, contacts that do not have an Associated Company ID but do have a Company Name, will be included in the results.

link1.png

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

Step 2: Configure Rules That Will Create the Relationship

Under Step 2, 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: 

associate-hubspot-contacts-to-companies-step-2-by-company-name-numbered.png

  1. Action tells Insycle what to do to the records that surfaced in Step 1. All CRMs allow you to Add or Remove associations. Additionally for Hubspot, you can use the Replace action to remove existing associations and create new ones.
  2. Association specifies the type of record you want to create the relationship with. In the example above, contacts will be associated to companies.
  3. Hubspot users will see a Labels field which is used to name or categorize the relationship. You can add, remove, or set multiple labels in one action.
  4. Click the Companies Filter button to narrow the target records down to those that would be a good fit for this relationship.
    In the Company Filter popup you could, for example, add the "Company Name" field and set the Condition "exists." This tells Insycle to only consider companies for association if the Company Name field has a value in the database.
    Click Search to apply the filter and close the popup. Note that the company filter will not update the results in the Record Viewer, only in your final Review steps.link3.png
  5. Click the Selection button to define rules for picking the company if there are multiple matches found.
    associate-contacts-to-companies-step-2-select-popup-create-date-&-owner.png
  6. Select the Contacts Field you want to try and match with the company record. In the example above, the Company Name from the contact record will be used. 
  7. Select the Companies Field with the value that should match the contact field. In the example above, the Company Name field will be used for both the contact and company. The two matching fields are often the same for both record types.
  8. The Comparison Rule tells Insycle whether the values between the contact and company records must be an Exact Match or Similar Match. In most cases, you'd select Exact Match, but you can learn more about these Comparison Rules in the Pro Tip below.
  9. In the Ignored field, you 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 example, the Ignore rule tells Insycle to ignore a list of Common Terms that may appear in the Company Name field, such as "LLC," "Inc." or "Co." This is often a necessary field for matching companies. To view or alter the list of Common Terms, click the Terms button at the bottom of the step.
  10. 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.
  11. 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. There are a couple of things to note when using this setting:
    • This feature only works when associating contacts to companies, not companies to contacts.
    • When using the "Exact Match" Comparison Rule, the "Create new..." setting could potentially create duplicates, so you should be thoughtful with the Matching Field and Comparison Rule that you use.
  12. The Ignored "Common Terms" can be edited using the Terms button.
  13. Check the Count unmatched Contacts records as Failed box to flag unmatched contacts as "Failed" on the Result popup and in the CSV report. When left unchecked, unmatched records are counted as "Unmodified."
Step 3: Copy a Value between the Associated Records (Optional)

After setting the association rules in Step 2, you can create rules to copy values between the records. If one record type consistently has values that would be helpful in the associated record, you can execute that copy in bulk.

Under Step 3, select the field from the source record type (in this example, contact), and the relevant field on the target records (Companies). You can choose to copy values from the source record to the target, or target record to the source.

The Copy Rule gives you three options: 

  • Only when [the record you're linking to] field is empty
  • Only when [the record you're linking from] field is not empty
  • Always copy

bulk-op-hubspot-assoc-contact-to-company-step-3.png

The preview CSV will include these fields, and specify if the value was copied for each record.

Step 4: Preview and Apply Changes in Your CRM

Preview Changes in a CSV Report

Now with the filters and association/linking actions in place, you can preview the changes you are making to your data. That way, you can check to ensure the relationships are being created as expected before those changes are made in your live database. 

First, under Step 4, click the Review button.

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

associate-step-4-preview-mode.png

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.

associate-step-4-preview-run-now.png

Open the CSV file from your email in a spreadsheet application and review the columns. For each contact record that didn't already have an Associated Company ID value, Insycle tried to match it with a company record using the Company Name values. 

Each row in the CSV includes the Result of the association and a Message with details, the contact info, the associated company info, and if configured, the result of the copy operation. 

hubspot-association-9.png

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. This time, select Update mode. 

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

Save Templates and Setup Automation to Maintain Formatting

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 operation runs on a set schedule. 

associate-step-4-update-automate-weekly.png

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

Pro Tip: When to Use 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 for association.

It's a good idea to start with Exact Match for the straightforward matches, then use Similar Match to broaden the search and 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. This is usually your best bet when looking for associations.

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.

Similar Match uses looser criteria that cast a wider net for what can be considered matches. Make sure to carefully review the results to ensure the relationships being created are what you're expecting.

associate-hubspot-contact-to-company-step-2-company-name-similar-match.png

 If using ID fields to match, note that they will only work with Exact Match, not Similar Match.

Advanced: Using Multiple Related Matching Fields

You can specify more than one matching field when making associations in the Associate app. 

For example, maybe you want to compare a contact's Website Domain against a Company's Website, along with any listed in the Additional Domains field. 

To do this, under Step 2, select the Advanced Tab from the sub-menu. There, you'll be able to add Related Match Fields to catch more associations. 

assoc1.png

Troubleshooting: It's Taking a Long Time for Insycle to Find Related Records

It can take a while for Insycle to find and match records if the fields being used to identify the relationship have very long values. The longer the values the longer it takes Insycle to process the data and generate the results. This might come up when using links with long ID numbers, LinkedIn bios, or other URLs with long strings (ex, https://www.linkedin.com/in/svadin%C3%ADr-n%C4%9Bmec-1234b31a3/).

If the end of the values are all unique, you can try and speed this up by using the Match Parts parameter under Step 2, which will limit the comparison to the last several characters.

associate-hubspot-contacts-to-companies-step-2-linkedin-bio.png

Or use the Ignore Text (Substrings) parameter, and click the Terms button.

associate-hubspot-contacts-to-companies-step-2-linkedin-bio-terms-btn-highlighted.png

On the Ignored Text tab of the popup, add the common portion of the URL or text string.

merge-duplicates-linkedin-bio-step-1-ignored-text-popup.png

 

Associate Contacts to Companies Using 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 people and companies to existing records in your database when you import.

To learn more about the importing process, review this help article: Import new records or update and append to existing from CSV.

Process Summary

  1. Upload the CSV file.
  2. Map the CSV columns to the CRM fields and specify how to import the values.
  3. Select the unique identifier field.
  4. Set rules to make associations between CSV and CRM records.
  5. Import the data with the specified associations to your CRM.

 

Step-by-Step Instructions

Select the CSV File for Import and a Template

Navigate to Data ManagementMagical Import

Select the CRM database and the Contact record type in the top menu. Then, choose 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 various ways before actually importing it to the CRM.

magic-import-choose-csv.png

Select a template if you or someone on your team has already saved one that can handle importing from the same source.

magical-import-template-import-format-assoc.png

Step 1: Map Columns and Specify How to Import Values

Map CSV Columns to CRM Fields

After uploading your CSV data, Insycle analyzes the file and compares the columns 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 warning icon will show. 

link10.png

These unmapped fields need to be mapped manually by clicking the dropdown and finding the appropriate CRM field. If they remain unmapped, the column will not be imported. If you choose to leave these unmapped, you can remove them by hovering over the column name and clicking the “X”.

Specify How to Import Values for Each Column

With all relevant fields mapped, select the Import Mode in the third row of the table to tell Insycle how to use the data on a field-by-field basis.

link11.png

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 in your CRM. A typical example of how “Append” is used would be in a “Notes” field or to add to existing dropdown data without including historical selections in your CSV. 

You can also preview and edit the import data directly in Insycle by clicking the pencil icon next to any field when you hover over it.

link12.png

If a record has errors, the red exclamation point notification will be shown on the left side of the record. When you hover over the red exclamation mark, an explanation of the error will be displayed.

link13.png

Records that have errors in them will not be imported. 

Step 2: Select Unique Identifier Field and Choose Action to Take

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 example, no other contact in the database would have Maria Hernandez's email address, phone number, or ID number listed on their contact record. If a contact record contains a match for Maria Hernandez's data in one of those fields, we know that is the contact record for Maria Hernandez.

Under Step 2 on the Import tab, 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. 

magical-import-step-2-import-email.png

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 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.
Step 3: Format and Standardize Data Before Importing (Optional)

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. This uses the same functions found in the Transform Data module, which you can learn more about here

On the Functions tab of Step 3, select the Column Name from the CSV file.

Select a Function for each column, telling Insycle how the data should be formatted when it is imported. When finished, click Apply and view the changes under Step 1. These changes are applied to your CSV data in Insycle before importing.

magic-import-hubspot-contacts-step-3-format-name-company-country-phone.png

In the above example, the settings will:

  1. Capitalize the Last Names and Company Names.
  2. Standardize Country/Region values to the ISO alpha-3, three-character abbreviations.
  3. Format phone numbers to the E.164 international standard.

Explore the list of options in the Function dropdown to find formatting options for any field in your CSV.

Step 4: Set Up the Association to Make During Import

Under Step 4, click the Associate tab (this may also be called the Link tab, depending on the naming convention in your CRM). 

Configure the rules that will create the relationship between the two record types: 

link15.png

  1. Select the Action to take. All CRMs allow you to Add or Remove associations. Additionally, for Hubspot, you can use the Replace action to remove existing associations and create new ones.
  2. Click the Associate field and select the type of record you want to create the relationship with. 
  3. Hubspot users will see a Labels field, which is used to name the relationship.
  4. In the CSV Column field, select the field from your CSV to use to identify matches. If you were associating contacts to companies, for example, you would likely choose the “Company” or “Company Name” field from your CSV import.
  5. On the Match Field, select the field in your CRM that should match your CSV value. For example, if you are using the “Company” field from the CSV, you'd want to match that to the “Company” or “Company Name” field in your CRM.
  6. Additionally, you can create a new record in the CRM when there is no match automatically found by Insycle by checking the Create when no matching is found box.
Step 5: Import the Data with Associations to Your CRM

By default, Insycle will attempt to import all of your CSV data into your database. If there are only a few records you want to apply the association to, 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.

⚠️ Note that changes are applied to your CRM immediately; there is no preview step. To import, click the Import X Contacts button under Step 5.

magic-import-contacts-step-5-import-47-contacts.png

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.

magic-import-result-7-records.png

Insycle will also email you a CSV report of these changes. If you open the CSV file, you can look at the Result column to see how each row of your import was handled.

The Result column may show:

  • Created - A new record was created in HubSpot
  • Updated - An existing record was found and updated with data from the CSV
  • Failed - If there is an issue, the Message field will give you details so you can troubleshoot

You can also see the (Before) and (After Update) values side-by-side for each field in your import.

magical-import-hubspot-contacts-by-email-csv.png

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 import, format, and associate operation in the future.

Pro Tip: Selecting an Identity Field

Insycle uses the Identity Field in Step 2 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. 

magical-import-step-2-import-email.png

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.

magic-import-hubspot-contacts-step-1-links-to-existing.png

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.

link18.png

Troubleshooting: Using Identity Fields That Aren't Unique

Insycle uses Identity Fields to compare your CSV to your HubSpot data. If you're using a field that is not truly unique as an Identity Field, it's likely that Insycle won't be able to identify one single record as a match. For instance, there could be many people with the First Name "John" in HubSpot. This is why uniqueness is key.

When selecting your Identity Field, make sure it is truly a "unique identifier." These are data points that would only belong to a single record—such as an email address, phone number, street address, or ID number. For companies, it could also be a company name or company domain.

import-warning-non-unique-id-field.png

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.
  • You can make associations in both directions: contacts to companies, or companies to contacts.
  • 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 relationship doesn't matter. But in some cases, such as creating associations with custom objects or child and parent companies, the direction may be important. If you are having trouble, try changing the direction of the association.

Troubleshooting

There's a "Failed. Multiple sources/target matches" result in the CSV

A "Failed" Result with the Message "Multiple target matches (x)..." or "Multiple source matches..." occurs when multiple records meet your matching specifications. For example, if you were linking contacts to companies, and Insycle found ten company records with the name "Microsoft," it wouldn't know which Microsoft to establish the relationship with.

associate-hubspot-contacts-to-companies-csv-highlight-failed-result.png

There are a few options for resolving this issue:

  1. If there shouldn't be multiples of these records you should first go through the process of merging duplicates before trying to create these relationships.
  2. If using the Associate app, and there are supposed to be multiple similar but distinct records, you can add another matching field in Step 2 to make the criteria more specific. A record would have to match both field values to be considered appropriate for making the relationship. associate-hubspot-contacts-to-companies-step-2-domain-and-country.png
  3. You can also use the filter in Step 2 of the Associate app to narrow the records to be associated.
    associate-hubspot-contacts-to-companies-step-2-companies-filter-w-arrow.png
    In the filter popup, you could, for example, add the "Company name," field and set the Condition "contains" "HQ." This tells Insycle to only consider companies for association if the Company Name value includes the term "HQ."
    bulk-op-hubspot-companies-step-2-companies-filter-hq-604px.png
  4. In cases where there are multiple target records that could match, you can add Selection rules for picking the appropriate record.
    associate-hubspot-deals-to-companies-step-2-selection-button.png
    You can create rules in the selection pop-up to choose the most recently created record that has an owner assigned.
    associate-hubspot-deals-to-companies-step-2-selection-popup.png
There's an "Unmodified. No matching record found…" result in the CSV

An "Unmodified" Result with the Message "Unmodified, no matching record found (use 'Grid Edit' to troubleshoot)" result occurs when there aren’t any records that meet your matching specifications.

associate-contacts-to-companies-unmatched-result-csv.png

You can examine the data in the unmatched records and troubleshoot using the Grid Edit module. Look at different fields and values to identify why your associate setup didn’t work for the record. Then decide what match options could work or if some cleanup is needed.

Learn more about reviewing your data using the Grid Edit module.

There's a "Failed. No matching record found…" result in the CSV

When using the Associate app, you have the option under Step 2 to Count unmatched records as Failed. When checked, any record where there is no match to create the association will be counted as “Failed.” This will be reflected by a "Failed" Result with the Message "No matching record found (use 'Grid Edit' to troubleshoot)" message in the CSV report.

associate-hubspot-contacts-to-companies-csv-failed-unmatched-result.png

You can examine the data in the unmatched records and troubleshoot using the Grid Edit module. Look at different fields and values to identify why your associate setup didn’t work for the record. Then decide what match options could work or if some cleanup is needed.

Learn more about reviewing your data using the Grid Edit module.

No obvious field to use for matching between the two record types

Bulk associations require that you have a field that you can use to match the two records. For instance, you might select "Company" for contact records, and "Company Name" for company records. 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." Ideally, if child companies are already associated with parent companies, you'll be able to pull this data from your company records and populate both custom fields using your CRM's automation features.

Then, you can use the Custom Parent Company field for both contacts and companies to make the match.

The key is finding a data point that allows you to match the associations, even if it is only available for one record type. Then, you create the custom matching fields that allow you to make the associations.

Frequently Asked Questions

What fields can I use to create associations?

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.

Commonly used fields for linking include company names, company domains, and company URLs.

Can I associate companies to contacts instead of contacts to companies?

Yes, you can associate record types in either direction.

Though making relationships 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.

In some cases, such as creating relationships with custom objects or child and parent companies, the direction may be important.

Can Insycle manage parent-child associations and links?

Yes, Insycle can help manage parent-child associations. For more information, see the Associate or Link Parent-Child Companies article.

Can Insycle create and associate a new company record if there isn't one found?

Yes. If no matching record is found, you can choose to automatically create a new company record based on what is in the contact record. Under Step 2 of the Associate app or Step 4 of the Magical Import module, check the Create new Companies when no matching is found box to enable, then select the field to use for naming the new company.

Can Insycle associate activities with a company or other record?

No, Insycle does not currently allow you to access, update, or associate activities. 

Additional Resources

Related Help Articles

Related Blog Posts