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 an Excel workbook on the Accounts tab: company name in column A, domain in column B, industry in column C, employee count in column D, annual revenue in column E.
The bad version:
- You download HubSpot's company import template, reformat the Accounts tab to match it
- You discover "annual revenue" needs a plain number, no dollar signs or commas
- You clean the formatting, save as CSV, upload, and get 40 errors back
- You spend an hour working through the error log and re-importing failed rows
- You walk into the campaign kickoff with 110 of 150 accounts created.
The fast version is one prompt.
The Easy Way: One Prompt in SheetXAI
SheetXAI reads the Accounts tab 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 the Accounts tab 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 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, and writes the result to column F.
What You Get
A workbook with column F populated in the Accounts tab and HubSpot showing up to 150 new company records:
- Company records — with all five properties set
- Domain-based deduplication — existing accounts are skipped, not doubled
- Status in column F — company ID for new records, "EXISTS" for duplicates
The domain check is what prevents the double-entry problem. HubSpot's CSV import can create duplicate companies if the domain match is not exact. SheetXAI checks before creating.
What If the Data Is Not Quite Ready
ABM account lists assembled from multiple sources are almost never clean on the first pass.
When revenue values have formatting that HubSpot rejects
Column E has values like "$2.4M" or "2,400,000."
Clean the revenue values in column E of the Accounts tab: remove dollar signs, convert M notation to millions, 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 workbook has "Tech" and "Healthcare" but HubSpot expects "Technology" and "Health Care."
Map industry values in column C of the Accounts tab to HubSpot's standard labels before creating companies. Write company 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 companies, you want those contacts linked.
Create a HubSpot company for each row in the Accounts tab. After creation, search for contacts whose email domain matches column B and associate them with the new company. Write company ID to column F and associated contact count to column G.
When the full operation needs to be done in one shot
Mixed data quality across the list: some revenue values need cleaning, some industries need mapping, some domains already exist.
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, associate any 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.
Try It
Get the 7-day free trial of SheetXAI and open any Excel workbook with account lists, 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 in Excel or the HubSpot in Excel overview.
