> ## Documentation Index
> Fetch the complete documentation index at: https://relate.so/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Import data

> Learn how to quickly import your data with AI

## Overview

You can import your existing customer data into Relate by uploading a CSV or Excel file.

Relate AI automatically detects the meaning of each column and maps the data to the appropriate fields.
You do not need to manually map columns or create custom fields in advance.

## What you need to know before importing customer data

<Accordion title="1. Import data types">
  Relate supports four data types for import.

  * [Organizations](/docs/features/organizations)
  * [Contacts](/docs/features/people)
  * [Processes](/docs/features/processes)
  * [Lists](/docs/features/lists)

      <img src="https://mintcdn.com/relateso/86tgV1VjPWhQUC-1/images/setup/list-import-org.png?fit=max&auto=format&n=86tgV1VjPWhQUC-1&q=85&s=068238d9797af178f4a84705afd74ca8" alt="Relate Data" width="1776" height="1610" data-path="images/setup/list-import-org.png" />

  **Organizations are the primary data type** in Relate, and Contacts are always associated with Organizations.

  Processes and Lists are a series of deal closing processes and customer lists that you create using Organizations and Contacts.
</Accordion>

<Accordion title="2. Data Fields">
  Each data type has its own default fields.

  Some fields are required:

  1. Organizations: **Organization name** is required.
  2. Contacts: **Contact name** or **Email** is required.
  3. Processes / Lists: Check the [Entry](/docs/features/processes#1-entry) type (Organizations or Contacts) of the selected process/list, and proceed with step 1 or 2.

  Below you’ll find a quick overview of default fields for each data type.

  <Accordion title="Organizations">
    * **Organization name (Required)**
    * Domain (Website): If not provided, the domain is automatically populated using the email domain of associated contacts.
    * Description
    * Manager
  </Accordion>

  <Accordion title="Contacts">
    * Contact name
    * Email
    * Title
    * Phone number
  </Accordion>

  <Accordion title="Processes">
    By default, processes have different default fields depending on whether the [Entry](/docs/features/processes#1-entry) type is Organization or Contact.

    Below are the default fields specific to Processes.

    * Value
    * Status
    * Assignee (assignee email is required)
    * Contact
  </Accordion>

  <Accordion title="Lists">
    Lists do not have additional default fields beyond Organizations and Contacts fields.
  </Accordion>
</Accordion>

<Accordion title="3. Custom fields">
  Custom fields are fields **created in addition to Relate’s default fields.**

  During  import, Relate AI analyzes each column in the file.
  If a column cannot be mapped to an existing field, **a new custom field is automatically created and mapped.**

  You do not need to create custom fields before importing.

  <Note>
    [**Review and edit AI mapping results**](#column-mapping-change)

    If you need to adjust the AI-generated mappings, you can change a column to a different field or create a new field and map it directly.
  </Note>
</Accordion>

<br />

## How to import your data

### Step 1. Upload your file

* Open the Relate app and select `Workspace settings` from the top-left menu.

<img src="https://mintcdn.com/relateso/xJPnqvJp2uFzJcGF/images/setup/ai-import-ss/ws.jpeg?fit=max&auto=format&n=xJPnqvJp2uFzJcGF&q=85&s=19271eb608853c2f9eca968a2ea9db07" alt="Workspace settings" width="300" style={{ display: "block", margin: "4px 0 12px 32px", boxShadow: "0 6px 18px rgba(0, 0, 0, 0.16)", borderRadius: "8px" }} data-path="images/setup/ai-import-ss/ws.jpeg" />

* Select `Import` from the left sidebar, and click `Import contacts` in the top-right corner.
  <img
    src="https://mintcdn.com/relateso/dV49Fb9APUOflIgk/images/setup/ai-import-ss/all.eng.jpeg?fit=max&auto=format&n=dV49Fb9APUOflIgk&q=85&s=dcc566e4fff7abeb045825c53f98f8f7"
    alt="Upload file"
    style={{
  display: "block",
  margin: "12px auto 0",
  boxShadow: "0 6px 18px rgba(0, 0, 0, 0.16)",
  borderRadius: "8px"
  }}
    width="1951"
    height="942"
    data-path="images/setup/ai-import-ss/all.eng.jpeg"
  />

* Click `Select file` and upload a CSV or Excel file.

### Step 2. Select duplicate handling options

After uploading the file, select how to handle duplicate data.

<img
  src="https://mintcdn.com/relateso/dV49Fb9APUOflIgk/images/setup/ai-import-ss/duplicate.png?fit=max&auto=format&n=dV49Fb9APUOflIgk&q=85&s=11f1c4cb176192a78b85a9cd2a74dc67"
  alt="Duplicate handling"
  width="240"
  style={{
  display: "block",
  margin: "0 auto",
  boxShadow: "0 6px 18px rgba(0, 0, 0, 0.16)",
  borderRadius: "8px"
}}
  data-path="images/setup/ai-import-ss/duplicate.png"
/>

* `Overwrite with new values`

  Even if existing Contacts/Organizations already have values, all fields are updated using the values from the imported file.

* `Only fill empty fields`

  Existing values are preserved, and only empty fields are filled.

Import data based on your purpose by selecting one of the cases below.

<Accordion title="🔹 Case 1. Importing data into Relate for the first time">
  **This applies if:**\
  ➡️ You are using Relate for the first time\
  ➡️ There is little or no existing data, or existing data is not important

  **Recommended options**\
  ✅ `Overwrite with new values`\
  ✅ `Only fill empty fields`

  <Note>
    For an initial import, both options produce the same result.
  </Note>
</Accordion>

<Accordion title="🔹 Case 2. Updating existing data with the latest information">
  **This applies if:**\
  ➡️ Contacts/Organizations already exist in Relate\
  ➡️ You want to broadly update existing data using the latest CSV file or external data

  **Recommended option**\
  ✅ `Overwrite with new values`

  <Note>
    When this option is selected, all fields are updated using values from the imported file, even if existing values are present.
  </Note>
</Accordion>

<Accordion title="🔹 Case 3. Keeping existing data and filling in missing information">
  **This applies if:**\
  ➡️ Existing data is highly reliable\
  ➡️ You only want to fill empty fields or supplement newly added information\
  ➡️ You want to add new data without modifying existing values

  **Recommended option**\
  ✅ `Only fill empty fields`

  <Note>
    When this option is selected, existing values are preserved and only empty fields are filled using the imported data.
  </Note>
</Accordion>

After selecting a duplicate handling option, click `Next` in the top-right corner to start AI mapping.

### Step 3. Review AI mapping results

On the next screen, Relate AI analyzes the meaning of each column and displays the automatically mapped results.

<img
  src="https://mintcdn.com/relateso/dV49Fb9APUOflIgk/images/setup/ai-import-ss/1.eng.jpeg?fit=max&auto=format&n=dV49Fb9APUOflIgk&q=85&s=0688c83b1dbc4189f120ef42dbc0adbe"
  alt="1"
  style={{
display: "block",
margin: "12px auto 0",
boxShadow: "0 6px 18px rgba(0, 0, 0, 0.16)",
borderRadius: "8px"
}}
  width="1977"
  height="934"
  data-path="images/setup/ai-import-ss/1.eng.jpeg"
/>

<Tip>
  Field types are divided into Contact Fields and Organization Fields.

  <div style={{ display: "grid", gap: "4px" }}>
    <div style={{ display: "flex", alignItems: "center", gap: "8px" }}>
      <img src="https://mintcdn.com/relateso/dV49Fb9APUOflIgk/images/setup/ai-import-ss/contact_icon.png?fit=max&auto=format&n=dV49Fb9APUOflIgk&q=85&s=2e34f0a31a997e10e47de34c647b2d31" alt="Contact Field" width="30" data-path="images/setup/ai-import-ss/contact_icon.png" />

      <span style={{ fontWeight: 600 }}>Contact Field:</span>
      <span style={{ whiteSpace: "nowrap" }}>Columns selected as Contact Fields are imported as **Contacts**.</span>
    </div>

    <div style={{ display: "flex", alignItems: "center", gap: "8px" }}>
      <img src="https://mintcdn.com/relateso/dV49Fb9APUOflIgk/images/setup/ai-import-ss/org_icon.png?fit=max&auto=format&n=dV49Fb9APUOflIgk&q=85&s=6230cb6c868b84e736081f97a152f4db" alt="Organization Field" width="30" data-path="images/setup/ai-import-ss/org_icon.png" />

      <span style={{ fontWeight: 600, whiteSpace: "nowrap" }}>Organization Field:</span>
      <span style={{ whiteSpace: "nowrap" }}>Columns selected as Organization Fields are imported as **Organizations**.</span>
    </div>
  </div>
</Tip>

<span id="column-mapping-change" style={{ scrollMarginTop: "120px" }} />

#### Change column mapping

* When you click the field mapped to each column, a list of available fields is displayed. You can select a different field from the list to change the column mapping.

* If there is no suitable field to map, you can click `Add a custom field` in the top-right corner to create a new field and map it immediately.

  <img src="https://mintcdn.com/relateso/dV49Fb9APUOflIgk/images/setup/ai-import-ss/add-eng.png?fit=max&auto=format&n=dV49Fb9APUOflIgk&q=85&s=14a63055da52d83feed48d38640233e9" alt="add custom field" width="320" style={{ display: "block", margin: "0 auto" }} data-path="images/setup/ai-import-ss/add-eng.png" />

### Step 4. Run the import

* After reviewing the mapping results, click the `Import` button in the top-right corner.

* When the import is complete, you are redirected to the result page.

<br />

<br />

## View import results

After the import is complete, the result page shows an overview of data that was **created, updated, or failed**.

<img
  src="https://mintcdn.com/relateso/dV49Fb9APUOflIgk/images/setup/ai-import-ss/import-result.png?fit=max&auto=format&n=dV49Fb9APUOflIgk&q=85&s=d1aad31c90a3b40bb597919dbf5a926b"
  alt="import-result"
  style={{
display: "block",
margin: "0 auto",
boxShadow: "0 6px 18px rgba(0, 0, 0, 0.16)",
borderRadius: "8px"
}}
  width="2386"
  height="254"
  data-path="images/setup/ai-import-ss/import-result.png"
/>

> #### Contact import results

The left side of the top section shows a summary of Contact import results.

* Contacts found: Number of contacts detected during the import process

* **created**: Number of newly created contacts

* **updated**: Number of existing contacts that were updated

* **failed**: Number of contacts that failed to import

<span style={{ display: "block", height: "6px" }} />

> #### Organization import results

The right side of the top section shows a summary of Organization import results.

* Organizations found: Number of organizations detected during the import process

* **created**: Number of newly created organizations

<Note>
  **When organization information is included in the import file**

  Existing organizations are automatically matched.
  A new organization is created only when no matching organization is found.
</Note>

<span style={{ display: "block", height: "6px" }} />

> #### Review failed records

If there are rows that failed to import, you can review the reason in the `Failed Records` section at the bottom of the result page.

<img
  src="https://mintcdn.com/relateso/dV49Fb9APUOflIgk/images/setup/ai-import-ss/failed.png?fit=max&auto=format&n=dV49Fb9APUOflIgk&q=85&s=5607acd652be049ef6454c62a47ad616"
  alt="failed records"
  style={{
display: "block",
margin: "0 auto",
boxShadow: "0 6px 18px rgba(0, 0, 0, 0.16)",
borderRadius: "8px"
}}
  width="2240"
  height="450"
  data-path="images/setup/ai-import-ss/failed.png"
/>

Each failed row displays the following information:

* Row: Row number in the original file

* Error: Reason the import failed

* Data: Original data for the row

Common failure reasons include:

⛔️ `Invalid email format`: The email format is invalid

⛔️ `Duplicate email in import`: The same email appears more than once in the import file

⛔️ `Email or name is required`: Both contact email and contact name are missing or invalid

<span style={{ display: "block", height: "6px" }} />

> #### Reprocessing failed records

Click `Download CSV` on the right side of the Failed Records section to download a CSV file containing only failed rows.

After fixing the errors in the file, run the import again to import the missing data.

## Import directly into Processes or Lists

If you want to upload contacts or organizations and import them directly into a specific process or list, you can start the import from that process or list.

**Step 1. Select or create a process/list**

Select an existing process/list, or create a new one.

<img
  src="https://mintcdn.com/relateso/dV49Fb9APUOflIgk/images/setup/ai-import-ss/makeprocess.png?fit=max&auto=format&n=dV49Fb9APUOflIgk&q=85&s=1654583702c5244d0ad4a13493de761d"
  alt="Select or create a process/list"
  width="320"
  style={{
display: "block",
margin: "12px auto 16px",
boxShadow: "0 6px 18px rgba(0, 0, 0, 0.16)",
borderRadius: "8px"
}}
  data-path="images/setup/ai-import-ss/makeprocess.png"
/>

Each process/list has a single entry type (either contact or organization), so be sure to select one that matches the type of data you want to import.

**Step 2. Select CSV import**

From the process or list you want to import into, click `+ New contact` or `+ New organization` at the top.

<img
  src="https://mintcdn.com/relateso/dV49Fb9APUOflIgk/images/setup/ai-import-ss/importfromcsv.png?fit=max&auto=format&n=dV49Fb9APUOflIgk&q=85&s=005b53e6c19a4ee69596e3602b9119ae"
  alt="Import from CSV option"
  width="320"
  style={{
display: "block",
margin: "12px auto 16px",
boxShadow: "0 6px 18px rgba(0, 0, 0, 0.16)",
borderRadius: "8px"
}}
  data-path="images/setup/ai-import-ss/importfromcsv.png"
/>

Select `Import from CSV` to move to the import screen.

**Step 3. Run the import**

The rest of the process follows the same import steps described earlier.\
Once the import is complete, each row will be created as a single entry and added directly to the selected process or list.

<br />

<br />

## Important notes before importing

* **Review AI mapping results**: Before running the import or on the result page, verify that AI-mapped fields match your intended data.

* **Start with a small test import**: If this is your first time importing data, run a test import with a small dataset before importing all data.

* **Back up the original file**: Before importing, back up your original CSV/Excel file. This is especially important when using the Overwrite option, as it allows you to restore data if needed.

<br />

## Frequently asked questions (FAQ)

<Accordion title="Korean characters are broken when importing a CSV file. How can I fix this?">
  Open the file and save it as an XLSX file instead of CSV using the steps below.

  **1. In Microsoft Excel, go to the Data tab and click Get Data (Power Query)**

  <img src="https://mintcdn.com/relateso/dV49Fb9APUOflIgk/images/setup/ai-import-ss/export1.png?fit=max&auto=format&n=dV49Fb9APUOflIgk&q=85&s=fbc011bcd154ad2daadc16033d1004bc" alt="export1" width="360" data-path="images/setup/ai-import-ss/export1.png" />

  **2. Click Text/CSV and select the file with broken characters**

  <img src="https://mintcdn.com/relateso/dV49Fb9APUOflIgk/images/setup/ai-import-ss/export2.png?fit=max&auto=format&n=dV49Fb9APUOflIgk&q=85&s=f1566732ef43662916c2fb7988242f36" alt="export2" width="360" data-path="images/setup/ai-import-ss/export2.png" />

  **3. Select UTF-8 and click Load**

  <img src="https://mintcdn.com/relateso/dV49Fb9APUOflIgk/images/setup/ai-import-ss/export3.png?fit=max&auto=format&n=dV49Fb9APUOflIgk&q=85&s=81efe5b534a8f24719ea7acbd3132208" alt="export3" width="360" data-path="images/setup/ai-import-ss/export3.png" />
</Accordion>

<Accordion title="What are the most common reasons for import failures, and how can I resolve them?">
  There are two main reasons import failures occur.

  1. **Duplicate unique fields**\
     In Relate, organization name, contact email, and domain must be unique.\
     For example, if two different organizations, Relate (@example.so) and Pixelic (@example.so), share the same domain, the import fails due to duplication.
     Note that domains can be automatically generated from email addresses, even if not explicitly provided.

  <span style={{ display: "block", height: "6px" }} />

  2. **Invalid email addresses**\
     This includes email addresses with invalid formats or special characters other than `@` (for example, test@ or abc.com).

  <span style={{ display: "block", height: "6px" }} />

  Failed rows can be reviewed in the Failed Records section, and re-imported after fixing errors.
</Accordion>

<Accordion title="How is the current import process different from the previous one?">
  With the previous import method, users had to manually create custom fields and map columns before importing.

  With the current import process, Relate AI automatically understands and maps column data, so no prior field setup is required.
</Accordion>

<Accordion title="Why were Organizations created when I only imported Contacts?">
  If organization or company information exists in the import file, Organizations are automatically created and linked to Contacts.
</Accordion>
