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

# Data Migration

> Bring your existing contacts, deals, and records into Custral with the guided CSV import wizard.

<Info>Reach out to [Support](mailto:hello@custral.com) for help planning a larger migration!</Info>

Moving to Custral from another tool? You don't have to start from a blank workspace. Custral's **data import wizard** brings your existing data (exports from Salesforce, HubSpot, Attio, or a spreadsheet) into your [objects and records](/data/objects/overview) with guided column mapping, a test run, and one-click undo.

## How it works at a glance

You export your data as CSV files, upload them, tell Custral which column maps to which property, preview the result, and run the import. Custral does the heavy lifting in the background.

<Steps>
  <Step title="Export from your old tool">
    Export your contacts, companies, deals, or tickets as CSV files. One file per type works best.
  </Step>

  <Step title="Upload">
    In Custral, go to **Migrations → Import Data** and upload your CSV files.
  </Step>

  <Step title="Map columns to properties">
    Match each column to an existing property, or create a new one on the spot. Custral pre-fills common mappings (like "Email Address" → Email) and guesses each column's type. You can target an existing object or create a new one per file, mark an identity column to avoid duplicates, and link files together with relations.
  </Step>

  <Step title="Preview and test">
    Review how your data will land, then optionally run a test against a small sample before committing.
  </Step>

  <Step title="Run the full import">
    Execute the import. If something looks off afterward, you can undo it in one click.
  </Step>
</Steps>

<Tip>
  Importing related data (contacts and the companies they belong to)? Upload both files and link them with a relation during mapping so the connections come across intact.
</Tip>

## Import from the assistant

You can also import without opening the wizard: **drop a CSV or Excel file onto the ⌘I assistant** and ask it to import. The assistant creates the import, auto-maps the columns, and shows you the same column mapper inline to review. How many records would be created vs. updated, and any new objects or properties it would add. Adjust anything, then click **Run import** (or **Test 10 rows** first).

If you've imported a file with the same columns before, the assistant **recognizes the shape and reuses the mapping automatically**. A recurring import ("this week's leads") becomes one click, no re-mapping. It notes when it does this ("matches your Contacts import, used 3×").

## Troubleshooting

<AccordionGroup>
  <Accordion title="The assistant says no spreadsheet is attached">
    The file has to be attached to the **same message** you ask to import in. Drop the CSV/Excel onto the composer, then send "import this". Importing isn't available on a follow-up turn once the attachment has scrolled off.
  </Accordion>

  <Accordion title="It didn't reuse my previous mapping">
    A mapping is only remembered after a **full** import completes (not a test run), and it's matched on the column-header set **and** the target object, a renamed column or a different object is treated as a new shape. Very first import of a new file always maps from scratch.
  </Accordion>

  <Accordion title="A mapped column came in blank">
    Check the column mapping. An unmapped or skipped column imports nothing. If you're updating existing records, make sure an **identity column** is set so rows match instead of duplicating.
  </Accordion>

  <Accordion title="The import looks wrong afterward">
    Every import can be **undone in one click** from the import screen. It removes the records, properties, and objects that import created. Fix the mapping and run it again.
  </Accordion>
</AccordionGroup>

## Next steps

Once your data is in, shape it with [views and dashboards](/surfaces/views/overview), connect your [email and phone channels](/integrations/overview), and set up [automations](/automation/overview) to keep it current.

## Related

<CardGroup cols={2}>
  <Card title="Full import guide" icon="file-import" href="/automation/jobs/migrations">
    Step-by-step details, column mapping, test runs, and undo.
  </Card>

  <Card title="Objects & records" icon="cube" href="/data/objects/overview">
    Understand the data model your import lands in.
  </Card>

  <Card title="Workspace setup" icon="users-gear" href="/start/onboarding/workspace">
    Configure your workspace before or after importing.
  </Card>

  <Card title="Quickstart" icon="rocket" href="/start/quickstart">
    The full first-time setup path.
  </Card>
</CardGroup>


## Related topics

- [Data Import](/automation/jobs/migrations.md)
- [Workspace General Settings](/start/onboarding/workspace.md)
- [Jobs](/automation/jobs/overview.md)
- [Bulk edit](/automation/jobs/bulk-edit.md)
- [Lists](/data/collections/overview.md)
