Shuttio vs Import2, including the rows we lose.
Import2 has been moving CRMs for years and is genuinely good at it. We built one tool for one destination, and this is where that choice pays and where it costs.
Sourced from their own v2.1 documentation. If something here has gone out of date, tell us and we will correct it.
Cost and time
The two things a migration is actually budgeted on.
Price
ShuttioFree, at any record count. We are an implementation firm; the migration is how you meet us.
$499 for 50k records, $999 for 100k, rising to $9,499 at 5M. Value and user mappings only from their Plus tier up.
How long it takes
ShuttioOne job with live progress. You watch the tally fill.
Days to months, quoted per migration. An Affinity move can wait on their monthly API quota resetting.
Fixing a mapping yourself
ShuttioEvery mapping, value rewrite, default and row filter is yours to edit before the run and between runs.
Value and user mappings are admin-mediated and sold from a paid tier; most fixes go through their support.
What lands in Attio
Where we deliberately spent the last five phases catching up, and where the two now sit level.
Notes, tasks and meetings
EvenNotes, tasks and meetings, on the records they belong to. A note edited at the source re-syncs on a later run, and one you re-parented moves.
Notes and tasks, including calls as notes. This was their biggest lead over us until Phases 5a and 10.
Custom objects and lists
EvenHubSpot and Salesforce custom objects, and source lists as Attio lists with membership and list-attribute values.
Custom object and list creation, including Affinity lists into Attio lists.
A trial run before the real one
EvenFirst 50 records on both passes, then one click to promote it to the full run.
A sample migration on a randomized subset. Their stickiest trust feature, and it deserved copying.
Per-record results and error explanations
EvenFailures grouped by cause, each with what happened, why, and the fix. Look up any row's source record on demand.
A results explorer with per-field explanations and per-error retry.
Field value history
ShuttioOptional per run, HubSpot and Salesforce. A stage change from March still reads as March instead of collapsing to today.
Current values only — a record arrives looking as though every field was set on migration day.
Importing one object as another
ShuttioYou pick the Attio object each source object lands in, including sending leads into people.
Documented as not supported.
File attachments
NeitherAttio publishes no endpoint for writing a file onto a record, so there is nowhere to put them.
Same ceiling, same reason.
Incremental sync after the first run
NeitherA re-run is idempotent — it updates matched records and adds new ones — but there is no change feed driving it.
Documented as not supported.
What happens to your workspace
A migration writes to a system your company runs on. This is the part worth reading twice.
Undoing it
ShuttioCancel deletes every record, list entry, attribute and select option the migration created, in reverse order, from a provenance ledger. What was there before is never touched.
Their Clean removes records and archives fields where it can; custom objects, lists and picklist options are left behind.
Records that already exist in Attio
ShuttioMatched on email, domain or the unique key you designate, and updated in place.
Matched records are found but their fields are explicitly never written.
Designing the Attio structure
ShuttioThe structure is proposed from your own schema and your answers, then you edit it. Nothing reaches Attio before you approve it — and you can take the blueprint and build it yourself without connecting Attio at all.
Maps into the shape your Attio workspace already has.
Reconnecting to the wrong workspace
EvenResume, retry, full-run and rollback are all blocked at the door when the connected workspace is not the one the run was keyed to.
A blocking modal that wipes the mapping and demands the migration number typed back.
Where Import2 is ahead
They have been doing this since long before us, and it shows in one place that matters.
Number of sources
Import2Five: CSV, HubSpot, Pipedrive, Affinity, Salesforce. Close, Copper and Folk are next.
Hundreds, across CRM and helpdesk, heading for a thousand. If your source is not on our list, use them.
Destinations other than Attio
Import2Attio only, and that is the whole point — every rule here is written against Attio's actual API rather than a generic model.
Many destinations through one shared connector library.
What this comes down to
If your destination is Attio
We wrote every rule in this tool against Attio's actual API rather than a generic model, which is where the depth in the rows above comes from.
If your source is not one of our five
Import2 is the honest answer and we will say so. They cover hundreds of sources; we cover CSV, HubSpot, Pipedrive, Affinity and Salesforce, with Close, Copper and folk next.
If Attio is where you are going, start here.
Free at any record count. Nothing is written to Attio until you have approved the structure and the field mapping.