HubSpot two-way sync vs one-time import: which to run
A one-time import (see "HubSpot one-time import: exactly what comes across") brings your HubSpot history into Current once. Two-way sync is different: it's an ongoing connection you can leave running for as long as your team still works out of both systems during a transition. This article covers when to use which, exactly what stays in step, and how to shut the sync off cleanly when you're done.
Which one do you actually need?
| Situation | What to run |
|---|---|
| Cutting over to Current in one move — HubSpot won't be touched again | One-time import only. Run it, review the match plan, approve, done. |
| Sales keeps working in HubSpot for a while during the transition, and you need Current to reflect it | Import first (sync rides on the same matching Current already did), then turn on two-way sync for the transition window. |
| You only want to migrate history and never write back to HubSpot | Import only, or two-way sync in "import only" mode (pull changes in, never push out). |
The three sync modes
From the HubSpot card's Manage view, the two-way sync section offers three modes:
- +Off — no syncing at all.
- +Import only — HubSpot changes flow into Current, but Current never writes back to HubSpot. Use this for a one-directional migration window.
- +Dual-run — both systems stay live and changes flow in both directions.
A dry-run switch sits alongside the mode selector and defaults to on: with dry-run enabled, Current logs exactly what it would change without actually writing anything, so you can sanity-check behavior before trusting it with live data. A dry run keeps its own place in the queue, so previewing for a day never uses up the backlog: when you switch dry-run off, everything it showed you still syncs. Turning it off asks you to confirm first, and tells you how many records are waiting to be written to HubSpot.
What actually stays in step, and how often
The sync runs on a fixed schedule roughly every 10 minutes. Only three record types are kept continuously in sync: companies, contacts, and deals — the same three the one-time import covers. Lists, tags, and engagement history (notes, calls, meetings, emails) are import-only; they aren't part of the ongoing sync and won't drift back and forth once the initial import brings them in.
Who wins when both sides changed the same thing
- +If someone edits a field in Current, that edit is protected — the next inbound sync pass skips that field rather than overwriting it with the older HubSpot value.
- +If nothing has changed on the Current side, HubSpot's value flows in normally.
- +For any company already anchored to a PSA record, the PSA stays the owner of name and address fields — inbound sync from HubSpot never overwrites those on a PSA-linked company. Industry is the one exception: it's treated as CRM-owned and does sync in, even on PSA-linked companies.
- +Deals sitting in HubSpot's default "My Pipeline" board (or its HubSpot-history equivalent), or matching a product your team excluded during import, never sync in either direction — they're skipped for good, the same as during the import.
The Autotask bridge: create HubSpot contacts and deals in Autotask
By default, two-way sync keeps HubSpot and Current in step and stops there — it does not create anything in your PSA. If you also want your HubSpot contacts and deals to land in Autotask, a separate admin toggle on the same HubSpot 2-way sync card — "Create HubSpot contacts & deals in Autotask" — turns on a bridge that creates qualifying HubSpot contacts and open deals in your live Autotask (as contacts and Opportunities), and keeps later edits flowing both ways: HubSpot to Current to Autotask, and Autotask back to HubSpot.
The toggle only becomes available once all of these are true — and the card tells you which one is missing:
- +HubSpot sync is set to Dual-run with dry-run turned off (the bridge never writes during a dry run).
- +Your CRM write mode is Live (set in Integrations → CRM write safety). In Test mode the bridge does not auto-create; test writes happen only through manual per-record pushes to ZZ-Current Test companies (existing ZZ-Cascade Test companies still count).
- +Autotask is your connected PSA. ConnectWise and HaloPSA workspaces can't use the bridge — it's Autotask-specific.
Which contacts and deals actually cross
The bridge is deliberately conservative so it never floods your PSA with old or unroutable records. A record crosses only when it qualifies:
- +Scope is the last 365 days of HubSpot activity — the same window the one-time import used. Older records were never imported and don't cross.
- +A contact crosses once its company is already linked to Autotask. The bridge never auto-creates companies in your PSA.
- +A deal crosses only when it's open, its pipeline stage is mapped to an Autotask stage, its company is in Autotask, and it isn't a Quoter deal. Quoter-owned opportunities are never touched by the bridge.
- +Inactive companies (marked inactive in your PSA) are skipped.
Backfilling deals you already have
Turning the bridge on only affects records that change from that point on. To bring existing open HubSpot deals across, use the "Backfill existing HubSpot deals" control on the same card. Click Preview first: it counts how many current open deals qualify and shows a sample, without writing anything — you can preview even while the bridge is off. When you're ready, confirm, and Current queues those deals (up to 500 per run) to be created in Autotask over the following cycles. Freshness for the backfill is judged from each deal's stored last-updated date or its projected close date, since HubSpot's own modified date isn't stored on the deal.
Turning the sync off when the transition ends
When your team has fully moved into Current and HubSpot is no longer the place anyone works from day to day, stop the sync rather than leaving it running unattended.
- 1Go to Settings → Integrations → HubSpotOpen the HubSpot card and choose Manage.
- 2Find the two-way sync sectionIt sits alongside the connection status and import controls, not as a separate integrations tile.
- 3Set the mode to OffThis stops both directions immediately. Nothing already synced is undone — turning the mode off only stops future ticks, it doesn't reverse past ones.
- 4Disconnect the private app token, if you're done with HubSpot entirelyRemoving the connection in HubSpot's own private app settings revokes Current's access outright, in addition to turning the mode off in Current.
