Attio Export and Migration: Records, Lists, Relationships - Relaticle             [  Back to blog ](https://relaticle.com/blog) 

 ![Attio export and migration: records, lists, relationships](https://relaticle.com/storage/ink/01M38HHGV72B8MFZM5HRJ5098G.png)An Attio export and migration needs separate plans for records, lists, and relationships. Preserve the identity of each record, decide where list-specific values belong, and verify the connections after import. A CSV containing familiar names does not prove that your workflow survived.

We build Relaticle. This guide explains how to prepare an Attio migration into its CRM model without pretending the two products organize everything identically. The mapping method also works when your destination is another CRM.

Start by creating a record inventory, a list inventory, and a relationship file. Keep your original export untouched. Those four artifacts let you explain what moved and investigate anything that did not.

[](#choose-the-export-that-matches-your-question "Permalink")Choose the export that matches your question
---------------------------------------------------------------------------------------------------------

Attio offers view exports and an admin workspace export. They serve different purposes.

A view export is useful for a selected set of records and attributes. Attio's [view export documentation](https://attio.com/help/reference/imports-exports/exporting-lists-and-views) says table exports include visible columns. Kanban exports use attributes displayed on cards. Save the view's filters before exporting.

Check the columns deliberately. A hidden field will not appear just because someone filled it out last week.

Attio also says enriched data cannot be exported through this path. Enriched cells are blank in the downloaded view, while manually added data is included. Inspect the export before deciding that the destination can reproduce an enrichment-dependent workflow.

For broader coverage, an admin can request a [workspace backup](https://attio.com/help/reference/imports-exports/back-up-your-workspace-data). Attio documents a ZIP containing records, custom objects, lists, list attributes, notes, tasks, comments, files, and other workspace data.

The backup excludes emails. Meetings and call recordings have separate API export paths; call recording entries in the backup contain metadata. These boundaries were checked against Attio's documentation on September 24, 2026.

A workspace backup is source material for a migration. It is not a ready-made import package for another CRM. Open the files and confirm their contents before assigning destinations.

[](#worked-example-one-company-in-two-lists "Permalink")Worked example: one company in two lists
------------------------------------------------------------------------------------------------

Consider a fictional consultancy exporting Northline Studio from its Sales and Partners lists. These simplified rows illustrate the transformation, not Attio's complete export schema.

### [](#sales-list-row "Permalink")Sales list row

- **Record ID:** company-184.
- **Entry ID:** sales-entry-41.
- **Company:** Northline Studio.
- **Domain:** northline.example.
- **Project:** Client portal.
- **Sales status:** Proposal under review.
- **Proposed fee:** USD 18,000.

### [](#partners-list-row "Permalink")Partners list row

- **Record ID:** company-184.
- **Entry ID:** partner-entry-73.
- **Company:** Northline Studio.
- **Domain:** northline.example.
- **Partner status:** Agreement signed.
- **Partner review date:** 2027-01-15.

The shared Record ID identifies one company. The different Entry IDs identify its membership in two lists.

Attio's [list transfer guidance](https://attio.com/help/reference/imports-exports/moving-records-between-lists) distinguishes these identifiers. An Entry ID belongs to its original list and cannot replace the Record ID during a list transfer.

Creating a company for every exported row would produce two companies. Combining both statuses into one field would lose the difference between sales and partnership.

### [](#transform-the-rows-by-meaning "Permalink")Transform the rows by meaning

Create one canonical company row keyed by `company-184`. Preserve the domain and store the Attio Record ID in your migration mapping.

For this example, create a company custom field called Partner status. Give it the option Agreement signed and add a Partner review date field.

Create one opportunity called Client portal, linked to Northline Studio. Put Proposal under review and USD 18,000 on that opportunity using your approved field mapping.

Keep `sales-entry-41` beside the opportunity's destination ID in your migration mapping. Keep `partner-entry-73` beside the company and partner-field mapping.

These Entry IDs preserve traceability. They are not Relaticle Record IDs and must not be mapped to the destination's Record ID matching field.

The proposed result is:

| Check | Expected count | What to inspect |
|---|---|---|
| Companies | 1 | Northline Studio appears once |
| Opportunities | 1 | Client portal links to Northline |
| Preserved list memberships | 2 | Sales and partner meanings remain traceable |

The third check counts source memberships in your reconciliation file. It does not claim Relaticle created two native Attio-style list entries.

Open the company and opportunity after import. Confirm the partner date remains on the company and the commercial stage remains on the opportunity.

A passing company count alone cannot detect a lost partner status. Check values and relationships alongside totals.

### [](#know-when-this-mapping-stops-fitting "Permalink")Know when this mapping stops fitting

This example assumes one current partnership status per company. If Northline has several partnership agreements with separate lifecycles, a single company field cannot preserve them.

Keep that process in a suitable system or design another explicit representation before migrating. Do not flatten several agreements into one status merely to finish the import.

The same question applies to Sales. If one company has two concurrent projects, preserve two opportunities linked to the same company.

[](#decide-what-every-remaining-list-represents "Permalink")Decide what every remaining list represents
-------------------------------------------------------------------------------------------------------

Classify each list before assigning destination fields. A sales pursuit, an outreach segment, and a partner agreement have different meanings.

For an outreach list, decide whether membership is a segment or an independent process. Importing membership does not recreate sending sequences or stopping conditions.

For a custom object, write three example records and the actions users perform on them. Check whether the destination can represent those examples clearly.

Relaticle's CSV wizard covers companies, people, opportunities, tasks, and notes. It does not automatically convert arbitrary Attio objects or list structures.

Mark each source structure as converted, retained in another system, archived, or intentionally excluded. Assign an owner to unresolved decisions before the pilot import.

[](#build-a-field-map-that-preserves-meaning "Permalink")Build a field map that preserves meaning
-------------------------------------------------------------------------------------------------

Create a mapping sheet with source object or list, source attribute, destination field, type, transformation, and a sample value.

Keep list attributes labelled with their source list. A column called “Owner” means little without knowing whether it owns the company, deal, or list entry.

For every choice field, list the allowed destination values. Translate old stages individually instead of relying on similar wording. “Negotiation” and “Contract review” may mean different things to your team.

Review multiple-value attributes separately. A person with several emails should not lose the secondary address because the working spreadsheet kept only the first cell fragment. Decide which destination structure represents all required values.

Keep dates unambiguous. Record the source timezone where time matters. A date-only follow-up and a timestamp for a completed call should not share a transformation rule.

For money, preserve the currency alongside the amount. Do not add different currencies into one migration total and call the result reconciled.

Create required Relaticle custom fields before importing. The [record requirements guide](https://relaticle.com/help/import/what-each-record-type-needs) explains the supported import fields and relationships.

Retain the source Record ID as a reference in your working mapping. If you store it in a custom field, remember that storage does not make it a supported matching key. Verify matching separately.

[](#make-relationships-visible-before-the-import "Permalink")Make relationships visible before the import
---------------------------------------------------------------------------------------------------------

Prepare a relationship file with source object, source record ID, related object, related record ID, and relationship meaning. Include direction when it matters.

Use that file to identify links whose targets you have excluded. An opportunity referencing an archived company needs a decision before migration.

Preserve a source-to-destination ID map as records arrive. New CRM IDs will differ from Attio IDs. Passing an Attio ID into a destination relationship field does not create a portable reference.

Domains and email addresses can help match records when the destination supports them. They still need review. Shared addresses, missing domains, and subsidiaries can produce ambiguity.

Choose a sample with at least two people at one company and more than one deal. Check the actual linked records after importing. A correct company name in a text column is not the same as a relationship.

Relaticle opportunities support company and contact relationships. Map any additional association meaning separately instead of implying it survives automatically.

Import companies first when people and opportunities depend on them. Import tasks and notes after the records they attach to exist. Review relationship errors independently from field-value errors.

[](#rehearse-matching-and-repeat-imports "Permalink")Rehearse matching and repeat imports
-----------------------------------------------------------------------------------------

An Attio export and migration often takes several rehearsals. Make reruns part of the plan before uploading the first file.

Relaticle can match companies by domain and people by email or phone. Existing opportunities match by Relaticle ID. Its notes importer creates new records instead of matching old notes.

That means a second import is not automatically safe for every record type. A repeated source row can create another opportunity or note without the correct destination mapping.

Tests on September 24, 2026 found that deleted records can also mask live email or domain matches. If an existing record shows Create, stop.

Retry with verified Relaticle Record IDs. Source Attio Record IDs and Entry IDs cannot substitute for those destination IDs.

Keep a batch register with filename, source cutoff, row range, destination record type, completion status, and failures. Preserve returned destination IDs in your mapping process where needed.

Use a pilot file that contains troublesome cases. Include a missing email, two similarly named companies, multiple list memberships, a blank choice, and a record with several relationships.

For Relaticle, split files above 10,000 rows or 10MB. Its [import guide](https://relaticle.com/help/import) describes the wizard. Inspect its mapping, validation, and preview stages before starting the write.

After correcting a problem, rerun the failing case and inspect the destination. Avoid treating a clean upload message as evidence that relationships or business meanings are correct.

[](#plan-context-that-does-not-become-ordinary-records "Permalink")Plan context that does not become ordinary records
---------------------------------------------------------------------------------------------------------------------

Read the backup's notes, comments, and file information before deciding what to preserve. Their presence in an export does not guarantee an equivalent destination feature.

A note may need a title, content conversion, and links to several records. A comment may depend on a conversation thread that the destination does not model. An attachment may require a separate transfer.

Preserve original authors and dates in your archive when you cannot retain them as native destination metadata. Label any imported historical text clearly so readers do not confuse it with a new conversation.

Do not claim an imported note recreates the original activity timeline. Test what users can actually see and search.

For email history, use the documented limitations in your decision. If that history is essential to daily work, arrange access through the original mailbox or another verified source. Confirm the route before switching.

Assign each context item one outcome: available in the new CRM, available in a named archive, or intentionally excluded. A link to an archive should work for an ordinary team member.

[](#reconcile-the-workflow-as-well-as-the-rows "Permalink")Reconcile the workflow as well as the rows
-----------------------------------------------------------------------------------------------------

Start with counts by source object and by destination record type. Explain transformations that change the count, such as creating opportunities from sales-list entries.

Then compare list membership totals. A correct company count can hide a missing partner segment or an incomplete outreach audience.

Check field completeness for operationally important values. Compare owners, stages, due dates, currencies, and contact details. Separate intentional blanks from unexpected blanks caused by export limitations.

Ask a pilot user to complete three real jobs: prepare for an account conversation, update an open deal, and find the next follow-up. Record where they need help.

A migration can preserve every cell while making a familiar workflow harder. Treat that result as evidence for a mapping change, training, or a different destination.

If you are still choosing software, our [open-source Attio alternatives guide](https://relaticle.com/blog/open-source-attio-alternatives-ranked-by-use-case) covers the broader options. Our [migration overview](https://relaticle.com/blog/migrating-from-hubspot-or-attio-to-a-self-hosted-crm) covers the destination setup.

Before approving the switch, list unresolved structures, retained tools, and ongoing costs. Compare those with [Relaticle's hosted pricing](https://relaticle.com/pricing) or your self-hosting budget.

The approval should state which records, list meanings, relationships, and customer context passed verification. Keep the original exports and mapping files with that decision.

 Tagged: [ #migration ](https://relaticle.com/blog/tag/migration) 

 Related posts
-------------

 [  Guides   Oct 13, 2026  

 CRM data import checklist: CSV mapping and sample files 
---------------------------------------------------------

A CRM data import checklist with sample company and people CSV files, exact mappings, relationship checks, and a second-run update test.

 ![CRM data import checklist: CSV mapping and sample files](https://relaticle.com/storage/ink/01M38HF8RDTX5SCR0AM71K8PW0.png) ](https://relaticle.com/blog/crm-csv-import-checklist) [  Guides   Oct 9, 2026  

 CRM permissions for AI agents: an access checklist 
----------------------------------------------------

Set CRM permissions for AI agents with a filled access worksheet, clear approval boundaries, and tests for denied writes and revoked connections.

 ![CRM permissions for AI agents: an access checklist](https://relaticle.com/storage/ink/01M38HCK3DY8GPEAQ2Z5FW3S3J.png) ](https://relaticle.com/blog/crm-ai-permissions-before-connecting-an-agent) [  Guides   Oct 6, 2026  

 HubSpot migration checklist: moving to another CRM 
----------------------------------------------------

This HubSpot migration checklist covers moving to another CRM, including exports, associations, workflow replacements, and a worked cutover check.

 ![HubSpot migration checklist: moving to another CRM](https://relaticle.com/storage/ink/01M38HCG3RJEN1A8NHAGXAE8WW.png) ](https://relaticle.com/blog/hubspot-migration-checklist) 

    ###    On this page
