Importing Customers from CSV
Already have a customer list — in another app or a spreadsheet? Bring it in with a CSV import. HandyBook auto-detects your columns (and lets you map the rest), so any header names work. Not sure how to format it? Click Download sample template on the import screen for a ready-to-fill CSV. We import these fields: Name, Email, Phone, Address, City, State, ZIP, Notes — each row needs at least a name, email, or phone.
Step 1: Export to CSV
If you're coming from another tool, export your customers to CSV first:
- Jobber / Housecall Pro — settings → data export → customers
- QuickBooks — Customers list → Export → CSV (or use the dedicated QuickBooks import)
- Google Contacts —
contacts.google.com → Export → Google CSV - A spreadsheet — save as
.csv(HandyBook only accepts CSV, not.xlsx)
The first row should be your column headers.
Step 2: Upload
- Go to Import customers (
/dashboard/import) - Drop your CSV on the upload box, or click Choose file
Limits: up to 5,000 customers per file, 5 MB max. Split larger lists into multiple files.
Step 3: Match columns
HandyBook reads your headers and auto-maps the ones it recognizes. For each column, pick a destination from the dropdown:
Ignore · Name · Email · Phone · Address · City · State · ZIP · Notes
Separate first/last name columns both mapped to Name are joined with a space. Anything you leave on Ignore is skipped. The button shows how many rows are importable.
Step 4: Preview and import
The preview shows the first 10 mapped records (name, email, phone, address). If it looks right, click Import [N] customers. A row is only importable if it has at least a name, email, or phone.
Results
When it finishes you'll see:
- New customers added
- Skipped (already existed) — matched an existing record, so no duplicate was created
- Errors (if any) — rows that couldn't be saved
Click View customers to see them, or Import another file.
Common gotchas
- Excel and phone numbers — format the phone column as Text before saving, or leading zeros and
+codes get mangled - Address in one column — map it all to Address; or split City/State/ZIP into their own columns first
- Property Details / Access Notes — these aren't import columns. Add them per customer afterward (they're stored encrypted)
FAQ
Does importing email my customers? No. Import never sends anything. Customers won't know until you contact them.
Can I import tags, status, or lead source via CSV? Not currently — the supported columns are name, email, phone, address, city, state, ZIP, and notes. Set Status and Referral Source per customer after import.
Can I import jobs too? Import customers first. Jobs are added separately.