Overview
Whalesync keeps Attio in sync with the tools your team already runs on. Connect Attio to Postgres, Supabase, Airtable, Notion, Google Sheets, and more, and Whalesync keeps both sides current. There is nothing to script, no export to schedule, and no engineering time to book.
Sync runs in both directions. A person created in Attio lands in your warehouse within a minute. A plan change written by your product database updates the matching company in Attio. You set the direction for each pair of tables, so you can push one way, pull the other, or keep both sides equal.
Whalesync matches records that already exist instead of creating duplicates, so you can switch it on over data you have been collecting for years rather than starting from an empty workspace.
It covers the whole workspace: people, companies and deals, every custom object you have built, your lists, and the notes and tasks attached to your records. Custom attributes are picked up on their own as soon as you create them, and record references sync as real links rather than as text, so the relationships between objects survive the trip. Workspace members are read as well, so record owners resolve to real people on both sides.
Teams use Whalesync to load product usage into Attio so sales can see which accounts are active, to push closed deals into a warehouse for revenue reporting, to create follow-up tasks and log notes on the right record from their own systems, and to keep Attio aligned with the spreadsheets and databases that operations still depend on. It is just as often used in the other direction, by teams who have years of history in a database and want Attio to be the place their colleagues actually work.
How it works
Two-way sync
Whalesync syncs in both directions by default, or in one direction if you prefer. Edits made in Attio and edits made in the connected tool both propagate, usually within a minute. Direction is set per pair of tables, so one object can be read-only while another is fully two-way.
Full workspace coverage
Sync people, companies, and deals, along with every custom object and list in your workspace, and the notes and tasks attached to them. Whalesync reads your schema directly from Attio rather than working from a fixed list, so an object you create this afternoon is available to map straight away, as are any attributes you add to it.
Relationships preserved
Record references sync as real links rather than as text. A deal stays attached to its company and a person stays attached to their employer, on both sides of the sync, so the copy in your database is queryable rather than a flat export.
Notes and tasks, both ways
Notes and tasks sync as tables of their own, attached to the record they belong to. A task created in your project tool or database appears in Attio on the right person or company, with its due date and assignee, and marking it done on either side marks it done on the other. Notes work the same way: a call summary written by your support tool lands on the account in Attio, and a note edited in Attio updates the copy in your database. Because these are two-way, Whalesync creates, updates, and removes notes and tasks in Attio when the connected tool does, which is why it asks for write access to both.
Attribute-level mapping
Choose exactly which attributes sync and how they pair with columns in the other tool. Whalesync proposes matches by name and you can change or remove any of them. Anything you leave unmapped is never read and never written, which makes it safe to sync one part of a record and leave the rest alone.
The destination builds itself
Point a sync at an empty database and Whalesync creates a table for every object you picked, with a column for each attribute and the right type on each column. There is no schema to write up front and no migration to maintain as your Attio workspace changes.
Filters and safeguards
Sync a subset of records with filters instead of the whole object. Pause any sync from the dashboard without losing its configuration. Deletes can be held for review before they are applied, so a bad import on one side cannot quietly empty a table on the other.
Live updates
Whalesync registers Attio webhooks, so changes are picked up as they happen rather than waiting for the next scheduled poll. If a webhook is ever missed, a background pass reconciles both sides, so the two do not drift.
Configure
Configure
Setting up a sync takes a few minutes and no code.
- Create a Whalesync account at whalesync.com and start a new sync.
- Choose Attio as one side of the sync. Whalesync sends you to Attio’s authorization screen, where you approve access for the workspace you want to sync.
- Choose the other side, such as Postgres, Supabase, Airtable, Notion or Google Sheets, and connect it the same way.
- Pick the tables to sync. On the Attio side these are your objects and lists: people, companies, deals, any custom object, and any list you have built, plus your notes and tasks. If the other side is an empty database, let Whalesync create the tables for you.
- Map attributes to columns. Whalesync proposes matches by name, and you can change any of them or leave attributes out entirely. Unmapped attributes are never read or written.
- Choose a direction for each pair of tables: two-way, or one-way into or out of Attio.
- Turn the sync on.
What happens on the first run
Whalesync loads the records that already exist before it starts watching for changes. It matches rather than duplicates wherever it can, so running it against a workspace that is already full of data does not produce a second copy of everything. Large objects take a while on this first pass; after that, changes arrive as they happen.
Changing or stopping a sync
Mappings can be edited at any time, and new attributes can be added to a running sync without rebuilding it. Pausing keeps the configuration and stops the traffic. Disconnecting the workspace ends the sync and leaves every record in Attio exactly as it is; nothing is removed on either side.