## Advanced Import

Import with custom fields or update existing records

### Overview

You can bulk import clients or companies using a .csv file. Both support custom fields and updating existing records.

**For clients**, the required fields are _First name_, _Last name_, and _Email_. You can also use a _Full name_ field instead of separate first and last name fields.

**For companies**, the only required field is _Company Name_.

#### Exporting your data

You can export your existing clients or companies from the _CRM_ page by clicking _Export_ in the top-right corner. You can also export from external tools like Google Sheets, Hubspot, or Airtable — just locate the download or export button and select the .csv format.

#### Importing your data

Once you have your .csv file with the required fields, you're ready to import. Note that there is currently a limit of 200 rows per CSV file.

**Import steps**

1. Navigate to the _CRM_ page.
2. Select _Import_ and choose the _Clients_ or _Companies_ tab.
3. Upload your CSV file by clicking on _Choose file_ or dragging and dropping.
4. You'll be automatically taken to the _Match_ step.

#### Match

The match step will show a preview of each field in your .csv. You will want to match each field to the relevant property in Assembly.

**Automatic matching on required fields**

If your .csv field titles match the required fields, they will automatically map correctly and be shown as _Mapped successfully_. For clients, this includes _First Name_, _Last Name_, and _Email_. For companies, this includes _Company Name_.

**Automatic matching on custom fields**

If you have additional fields in your .csv file and have set up corresponding custom fields in Assembly with the same titles, the rows that contain values for these fields should automatically match as well. For example, you might have a custom field set up in Assembly called _Address_ and your .csv file might also have a field called _Address_. The values will map automatically to the _Address_ custom field in Assembly. This works the same way for both client and company custom fields.

**Manual matching on required fields**

If your .csv fields have different names, you'll need to manually match them using the dropdown menu. For example, if your .csv uses _Name_ and _Surname_, you should match _Name_ to _First Name_ and _Surname_ to _Last Name_.

**Manual matching on custom fields**

If you have additional fields in your .csv file and do not have related custom fields set up in Assembly, you can choose to ignore mapping, select a field you want to map to from the dropdown, or create a new field from the dropdown.

#### Preview

After confirming field mappings, click _Next_ in the top-right to go to the Preview page. Check that all fields are matched correctly.

For client imports, the preview shows tabs for _New Clients_, _Updated Clients_, and _Skipped Rows_. For company imports, the tabs are _New Companies_, _Existing Companies_, and _Skipped Rows_.

If everything looks correct, choose either _Import only_ or _Import and invite_ in the top-right. If you choose _Import and invite_, invite emails will automatically be sent to all new imported clients. (The invite option is only available for client imports.)

Once you click either import option, you'll be taken back to your _CRM_ page and should see an alert in the bottom-right letting you know the import job has started successfully.

#### Updating existing records

You can use the import feature to update existing clients or companies in bulk. The process is the same for both: export your current data, edit the fields you want to update, and re-import the file.

**Export your data**

Export your list of clients or companies to a .csv by clicking _Export_ in the top-right corner of the _CRM_ page. This will download a file with all of your current data and custom fields.

If you only want to update some records, you can use the Search button at the top to filter your list first — the Export button will export only the filtered results.

**Edit your fields**

Open the exported file in Google Sheets, Numbers, Excel, or another spreadsheet editor. Then make changes and/or add values to the fields you want to update.

Note: Each record type uses a unique identifier to match existing records. For clients, the identifier is **email** — if you change a client's email, a new client will be created instead. For companies, the identifier is **company name** — if you change a company's name, a new company will be created instead.

Once you've made your changes, export or download the updated document in .csv format.

**Import your changes**

To apply the updates in Assembly, go to the CRM page and click Import. Choose the appropriate tab (Clients or Companies), then upload your file.

In the Match step, all of the fields should be matched, except for Status and Creation date. Click Ignore column for both of these fields, and then click Next in the top right.

In the Preview step, you should not see any new records (unless you have added new rows to the spreadsheet). Click on the Updated tab to preview the updates.

If everything looks correct, click Import only in the top-right.

You will be taken back to your _CRM_ page and a message should appear at the bottom that your changes were imported successfully. Refresh the page to see the updated fields.

2. [Overview](/content/guide/advanced-import#overview/index.html)
3. [Exporting your data](/content/guide/advanced-import#overview-exporting-your-data/index.html)
4. [Importing your data](/content/guide/advanced-import#overview-importing-your-data/index.html)
5. [Match](/content/guide/advanced-import#overview-match/index.html)
6. [Preview](/content/guide/advanced-import#overview-preview/index.html)
7. [Updating existing records](/content/guide/advanced-import#overview-updating-existing-records/index.html)
