---
description: Learn how to bulk import Contacts or add them individually.
title: Contact Import (How to)
image: https://assets1-proxy.respond.io/api/v1/image/assets%2F11f7a662b80a4675973850b067c01fa5%2F3f43c48b21b24f4e8b02b100c0c8fab0
---

[New🌍 WhatsApp API Calling is now available globally! Start making calls with respond.io today. Learn more![arrow-icon](https://assets1-proxy.respond.io/api/v1/image/assets%2F11f7a662b80a4675973850b067c01fa5%2Fe43213a7a9314673bd8d2060c25f9b87)](/whatsapp-business-calling-api)

Help me with... ⌘ 

1. [All Collections >](/help)
2. [ Product >](/help/product)
3. [ Contacts >](/help/contacts)
4. Contact Import (How to)

# Contact Import (How to)

![Avatar](https://assets2-proxy.respond.io/ph8r57dk1q9w/4GvzCieeTBRY4TRJUbIr4y/b92428e6b049d23f546269180534f7ea/Ryan_Tan_Avatar.svg)

Joshua Lim

· 22 Oct 2025

5 min read

## What is Contact Import?

Contact import allows you to add and update multiple Contacts on the platform.

Contact import is useful for the following reasons:

* **Sync a Contact List to the platform**  
Syncing your Contact List with the platform helps you identify Contacts when they message you.
* **Bulk update Contacts on the platform**  
Update the information of multiple existing Contacts on the platform instead of updating them one by one.
* **Initiate a conversation with the Contact**  
Start conversations with Contacts in your Contact List without needing them to send you the first message.

> Sending the first message is only applicable for WhatsApp, SMS and email, provided that the Contact's phone number or email address is added.

## Importing Contacts

The Contact Import process is divided into 3 parts: Upload CSV file, Mapping and Review.

### Part 1: Initiate a Contact Import

To import contacts, you need to upload a CSV file. Each row in your CSV file represents a contact and each column represents a contact field.

**Step 1:** In the **Contacts** Module, click on the arrow in the **Add Contact** button > **Import Contacts**.

![](https://assets2-proxy.respond.io/ph8r57dk1q9w/6lzAmy9uKPipFeILRv0J7b/e4c365617889137d861d78264784f3f4/contactimport.png?fm=jpg&q=80&w=640) 

> Alternatively, navigate to Settings > [Data Import](https://respond.io/help/workspace-settings/data-import) \> click the **Import Contacts** button.

**Step 2:** Upload a CSV file with the Contacts and details that you would like to import.

Ensure the CSV file fulfills the following requirements:

* Only CSV files are accepted for import.
* File size must be less than 20MB.
* File must contain a least one row.
* File must contain less than 200,000 rows.
* A First Name column is required to add new Contacts.
* At least one column must be mapped to an identifier (except for _Add_ _All Contacts Despite Duplicates_ import option).
* All phone numbers in the CSV file must include the country code and it is recommended to use the "+" sign, e.g. +60189988776.
* Recommended format for Date field: "YYYY-MM-DD". e.g. 2023-10-25

To see an example of a populated CSV file, download the sample by clicking on the hyperlink.

![](https://assets2-proxy.respond.io/ph8r57dk1q9w/3K0CRxQ06zo2438FT7nHGE/93c3e0efb4ba8221201ea3b91a141bc5/sample.png?fm=jpg&q=80&w=640) 

**Step 3:** Select the import purpose for this file.

| Import Purpose                      | Action                                                                                                                          |
| ----------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- |
| Add new contacts only               | Adds only new Contacts in the CSV file to the Workspace.                                                                        |
| Update existing contacts only       | Updates only existing Contacts in the Workspace with values from the file.                                                      |
| Add & update contacts               | Updates existing Contacts and add new Contacts to the Workspace.                                                                |
| Add all contacts despite duplicates | All Contacts in the file will be treated as new Contacts. You can review and merge duplicate Contacts manually on the platform. |

**Step 4:** Select an Identifier to recognize existing Contacts. The identifier can be a phone number or email. If your import purpose is **Update Existing Contacts Only**, you can also select **Contact ID** as an identifier.

![](https://assets2-proxy.respond.io/ph8r57dk1q9w/1WzMnl46CI3MksTEgca6uw/6b0099ddd7b81adddcf4e6c9612d902b/identifier.gif?w=480&fm=avif) 

> Do note that email addresses are not case-sensitive. This means that [john.smith@gmail.com](mailto:john.smith@gmail.com) and [John.Smith@gmail.com](mailto:John.Smith@gmail.com) will be recognized as the same email address on the platform.

> The identifier is not available for selection if you have selected the **Add all contacts despite duplicates** Import Purpose option in the previous step.

**Step 5:** Add Tags for all Contacts that are being added to or updated on the Workspace as needed. Then, click **Next**.

![](https://assets2-proxy.respond.io/ph8r57dk1q9w/4pO6XjPbW3H480RjXH7o1k/22c191c10c467104b8f3536decb35ff7/ta.png?fm=jpg&q=80&w=640) 

> An import tag will be generated automatically to identify each imported batch. This tag can be removed.

### Part 2: Map CSV Headers to Contact Fields

Map the column headers in the CSV file to Contact Fields in your Workspace. This determines which Contact Field will be updated with a column’s values. If a column header in the file perfectly matches a Contact Field name (e.g. Phone Number), it will be mapped automatically.

![](https://assets2-proxy.respond.io/ph8r57dk1q9w/35c1COrvniPYtYgtJBN9mx/a174a95361f2825af7d2334d40cf5334/mappi.png?fm=jpg&q=80&w=640) 

Ensure that the defined identifier is mapped. Each Contact Field can only be mapped once.

If you wish to skip a column so its values are not imported, uncheck the checkbox on its left. A minimum of one column must be selected to proceed with the import.

#### “**Do Not Overwrite” Checkbox and its Functions**

If you have selected the **Update existing contacts only** or **Add & update contacts** Import Purpose option, a **Do Not Overwrite** option will appear.

**When Do Not Overwrite is checked:**

* Fields with existing values will not be overwritten, values will be added only when the field is empty.
* New tags will be added without removing existing tags.

> By default, a value in the CSV file will replace the corresponding existing field value in your Workspace.

![](https://assets2-proxy.respond.io/ph8r57dk1q9w/4KJtvcToKTPOMua3JLLDqI/7e1e5ec280398cdb7b8c0c8077fd1c15/overwrite.png?fm=jpg&q=80&w=640) 

**Example:**

Contact A in your Workspace has the email [_contactabc@email.com_](mailto:contactabc@email.com). In the uploaded CSV file, Contact A is identified by their phone number and has the email address [_contact123@email.com_](mailto:contact123@email.com).

If the checkbox is unchecked (default), the existing value will be overwritten and Contact A’s email will be updated to [\_contact123@email.com](mailto:%5Fcontact123@email.com).\_

If the checkbox is checked, the existing value will not be overwritten and Contact A’s email will remain as [_contactabc@email.com_](mailto:contactabc@email.com).

> Once the columns have been mapped, click **Next**. The import file will then be validated. Keep in mind that importing larger CSV files will take longer.

### Part 3: Review Import

The number of Contacts that will be added and updated after the import, or skipped due to errors, will be reported. Once ready, click **Import** to proceed.

![](https://assets2-proxy.respond.io/ph8r57dk1q9w/2wYmsOfira53eaKk4nZQk1/4d5cd7bbc5182ffd1c75ac69f471c9f8/reviewimport.png?fm=jpg&q=80&w=640) 

> Rows containing errors will not be imported. To identify errors in the original rows, click on "Download error file" to download a CSV file with an “Error” column. Resolve the errors described in the error messages. Once done, upload the corrected CSV file or return to Part 1 to reconfigure the import.

Once the file has been validated, click **Import** to proceed. A dialog box will appear to confirm that the import has started.

![](https://assets2-proxy.respond.io/ph8r57dk1q9w/4z761vlgXNgBH6Y3hmkBOC/543f6bc2016a5e310986edb53beebd2e/dialo.png?fm=jpg&q=80&w=640) 

> The import process may take some time. You can monitor its progress by going to **Settings** \> **Data Import**.

## Check Import Result

You will be notified via email and the notifications center on the platform when the import job has been completed.

You can download the results file from your email or the Import History table in **Settings** \> **Data Import**. This file will be available for 7 days. The results file will contain 2 additional columns: _Import Status_ and _Errors_.

The Import Status column can have one of 4 possible statuses:

| Import Status | Result                                                                                                     |
| ------------- | ---------------------------------------------------------------------------------------------------------- |
| Imported      | Contact was added successfully.                                                                            |
| Updated       | Contact was updated successfully.                                                                          |
| Skipped       | Contact was skipped based on import purpose (e.g. new Contact in an Update Existing Contacts Only import). |
| Error         | Contact wasn’t imported due to error(s).                                                                   |

The Errors column will flag rows with errors detected during the import. Contacts in these rows were not imported. To import these Contacts, resolve the errors and retry.

## FAQ and Troubleshooting

### How many files I can import at a time?

You can only import one file per import.

### Why am I unable to start a new import?

Only one import job can be in progress at a time. Kindly wait until the import job is completed before starting a new one.

### What does the “Session expired” error mean?

You have a 1-hour window to proceed with an import job. If an import is not started within 1 hour at the Review stage, it will be automatically canceled and you will need to restart the import process.

### What if there are two Contacts with the same identifier in the CSV file?

Both Contact rows in the CSV file will be flagged in the Errors column of the error file. Their values will not be added to or updated on the Workspace.

### What if there are two existing Contacts with the same identifier in the Workspace?

If multiple contacts share an identifier value in the Workspace (e.g. duplicate Contact profiles or a shared email address or phone number used by two Contacts), an error will be indicated in the row with the same value in the CSV file.

### Are Tags compulsory for Contact imports?

No, they are not. You can add, update and remove Tags as you wish.

An import Tag will be automatically generated for every import to identify which Contacts were added or updated during the import. This Tag is optional and can be removed.

### Why are some existing Contacts not identified by the phone number identifier?

The phone number format has to be identical in the CSV file and Workspace for the number to be identified. If the same phone number has different formats (e.g. one is missing an area code), the existing Contact cannot be identified and the Contact in the file will be treated as a new Contact.

If you are trying to update existing Contacts only, this Contact will be skipped.

If you are trying to upload new Contacts, a new Contact profile will be created for this Contact.

Share this article

[![Telegram](https://assets1-proxy.respond.io/api/v1/image/assets%2F11f7a662b80a4675973850b067c01fa5%2F44daca77a4844f0c8fd29040ddeba057?width=22)](https://api.whatsapp.com/send?text=https://respond.io/help/contacts/contact-import)[![Facebook](https://assets1-proxy.respond.io/api/v1/image/assets/11f7a662b80a4675973850b067c01fa5/fff57eeb01160bc604392f519b4f3461ca16f0fa1b6a587b20b142cdf1ad0ba7?placeholderIfAbsent=true&width=22)](https://www.facebook.com/sharer/sharer.php?u=https://respond.io/help/contacts/contact-import)[![Linkedin](https://assets1-proxy.respond.io/api/v1/image/assets/11f7a662b80a4675973850b067c01fa5/7aaf8d87b5410844d83e06a4ed663e4f551b8c5ef51dbb20a8ff064a1eed9a0f?placeholderIfAbsent=true&width=22)](https://www.linkedin.com/sharing/share-offsite/?url=https://respond.io/help/contacts/contact-import)[![Twitter](https://assets1-proxy.respond.io/api/v1/image/assets%2F11f7a662b80a4675973850b067c01fa5%2F4e03e02422a94e8eab9b8b41457c2371?width=22)](http://twitter.com/share?url=https://respond.io/help/contacts/contact-import)

## 

Related articles 👩‍💻

* [SegmentsLearn how to use Segments to group Contacts based on certain criteria and filters. ](/help/contacts/segments)
* [ActivitiesLearn more information on how to manage interactions with your Contacts. ](/help/contacts/activities)
* [Contact DetailsLearn how to use the Contact details panel to gain more insights on your Contacts. ](/help/contacts/contact-details)
* [Contacts OverviewThe Contacts module allows you to manage all the Contacts the platform has interacted with. ](/help/contacts/contacts-overview)

Can't find what you're looking for? 🔎

[Contact Support](/contact-us)

2025-12-05T03:58:37.292Z

help

```json
[{"@context":"https://schema.org","@type":"TechArticle","articleBody":"Learn how to bulk import Contacts or add them individually.","author":{"@type":"Person","image":"https://assets2-proxy.respond.io/ph8r57dk1q9w/4GvzCieeTBRY4TRJUbIr4y/b92428e6b049d23f546269180534f7ea/Ryan_Tan_Avatar.svg","name":"Joshua Lim","url":"https://respond.io/author"},"dateCreated":"2025-01-28T05:30:52.000Z","dateModified":"2025-10-22T10:08:59.204Z","datePublished":"2025-01-28T05:30:52.000Z","headline":"Contact Import (How to)","image":"https://assets2-proxy.respond.io/ph8r57dk1q9w/6lzAmy9uKPipFeILRv0J7b/e4c365617889137d861d78264784f3f4/contactimport.png","mainEntityOfPage":"https://respond.io/help/contacts","publisher":{"@type":"Organization","logo":"https://respond.io/favicon/favicon.svg","name":"respondio"},"thumbnailUrl":"https://assets2-proxy.respond.io/ph8r57dk1q9w/6lzAmy9uKPipFeILRv0J7b/e4c365617889137d861d78264784f3f4/contactimport.png","url":"https://respond.io/help/contacts/contact-import"},{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","name":"Help","item":"https://respond.io/help","position":1},{"@type":"ListItem","name":"Product","item":"https://respond.io/help/product","position":2},{"@type":"ListItem","name":"Contacts","item":"https://respond.io/help/contacts","position":3},{"@type":"ListItem","name":"Contact Import (How to)","item":"https://respond.io/help/contacts/contact-import","position":4}]}]
```
