aibrevo

CRM Import Limits Compared: Rows, File Size and Errors in 8 CRMs

CRM import limits from each vendor's own help documentation, checked October 6, 2026: the maximum rows and file size per import in Salesforce, HubSpot, Dynamics 365, Zoho CRM, Pipedrive, monday CRM, Airtable and GoHighLevel, what the common import errors mean, and how to fix them.

Key takeaways

  • The same 40,000-contact file imports in one go into HubSpot or Pipedrive, needs two batches in Zoho CRM Enterprise, and needs six files for monday CRM. Limits checked in each vendor's help docs on October 6, 2026.
  • Salesforce's Data Import Wizard takes up to 50,000 records at a time. Above that, Salesforce points you to Data Loader, which handles up to 150 million.
  • HubSpot paid accounts allow 512 MB and 1,048,576 rows per file and 10 million rows a day. Its free tools allow 20 MB per file and 500,000 rows a day.
  • Microsoft recommends keeping a Dynamics 365 import to 20,000 rows or fewer, with an 8 MB file limit (32 MB zipped) for the Import Data Wizard.
  • Most failed imports come from four causes: a second sheet in the file, badly formatted phone numbers or dates, owner names that match no user, and dropdown values that don't exist yet.

You exported 40,000 contacts from your old CRM, opened the new one, clicked Import, and got an error. Nothing in the migration plan said the importer had a ceiling. Every CRM has one, and the numbers differ by a factor of more than 100. This page lists them in one place, taken from each vendor’s own help documentation, plus what the common import errors mean and how to fix them.

Method. We read the import documentation for the eight CRMs aibrevo implements on October 6, 2026, and recorded only limits the vendor states. Where two vendor articles disagree, both are shown with their dates. Links are in the sources.

What are the import limits in each CRM?

CRM Tool Max rows per import Max file size File types Other limits
Salesforce Data Import Wizard 50,000 records Not stated in the source we read CSV Data Loader for 50,000 to 150 million records
HubSpot (paid) Import tool 1,048,576 rows per file 512 MB CSV, XLSX, XLS 10M rows and 500 imports per rolling 24 hours; under 1,000 columns
HubSpot (free tools) Import tool 500,000 rows per day 20 MB CSV, XLSX, XLS 50 imports per day
Dynamics 365 Sales Import Data Wizard 20,000 rows recommended 8 MB, or 32 MB as .zip CSV, XML Spreadsheet 2003, ZIP, text Programmatic import recommended for large volumes
Zoho CRM Import 1,000 (Free) to 30,000 (Enterprise) per batch 25 MB per file for the Bulk Write API CSV; XLS, XLSX, VCF up to 5,000 Bulk API: 25,000 records and 200 columns per file
Pipedrive Spreadsheet import 50,000 rows Under 50 MB XLS, XLSX, CSV One tab per import, header row required
monday CRM Import from Excel Under 8,000 rows (10,000 into an existing board) 10 MB XLSX, XLS, CSV Under 50 columns; 100 files per account per hour
Airtable Import Bounded by the base’s record cap Not stated in the source we read Not stated in the source we read 1,000 (Free), 50,000 (Team), 125,000 (Business) records per base
GoHighLevel CSV import 10,000 rows (April 2025 article) Under 30 MB (September 2026 article) CSV only One sheet; one note per contact, 5,000 characters

Source: each vendor’s help documentation, checked October 6, 2026. See the sources section for links and article dates.

Most rows one in-app import can take

HubSpot (paid)
1,048,576
Salesforce Import Wizard
50,000
Pipedrive
50,000
Zoho CRM Enterprise
30,000
Dynamics 365 (recommended)
20,000
GoHighLevel
10,000
monday CRM
8,000

Bar length uses a logarithmic scale so the smaller limits stay visible; HubSpot's limit is about 130 times monday CRM's. Source: vendor help docs, checked October 6, 2026. GoHighLevel figure from its April 2025 troubleshooting article.

How many files will my import need?

The practical question is not the limit itself but how many times you have to split your export. Here is the arithmetic for three common migration sizes, using each CRM’s per-import row limit.

CRM (limit used) 5,000 records 40,000 records 150,000 records
HubSpot paid (1,048,576) 1 file 1 file 1 file
Salesforce wizard (50,000) 1 1 3, or one Data Loader job
Pipedrive (50,000) 1 1 3
Zoho CRM Enterprise (30,000) 1 2 5
Zoho CRM Standard (10,000) 1 4 15
Dynamics 365 (20,000 recommended) 1 2 8
GoHighLevel (10,000) 1 4 15
monday CRM (under 8,000) 1 6 19

Files needed = records / row limit, rounded up. For monday CRM we used 7,999 rows per file because the limit is “fewer than” 8,000. Each split file needs the same header row.

Record count is only half of it. Monday’s 10,000-item board limit on most plans and Airtable’s 50,000-record cap on the Team plan mean a 150,000-contact database may not fit at all without a plan change or a different data design. Check the destination’s storage cap before you check the import cap.

Why do CRM imports fail, and how do you fix them?

Almost every failed import we see traces back to a handful of causes. This table maps the symptom to the cause and the fix, with the vendor’s own error code where it publishes one.

What you see Likely cause Fix
“The import file contains more than one sheet” (HighLevel error 1003) Your file has extra tabs Delete every tab except the data, or save as CSV
Phone numbers rejected or mangled (HighLevel error 1013) Brackets, dashes or no country code Strip “(”, “)” and “-”, and use the international format with a country code
Dates rejected (HighLevel error 1014, Zoho date mismatch) File uses a different date format than the one chosen at import Pick the matching format in the import settings, or reformat the column to one format
Owner not found, or “matches more than one user” (HighLevel error 1002) Owner column uses names, and two users share one, or the user doesn’t exist yet Use the owner’s email address instead of their name; add users before importing
Invalid email (HighLevel error 1008) Typos, spaces, two addresses in one cell Clean the column; keep one address per cell
Dropdown or picklist values not imported Values don’t exist in the CRM field yet (Zoho notes this) Create the dropdown options first, then import
Import stops partway, rows missing at the end A blank row the importer reads as the end of the file (Zoho notes this) Remove empty rows before import
Strange characters in names File not saved as UTF-8 Re-save as CSV UTF-8 (HubSpot and Zoho both call this out)
Duplicates created No unique identifier mapped Map email or record ID as the identifier; deduplicate the file first
“File too large” or nothing happens on upload File over the size or row limit Split the file using the table above

How should you split a large CRM import?

  1. Clean first. Deduplicate, fix phones and dates, and remove blank rows in the full file. Fixing one file is easier than fixing 15. Our data cleaning guide walks through it.
  2. Import parents before children. Companies or accounts first, then contacts linked to them, then deals, then notes and activities. Otherwise the importer has nothing to link to.
  3. Split by a stable rule. By created date or ID range, not at random, so you can tell which batch a bad row came from.
  4. Copy the header row into every file. The column names must match exactly.
  5. Run a 50-row test file first. Check field mapping, owners and dates in the CRM before running the full set.
  6. Log each batch. File name, row count, rows imported, rows failed. Download each error file the CRM offers.
  7. Switch to the bulk tool when the file count gets silly. Salesforce Data Loader, HubSpot’s imports API (up to 80 million rows a day, per HubSpot) or Zoho’s Bulk Write API are built for this.

Which import route fits your migration?

  • Under the CRM’s row limit, one object: the in-app importer is fine.
  • Over the limit, under about 10 files: split the file and import in batches.
  • Many objects with relationships, or over about 10 files: use the vendor’s bulk tool or API, or a migration tool, and map record IDs between systems.
  • History you can’t lose (activities, emails, attachments): plan this separately; most in-app importers handle them poorly or not at all.

Which CRM migrations hit the limits most often?

The tight limits are at the destination end. Moving into monday CRM or GoHighLevel from a larger system usually means many split files, because their per-import limits are 8,000 to 10,000 rows. Moving into HubSpot rarely needs a split at all. Moving into Salesforce is easy up to 50,000 records per object and then needs Data Loader.

If you are planning one of these moves, our step-by-step guides cover the specific pairs: Salesforce migration, HubSpot migration, Pipedrive to HubSpot, Pipedrive to Zoho and Airtable to monday.com. The general CRM migration guide covers planning and cutover. When you are comparing destinations, the CRM pricing comparison shows what each costs for your team size.

aibrevo’s engineers run these migrations as part of an implementation, including the split, the ID mapping and the test imports. If your export is stuck on an error you can’t place, book a short call and bring the error file.

Sources

All checked October 6, 2026.

More guides

Related reading

FAQs

How many records can I import into Salesforce at once?

Up to 50,000 records at a time with the Data Import Wizard, according to Salesforce's Trailhead documentation. For 50,000 to 150 million records, Salesforce recommends Data Loader, a client application. The wizard covers accounts, contacts, leads, solutions, person accounts, campaign members and custom objects.

What is HubSpot's import limit?

On paid HubSpot subscriptions, a file can be up to 512 MB and 1,048,576 rows, with up to 500 imports and 10 million rows per rolling 24 hours. On HubSpot's free tools, files are limited to 20 MB, 50 imports and 500,000 rows a day. Files need fewer than 1,000 columns and one sheet.

How many rows can I import into Pipedrive?

No more than 50,000 rows per spreadsheet import, with the file under 50 MB, according to Pipedrive's knowledge base. The file must be XLS, XLSX or CSV, have one tab per import, and include a header row with column names.

What is Zoho CRM's import limit per edition?

1,000 records on Free, 10,000 per batch on Standard, 20,000 on Professional and 30,000 on Enterprise. XLS, XLSX and VCF files are capped at 5,000 records per batch, so anything larger must be imported as CSV.

How many rows can I import into monday CRM?

monday CRM's import article says the file must have fewer than 50 columns and 8,000 rows, and be 10 MB or less. Importing into an existing board allows up to 10,000 rows. A board itself holds up to 10,000 items on most plans; monday says CRM Pro accounts can have up to 5 boards with 100,000 items each.

What is the GoHighLevel CSV import limit?

HighLevel's current import article (updated September 16, 2026) says the file should be under 30 MB, CSV only, with one sheet. An older troubleshooting article gives 20 MB or 10,000 rows, whichever comes first. If an import stalls, splitting into files of 10,000 rows or fewer is the safe choice.

Why did my CRM import fail?

The most common causes are a file with more than one sheet, phone numbers with brackets or dashes, dates in a different format than the one selected, owner names that match no user or several users, dropdown values that don't exist in the CRM yet, and blank rows that the importer reads as the end of the file.

How do I import a file that is over the limit?

Split it into smaller files below the row and size limit, keeping the same header row in each file, then import them one after another. For very large migrations, use the vendor's bulk tool or API instead of the in-app importer, such as Salesforce Data Loader or the HubSpot imports API.

Want a second opinion on your setup?

A free 30-minute call with an engineer. A written read on your current setup, whether or not you hire us.