HubSpot to Attio

Medium ~3 hours CRM

Why Switch?

HubSpotAttio
Data modelFixed objects + customFully flexible objects
Custom objectsEnterprise tier onlyIncluded on all plans
Entry priceFree up to 2 users, paid from $20/user/mo$34/user/mo Plus
AutomationWorkflows (Pro+)Automations + webhooks
APIRate-limited, legacyGraphQL + webhooks, modern
Best forInbound marketing teamsFounder-led B2B sales

What You'll Need

Step-by-Step Migration

1
Audit your HubSpot CRM

Open HubSpot Settings → Properties. You likely have 100+ custom properties, most of which are dead. For each, ask:

Is it actively used? Filter contacts by the property - if under 10% are populated, it's probably cruft.
Does anyone look at it? Check which reports and views reference it.
Is it still needed? Old lead scoring rules, deprecated lifecycle stages, sales process experiments that didn't stick.

Also audit: pipelines (one or many?), workflows (how many are paused?), integrations (which ones are live?). Migrate only what's actually in use.

2
Set up your Attio workspace

Create an account at attio.com. The 14-day Plus trial gives you full access to evaluate.

Before importing anything, set up the core objects to match your sales model:

Companies - your accounts. Add attributes for industry, employee count, ARR, whatever you actually segment on.
People - individual contacts, linked to Companies.
Deals - opportunities. Configure stages to match your pipeline (see step 6).

Attio also supports custom objects (e.g. Partners, Investments, Projects). Set these up only if you actually need them - don't replicate HubSpot bloat.

3
Map objects and attributes

In a spreadsheet, list every HubSpot property you're keeping. For each:

HubSpot Property  →  Attio Attribute
Email             →  Email (built-in)
Phone Number      →  Phone (built-in)
Lifecycle Stage   →  Status select
Owner             →  Owner (built-in)
Last Contacted    →  Date
Industry          →  Select / Tags
Notes             →  Notes (long text)

This spreadsheet is your migration spec. It catches mapping errors before they become data loss.

4
Export HubSpot data

In HubSpot: Contacts → Exports. Export three times - once each for Contacts, Companies, and Deals.

Include only the columns from your migration spec. Skip archived records (filter by "Archived = No"). Export as CSV.

Open each CSV and sanity check: no weird characters, dates in consistent format, lookup fields as IDs or emails (not HubSpot object IDs - those don't match Attio).

5
Import to Attio

Order matters. Always import in this sequence:

1. Companies first - the root object. Other records reference these.
2. People second - link to Companies via domain or company name during import.
3. Deals last - link to Companies and People via lookup fields.

Use Attio's Settings → Imports → CSV. Map each column carefully. Run a test import with 10 rows before the full batch. Attio will warn you about missing links or bad field formats.

6
Rebuild pipelines

Deal stages in HubSpot become Attio Deal statuses. If you had one pipeline with 8 stages, that's one Status attribute with 8 options.

If you had multiple pipelines (e.g. New Business, Expansion, Renewals), use Attio's multi-pipeline support: create separate Deal lists filtered by pipeline type, each with its own stages.

Set win probability per stage. Attio's deal forecasting pulls from this directly.

7
Reconnect integrations

Most HubSpot integrations have Attio equivalents - often better ones. Prioritize:

Email sync - Attio's Gmail/Outlook integration logs all inbound/outbound email against the right Person automatically.
Calendar - meetings auto-log as activities.
Slack - deal updates, new signups, pipeline changes piped to channels.
Data enrichment - Attio has built-in enrichment for Companies (previously Clearbit + HubSpot glue).

8
Rebuild critical automations

HubSpot workflows don't port. Recreate only the ones actually firing:

Attio Automations handle most: auto-assign owners, stage-based field updates, Slack pings.
External tools (Zapier, Make, n8n) handle cross-system flows. Attio's webhooks fire on every change.

Skip any HubSpot workflow that's been paused for 90+ days. It wasn't earning its keep.

Common Gotchas

Email marketing isn't Attio's job

HubSpot bundles CRM + email marketing + landing pages + forms. Attio is pure CRM. If you used HubSpot for newsletters, move those to ConvertKit or Beehiiv - don't expect Attio to replace it.

Historical activity doesn't fully migrate

Open/click history, old email logs, and form submissions mostly stay in HubSpot. Attio starts fresh on engagement data. Plan to keep HubSpot read-only for 60 days as a reference archive.

Custom properties with formulas are one-way

HubSpot calculated properties (e.g. "days since last contacted") need to be rebuilt in Attio using its formula attribute type. Most map cleanly but calculation syntax is different.

Marketing attribution is separate

If your team uses HubSpot attribution for UTM tracking and source reporting, Attio doesn't natively do this. Pair Attio with PostHog or Rb2b for attribution and sales intelligence.

Need help migrating?

I'll audit your HubSpot, map the schema, run the import, and rebuild your pipelines - so your reps don't lose a day of selling.

Work with me →

Related Guides