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 approve the structure before a single write.
No card · Any record count · Cancel removes everything we created
- DoneContacts1,842 / 1,846 · 4 failed
- DoneCompanies611 / 611
- MovingDeals523 / 739 · 3 failed
- QueuedNotes412 waiting
The free Attio migration
Connect your CRM, approve what Attio will look like, and watch it move. Most teams finish in an afternoon.
What you get
- An Attio structure built for your data
Objects, attributes and select options proposed from your schema. You edit it; nothing is created until you approve.
- Every field mapped, and editable
Each source field matched to an Attio attribute, with value rewrites and defaults. Your changes stick across re-runs.
- A 50-record sample run
Read the result inside Attio before committing. One click promotes it to the full migration.
- A report on every record
What moved, what linked, and each failed row with its reason and the fix.
Price
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
Connect
2 minutes
YouSign in with Google, answer five questions about the business, connect your CRM and Attio — or upload a CSV.
ShuttioReads your source schema: objects, fields, and which ones your CRM keeps unique.
- 2
Structure
5 minutes
YouReview the proposed Attio objects and attributes. Rename, remove, add.
ShuttioProposes the structure from your schema and business, and validates it before you see it.
- 3
Mapping
10 minutes
YouCheck each field's destination. Rewrite values, set defaults, filter out rows you don't want.
ShuttioMaps every field, including emails, domains and associations, so dedup and linking fire.
- 4
Sample
1 minute
YouOpen Attio and look at the first 50 records.
ShuttioMoves 50 records with their relationships, exactly as the full run will.
- 5
Full run
Minutes to hours
YouNothing. Pause or cancel whenever you like; the run keeps going if you close the tab.
ShuttioMoves everything, links it in a second pass, and writes the report.
Supported sources
Five connectors, each written against that system's own API. Every page lists what moves and what doesn't, with the reason.
HubSpot
Contacts, companies, deals and your portal's own objects — with the associations intact.
6 things move · 2don’t, with the reason
Pipedrive
Persons, organizations, deals, and the activities you have been tracking as both meetings and tasks.
4 things move · 3don’t, with the reason
Affinity
Persons, organizations, opportunities — and the lists and fields that are where Affinity actually keeps your work.
4 things move · 3don’t, with the reason
Salesforce
Accounts, contacts, leads and opportunities, your __c objects, and both kinds of note.
5 things move · 3don’t, with the reason
CSV
A spreadsheet from anywhere, including the CRM that has no API worth using.
4 things move · 3don’t, with the reason
Something else
Close, Copper and folk are next. Until then, a CSV export covers it — and we’ll say so when Import2 is the better answer.
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 proposes the structure from your schema and up to three truncated sample values per field. The import is a separate path, with 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 run finishes
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 job finishes, 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, and names the custom objects and 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 — the structure is proposed from your columns, 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 approved the structure and the field mapping.