Skip to content
Customers & vehicles

Importing customers from Excel

Bring your existing customer list into SalesThumb from a CSV file. Most imports finish in under a minute.

5 min read

Watch: How to Import Your Customer List (0:56)

If your customer list lives in Excel, Google Sheets, or another shop tool, export it to CSV and you can pull it into SalesThumb in one pass. This walks through the import end-to-end.

Step 1 — Prepare your file

SalesThumb's importer accepts CSV only — if your list is an Excel workbook, use "Save As" / "Export" to CSV first (Google Sheets: File → Download → Comma Separated Values). Up to 5,000 customers per file.

  • A name column (full name, or a separate first/last split — either works)
  • Phone and email are optional — include them if you have them

Optional columns we recognize automatically:

  • Address (street, city, state, zip)
  • Company name
  • Vehicle make / model / year / trim / color / VIN / plate
  • Tags (comma-separated)
  • Notes

Column headers don't have to match exactly — the importer does fuzzy matching ("Cell" → phone, "E-mail" → email, "Year" → vehicle year).

Step 2 — Clean the data first

Five minutes of cleaning saves an hour of fixing imports. Look for:

  • Test rows ("John Doe", "Test Customer", phone 5555555555). Delete.
  • Duplicates. Sort by phone or email — if you see the same number twice, merge before import.
  • Blank rows. Common in exported spreadsheets. Delete.
  • Phone format consistency. SalesThumb normalizes formats automatically, but if you have a mix of international, parenthesized, and dashed numbers, scan for obvious errors.

Step 3 — Upload

In SalesThumb, go to Customers → Import (there's an Import button on the customer directory). Drop the CSV in, then answer "Which platform is this export from?" (pick Other (CSV) for a spreadsheet) — the Import button stays disabled until you do. The importer reads your headers, guesses a mapping for each column, and shows a preview so you can confirm or fix any misreads before continuing.

Step 4 — Choose duplicate handling

Before the import runs, pick how to handle rows that match an existing customer by phone or email, under "On duplicate (same email or phone)":

  • Skip (default) — matching rows are left alone
  • Merge — new fields from the file are added onto the existing record
  • Allow duplicates — creates a new record anyway; useful for B2B fleets where one phone might legitimately have multiple records

For most shops, "Skip" is correct.

Step 5 — Run the import

Click Import. The import runs while you wait — it processes row by row in a single request, so for a few thousand rows expect it to finish in well under a minute; there's no background job and no completion email or in-app notification. When it's done you'll see a summary right on the page:

  • Added
  • Updated (merged into an existing customer)
  • Skipped
  • Vehicles created
  • Row-level errors (row number and message, first 10 shown)

Common errors

  • Phone numbers aren't checked — a number that's too short or has letters still imports, so fix obvious typos in the source file first.
  • Missing name — rows without a first and last name are left out of the import (shown as "N skipped (missing name)"). Fix in source.

What gets imported, what doesn't

  • Customer records: yes
  • Vehicles attached to customers: yes
  • Tags: yes
  • Notes: yes
  • Quote/job history: NO — we can't import legacy quotes/jobs from a spreadsheet because the structure is too lossy. Keep the old tool read-only for a while for historical lookups.

Related

Need more help?

The in-app help widget routes directly to our team.

General product and business information, not legal, tax or financial advice.

ShopMonkey is a trademark of its owner. Use here is for comparison and identification purposes only and does not imply endorsement, partnership, or affiliation.