# Import Contacts

> Bring customers in from a Jobber export or a CSV file, and skip the ones you already have.

Source: https://jobwisepro.com/help/contacts/import-contacts
Category: Contacts
Updated: 2026-10-22

Import contacts from Jobber or a CSV file. The [**Import Data**](/go/settings/import)
page under **Settings** shows what each file will import before
anything is added.

## Export your contacts from Jobber

Jobber emails its client list as a CSV file, which the import reads directly.

1. In Jobber, open **Clients** from the side menu.
2. Select **More Actions**, then **Export Clients**.
3. Select **CSV**. Jobber emails the file to you. Lists over about 1,500 clients arrive as several files, and you can upload them together.

Jobber only lets admin users export clients, and the export is not on every Jobber plan. See Jobber's [Export Client Information](https://help.getjobber.com/en/articles/export-client-information) guide for details.

## Upload CSV files

Add one or more CSV files in the **Upload CSV Files** card.

1. Open **Import Data** under **Settings**.
2. Drag CSV files onto the page, or click the plus button.
3. To remove a file, click its x icon.

Each file gets its own section, headed by its file name. The first non-blank row is
the header.

> **Note:** Only roles that can edit contacts see **Import Data**.
> For role settings, see [Create and Edit Roles and Permissions](/help/team/roles-and-permissions).

## Check the detected type and columns

Check each file before importing.

1. Check the badge beside the file name. A contact list shows **Detected: Contacts**.
2. Check the **Match Columns** card. Each field lists the columns it reads from.
   - To stop a field reading a column, click the x icon on that column's badge.
   - **Add column…** appears when a field takes several columns or has none yet.
3. Check the **Preview** card. It shows up to eight contacts with their phone, address, and tags.

Jobs and quotes files have no **Match Columns** card.

## Import the files

The **Import** card imports every file with rows ready, in one run.

1. Check or clear **Skip records that already exist in this organization**. It starts checked
   and applies to every file.
2. Click **Import all**.

Each file's section then shows **Imported**, or **Imported with problems** when some rows fail to
save. Contact files
import first, so jobs and quotes can link to them.

If a file fails as a whole, the run stops there. That file and later files stay ready for the next
**Import all**.

After a run with no failed rows, the summary card at the bottom reports records imported and
existing contacts skipped. **Start over** removes every file from the page. **View contacts**
appears when at least one contact imports and opens the [contact list](/go/contacts).

> **Note:** With QuickBooks connected, imported contacts are queued to sync to QuickBooks.

## How existing contacts are matched

Each row is checked against your contacts before saving.

- A row matches by email, or by phone once both numbers use one standard format.
- Deleted contacts do not count as a match.
- With **Skip records that already exist in this organization** checked, a matching row is left out.
  The file's section counts the skipped rows but does not list them.
- With the box cleared, a matching row imports as a new contact.

> **Warning:** Clearing the box leaves two copies of each matching contact.
> To combine them, see [Merge Duplicate Contacts](/help/contacts/merge-duplicate-contacts).

## Fields a column can feed

A column feeds the field its header matches. When several columns feed one field, a row uses the
first with a value. Columns that match no field are
not imported.

- **First name** and **Last name** hold the contact's name. A column headed Name feeds
  **Full name**.
- **Full name** fills only blank fields. It splits at the last word: the text before that word
  fills **First name**, and the last word fills **Last name** only when **First name** is blank or
  matches that text. A one-word name fills **First name** only.
- **Company name** takes the full name when it is blank and the row is marked **Is company**. A row with no first, last, or full name uses its company
  name as the first name, with a warning.
- **Email** uses the first valid address; other addresses go into the notes. A row with no valid
  address still imports, with a warning.
- **Phone** uses the first valid number: ten digits, or eleven digits starting with 1. Invalid
  numbers are ignored with a warning, and other valid numbers go into the notes.
- **Tags** split on commas. Repeats within a row are dropped, and missing tags are created. A column
  headed Status, Stage, or Labels also feeds **Tags**.
- **Lead source** maps values such as Google Ads, Phone call, or Web. Other text becomes the
  campaign name.
- **Street address**, **Street address line 2**, **City**, **State**, **Postal code**, and
  **Country** form the contact's primary address. A blank country becomes US.
- A street value ending in city, state, and ZIP, such as 123 Main St, Louisville, KY 40299, is split
  when the row has no city, state, or postal code.
- Billing columns, such as Billing Street 1, fill in only when the matching address column is blank.
- **Address label** is saved on the address. A column headed Property name feeds it.

## Rows that are skipped or have problems

- **Skipped rows** are rows with no name or company name, rows marked archived, and repeats of an
  earlier row. They are listed under **Skipped rows** in **Review Before Importing**.
- A repeat is skipped only when its name also matches. A repeated email or phone under a different
  name imports, with a warning.
- **Warnings** are grouped by message, with the rows they affect. A row with a warning still imports.
- **File problems** lists short and long rows. Short rows import with blank missing values, and long
  rows import with extra values ignored.
- Rows that fail to save are listed under **Failed** with their row numbers. The other rows still
  import.
- A file that would pass your plan's contact limit adds no contacts.
- The import refuses CSV text longer than 10 million characters. The file picker is set to a
  20 MB maximum.
