Edited by Clinton Feyisitan. Review scope: official documentation read on 14 October 2026 and local worksheet checks with synthetic examples. No native account migration, paid execution or timed completion test was performed.
Inventory the work the CRM actually does
List companies, contacts, deals, owners, activities, attachments, automations and reporting dependencies. Assign an owner to every required workflow. This guide covers a bounded CSV pilot for company and people records; it does not establish feature parity or migrate marketing subscriptions, historical activities and workflows automatically. Keep outbound automation off during the pilot.
Budget for overlapping subscriptions, seats, any migration service and time spent validating records. Put known recurring charges in the calculator; leave unknowns blank. A new interface is not evidence that the whole sales process can move safely.
Export the intended HubSpot records
With Export permission, open CRM → Companies or Contacts and select the intended view. Use Export in list view, or Board options → Export view where available. Choose CSV and inspect Customize: default exports include the view’s properties and associations, while other options change that scope. Preserve Record ID and the required association columns. The export download link arrives by email and expires after 30 days. HubSpot’s instructions distinguish current properties and associations from activity exports; a record CSV is not a complete backup of every interaction.
Keep an untouched source copy and a separate working file. Record export time, selected view, filters and row counts. Exclude sensitive fields that the destination does not need. Keep opt-out and suppression information intact; importing a person is not permission to contact them.
Agree the identity and field map
| HubSpot field | Attio destination | Rule to verify |
|---|---|---|
| Company domain | Domains | Normalise and inspect duplicates before import. |
| Contact email | Email addresses | Review missing and shared addresses separately. |
| HubSpot Record ID | A separate source-ID attribute | Do not map it to Attio’s own Record ID. |
| Owner / lifecycle stage | Explicitly mapped attributes | Resolve every value; do not silently drop unmatched ones. |
| Company association | Checked relationship mapping | Verify a contact whose employer differs from their email domain. |
Attio uses unique emails and domains to identify records. Its own Record ID is generated by Attio and is used for updates, not for importing arbitrary HubSpot IDs. Multi-value attributes add imported values to existing ones rather than replacing them. Open the destination object or list, choose Import / Export → Import CSV, and review mappings before importing. Check the CSV rules, permissions and preview for your object.
Attio also documents an Import2 path for CRM migrations. If you need activities or broader relationships, assess that path’s actual scope, price and trial results separately rather than stretching this CSV guide into a full migration guarantee. Read the migration options.
Validate a small batch before the full import
- Prepare a synthetic pilot covering a normal company, missing domain, duplicate email, multiple tags and an unusual employer relationship.
- Back up any existing destination records before updating them. Preserve a list of destination IDs created or changed by this batch.
- Compare expected unique records with created, updated and rejected counts. Inspect each field and relationship in the pilot.
- Check an existing multi-select record and an opt-out record. Confirm that the import did not trigger messaging or an unintended workflow.
Cutover and rollback
Agree a short editing freeze, export a final delta and reconcile changes after the pilot. Keep HubSpot as the source of truth until the owner accepts the checks. There is no assumed one-click undo here: distinguish newly created records from updates to existing ones. If validation fails, stop further imports and restore changed values using the preserved destination backup and batch log; review deletion of newly created records separately. Resume work in HubSpot and reconcile any new Attio activity before retrying.
Keep a migration record
Download the CSV planning worksheet
Synthetic examples are marked and all execution statuses start as “not run”. Replace them with your own inventory. This worksheet is for planning and verification, not an import file for either provider. Keep customer data in your own approved storage.
Sources checked
Need help scoping the work? Ask about a separate migration proposal. The £149 newsletter decision memo does not include this migration.