Skip to content
Free tool · No signup

CRM import CSV checker.

Drop a contact file and see what LiftUp, HubSpot, Pipedrive, Zoho, Freshsales or monday CRM would refuse, skip or read wrong. Then download a cleaned copy.

  • Runs in your browser
  • Nothing is uploaded
  • Limits from each CRM’s own help pages

Drop a CSV here, or

It’s read in your browser. Nothing is uploaded.

Excel or Numbers file? Save it as CSV (UTF-8) first.

Your check appears here.

Pick the CRM you’re importing into, then drop a CSV. You’ll see every row the importer would refuse, skip or read wrong, and get a cleaned copy.

The short answer

How do I check a CSV before importing it into a CRM?

Check four things: the file is under the CRM’s size and row limits, every row has the field the CRM requires (an email for HubSpot, a name for Pipedrive), emails and phone numbers are valid, and no email appears twice. This checker does all four for the CRM you pick, flags dates that read two ways, and writes a cleaned UTF-8 file.

How it works

The limits each CRM publishes.

Each limit links to the page we read it on. Where a CRM doesn’t publish a limit, the checker doesn’t invent one.
  1. 01

    LiftUp: 2,000 rows, 5 MB, commas only

    Every row needs an email or a phone. Duplicate emails are skipped across the whole workspace, statuses must be new, contacted, qualified, won, lost or spam, and imports count toward the monthly lead allowance.

    Source: LiftUp CRM import, checked 18 Oct 2026

  2. 02

    HubSpot: 512 MB, 1,048,576 rows

    Contacts need an email, which is also how HubSpot spots duplicates. Free tools cap files at 20 MB. Phone numbers go in as +[country code][number].

    Source: HubSpot: Set up your import file, checked 18 Oct 2026

  3. 03

    Pipedrive: 50 MB, 200,000 rows

    People need a name. Pipedrive merges a person when the name and any one of phone, email or organization match.

    Source: Pipedrive: Importing data with spreadsheets, checked 18 Oct 2026

  4. 04

    Zoho CRM: 25 MB, rows by edition

    From 1,000 rows per file on Free to 20,000 on Standard, 50,000 on Professional, 100,000 on Enterprise and 200,000 on Ultimate, with up to 500 columns. Leads need a last name.

    Source: Zoho CRM: Import data into a module, checked 18 Oct 2026

  5. 05

    Freshsales: 5 MB, a last name

    CSV or XLSX. Duplicates match exactly, so +1-900-324-1245 and 9003241245 count as two different numbers.

    Source: Freshsales: Import records from a CSV or XLSX file, checked 18 Oct 2026

  6. 06

    monday CRM: 10 MB, under 8,000 rows

    Fewer than 50 columns, a name on every item, and dates written YYYY-MM-DD.

    Source: monday CRM: Import from Excel, checked 18 Oct 2026

  7. 07

    Valid email: the browser’s rule, plus a dot

    An email passes when it matches the pattern browsers use for an email field (text, an @, and a domain of letters, digits and hyphens) and its domain has at least one dot, which LiftUp’s importer also requires.

    Source: WHATWG HTML: valid e-mail address, checked 18 Oct 2026

  8. 08

    Valid phone: E.164

    International numbers have at most 15 digits after the +. Numbers without a country code still import, but match and dial badly across countries.

    Source: ITU-T Recommendation E.164, checked 18 Oct 2026

  9. 09

    Valid CSV: RFC 4180

    One header row, the same number of values on every line, and quotes around any value that holds a comma, quote or line break.

    Source: RFC 4180: Common Format for CSV Files, checked 18 Oct 2026

Worked example

The sample file, checked for LiftUp.

Six contacts with the faults we see most. “Try a sample file” in the checker loads exactly this.
Rows
6
Rows with errors
3
Duplicate emails
1
Invalid email
sara@globex
Unknown status
Hot
Ambiguous date
03/04/2026

Tom Baker has neither an email nor a phone, so LiftUp skips the row. Jane Cooper’s second row repeats her email, so LiftUp skips it too. Rahul Mehta’s “1.200,50” would save as 1.2, and his number has no country code.

Good to know

What the checker doesn’t do.

  • It reads CSV only. Save an Excel or Numbers file as “CSV UTF-8” first.
  • It doesn’t know your CRM’s custom required fields or existing records, so it can’t see duplicates already in your account.
  • Salesforce isn’t listed yet: its help pages couldn’t be read to confirm the limits.
  • Phone checks follow E.164 length and characters; they don’t confirm a number is in service.

FAQ

CSV import questions, answered.

Something the tool gets wrong? Tell us and we fix it.

Is my file uploaded anywhere?

No. The file is read by your browser and never leaves your device. Only the report form, if you fill it in, sends your name and email, plus a one-line summary of the result.

Why does LiftUp say my first column isn’t recognised?

Excel’s “CSV UTF-8” format starts the file with a hidden byte-order mark, and LiftUp’s importer currently reads it as part of the first header. The cleaned file from this checker leaves the mark out, so the header maps.

What counts as a duplicate?

The same email address, ignoring capital letters, appearing on more than one row. The cleaned file keeps the first row and drops the rest. LiftUp also skips emails that are already in your workspace.

How many contacts can I import into LiftUp?

Up to 2,000 rows and 5 MB per file. Imports count toward the plan’s monthly lead allowance: 100 on Free, 1,000 on Starter and 10,000 on Growth. Rows past the allowance are skipped.

Which date format is safest?

YYYY-MM-DD, such as 2026-11-30. Every CRM here reads it the same way. A date like 03/04/2026 is March 4 in some importers and 3 April in others.

Import once. Then stop importing.

LiftUp takes leads straight from your forms through one API call per product, scored and with a reply deadline. Free for 2 users.

No credit card · full Growth trial · cancel from the dashboard