Move your CRM into Attio. Free.

Shuttio moves HubSpot, Pipedrive, Affinity, Salesforce or a CSV into Attio — records, relationships, notes and lists — and reports on every one. You review every field, and a CRM migration starts as a free 50-record sample.

HubSpottoAttio

No card · Any record count · Cancel removes everything we created

HubSpot → AttioMIG-8F3C1D92
82%2,976 of 3,608 records
  • Contacts
    Done
    1,842 / 1,846 · 4 failed
  • Companies
    Done
    611 / 611
  • Deals
    Moving
    523 / 739 · 3 failed
  • Notes
    Queued
    412 waiting
7 failed — each one listed with its reason and a fix.

The free Attio migration

Connect your CRM, tick the objects, review the fields, and watch it move. Most teams finish in an afternoon.

What you get

  • Your CRM's structure, mirrored in Attio

    People, companies and deals land in Attio's standard objects; every other object you tick is recreated 1:1 with its fields, options and links. Nothing is created until you start.

  • Every field shown, and editable

    Each source field with where it lands. Keep or skip it, rename it, change its type, and choose the key records are matched on.

  • A 50-record sample run

    A CRM migration starts as a free 50-record sample. Read the result inside Attio, then one click runs the rest. A CSV imports in full, and rolls back if it is wrong.

  • A report on every record

    What moved, what linked, and each failed row with its reason and the fix.

Price

$0

At any record count, from any of the five sources.

Import2 charges $499 – $9,499 for the same move.

Paid for by Craftt’s implementation work, if you want help after. You don’t have to.

What usually goes wrong moving to Attio

Six things teams find out on day two of a migration. Each one has a specific answer here.

Deals arrive without their companies.

Records are created first and linked second, so a deal finds its company whichever arrived first. A link whose other end never made it is reported, not dropped.

Running it twice leaves two of everything.

People match on email, companies on domain, custom objects on a key you choose. A match is updated in place, so a retry resumes instead of piling up.

Every date turns into migration day.

Field history is optional on HubSpot and Salesforce. A stage change from March still reads as March in Attio.

Your custom objects get squeezed into a template.

HubSpot custom objects and Salesforce __c objects are read from your schema, with the field your CRM keeps unique used as the dedup key.

Halfway through, there is no way back.

Cancel deletes every record, list entry, attribute and option the migration created, in reverse order. What was in Attio before is never touched.

Rows fail and nobody tells you.

Failures are grouped by cause with the fix spelled out, and you can re-run only the rows you corrected.

From sign-in to a finished run

Five steps. You make two decisions; Shuttio does the rest and shows its work.

  1. 1

    Connect

    2 minutes

    You

    Sign in with Google, choose your source, connect your CRM and Attio — or upload a CSV.

    Shuttio

    Reads your source schema: objects, fields, and which ones your CRM keeps unique.

  2. 2

    Objects

    1 minute

    You

    Tick the objects you want to move.

    Shuttio

    Sends people, companies and deals to Attio's standard objects, and mirrors every other object 1:1 under its own name.

  3. 3

    Fields

    5 minutes

    You

    Check each field: keep or skip it, rename it, change its type, pick the matching key.

    Shuttio

    Maps every field, including emails, domains and associations, so dedup and linking fire. For a CSV, Claude guesses what each column holds; you can change every guess.

  4. 4

    Sample

    1 minute

    You

    Open Attio and look at the first 50 records. The sample is free.

    Shuttio

    A connected CRM starts here: 50 records per object with their relationships, exactly as the full run will move them. A CSV skips this step and imports in full.

  5. 5

    Full run

    Minutes to hours

    You

    Nothing. Pause or cancel whenever you like; the run keeps going if you close the tab.

    Shuttio

    Moves everything, links it in a second pass, and writes the report.

Shuttio vs Import2, including the rows we lose.

Import2 covers hundreds of sources and many destinations. We cover five sources and one destination, in more depth.

Price
Free
$499 – $9,499
Field history
Optional, per run
Not supported
Sources
Five, plus CSV
Hundreds

Your records never pass through a model.

Claude guesses what each column of an uploaded CSV holds, from its name and up to three truncated sample values, and answers questions in the help chat from our docs and counts, never records. Your CRM's structure is mirrored by code, and the import has no model in the loop.

  • OAuth for Attio, HubSpot, Pipedrive and Salesforce — revoke us any time
  • Each credential sealed under its own key, held outside the database
  • Jobs carry an id and nothing else — no records in queues or logs
  • Uploaded CSVs deleted when the full run finishes or you roll back

Questions before the first run

Is it really free?

Yes, at any record count. Shuttio is built by Craftt, an Attio implementation partner; the migration is how you meet us. No card, no record cap, no paid tier hiding the useful parts.

What happens to my data?

Records stream from your CRM into Attio without passing through a model. Credentials are encrypted under a key held outside the database, uploaded CSVs are deleted when the import finishes or you roll it back, and we keep the mapping and the id map rather than your rows.

What if something goes wrong halfway through?

The job is durable and resumes where it stopped. Cancelling deletes everything the migration created, in reverse order, custom objects included, and names the lists it leaves in place so you can clear them yourself.

What doesn't move?

Emails (Attio's own inbox sync does that better), file attachments (Attio has no endpoint for them), and a short list per source. Each source page names every one, with the reason.

My CRM isn't on the list.

Export it to CSV and import that — each column's type is guessed for you to confirm, and a company column can become linked company records as the rows import. Close, Copper and folk are next as native connectors.

Move fifty records first. Then decide.

Free at any record count. Nothing is written to Attio until you have reviewed the objects and fields, and every run starts as a free 50-record sample.