Back to HubSpot in Google Sheets
SheetXAI logo
HubSpot logo
HubSpot · Google Sheets Guide

Bulk-Create HubSpot Companies From an Account List in Google Sheets

2026-05-13
4 min read
See the Excel version →

The Scenario

You are a RevOps manager. A new ABM campaign launches in four days. Your marketing director needs 150 target accounts created in HubSpot as company records before the campaign goes live.

The list is in a Google Sheet: company name in column A, domain in column B, industry in column C, employee count in column D, annual revenue in column E.

You have never done a company import at this scale before, and the last time you tried HubSpot's CSV import for companies, the domain field caused half the records to fail.

The bad version:

  • You download HubSpot's company import template
  • You map all five columns to the right property names
  • You discover "annual revenue" needs to be a number with no dollar sign or commas
  • You clean the formatting, upload, and get 40 errors back in an import log
  • You spend an hour working through the error log and re-importing the failed rows
  • You walk in to the campaign kickoff with 110 of 150 accounts created.

The fast version is one prompt.

The Easy Way: One Prompt in SheetXAI

SheetXAI reads your account list and creates every HubSpot company record without a CSV template or property mapping screen.

Open the SheetXAI sidebar and type:

Create a HubSpot company for every row in this sheet using company name in column A, domain in column B, industry in column C, employee count in column D, and annual revenue in column E. If a company with the same domain already exists, skip the creation and write "EXISTS" to column F. Otherwise write the new company ID to column F.

SheetXAI reads all 150 rows, checks for existing companies by domain, creates new ones for the accounts that are not already there, and writes the result to column F.

What You Get

A sheet with column F populated and HubSpot showing up to 150 new company records:

  • Company records — with name, domain, industry, headcount, and revenue set
  • Domain-based deduplication — existing accounts are skipped, not doubled
  • Status in column F — company ID for new records, "EXISTS" for duplicates

The domain-based deduplication is the part that matters most. HubSpot's CSV import can create duplicate companies if it does not find an exact domain match. SheetXAI checks the domain before creating, so you do not end up with "Acme Corp" and "Acme Corporation" as separate records.

What If the Data Is Not Quite Ready

ABM account lists are often assembled from multiple sources and the data is not always consistent.

When revenue values have formatting that HubSpot rejects

Column E has values like "$2.4M" or "2,400,000" and HubSpot expects a plain number.

Clean the revenue values in column E: remove dollar signs, convert "M" to millions (e.g. $2.4M → 2400000), remove commas. Then create HubSpot companies from all rows and write company IDs to column F.

When industries do not match HubSpot's dropdown values

Your sheet has "Tech" and "Healthcare" but HubSpot expects "Technology" and "Health Care."

Before creating companies, map the industry values in column C to HubSpot's standard industry labels. Then create the company records and write IDs to column F.

When you also want to associate existing contacts with the new companies

Some of the 150 domains already have contacts in HubSpot. After creating the company records, you want those contacts linked.

Create a HubSpot company for each row in this sheet. After creation, search HubSpot for contacts whose email domain matches the company domain in column B and associate them with the new company. Write the company ID to column F and the count of associated contacts to column G.

When the full operation needs to be done in one shot

The list has mixed data quality. Some revenue values need cleaning, some industries need mapping, some domains already exist, and you need contacts associated after the fact.

Clean column E revenue values to plain numbers. Map column C industry names to HubSpot's standard labels. Create HubSpot companies for rows where the domain in column B does not already exist. For existing companies, just associate any HubSpot contacts whose email domain matches. Write company ID or "UPDATED" to column F and associated contact count to column G.

The pattern: the cleaning and the CRM writes happen in a single pass. You do not export the list, fix it in a separate tool, and re-import. You ask once and check the column.

Try It

Get the 7-day free trial of SheetXAI and open any account list sheet, then ask it to create the company records in HubSpot. The HubSpot integration is included in every SheetXAI plan. For related workflows, see how to bulk-associate contacts with companies or the HubSpot in Google Sheets overview.

Stop memorizing formulas.
Tell your spreadsheet what to do.

Join 4,000+ professionals saving hours every week with SheetXAI.

Learn more