Reviewing & merging
The Duplicates page lists every pending duplicate group. Each card shows the group's members side by side with comparable fields, the match reason, and a proposed survivor.
Merging one group
- Pick the survivor — the record that remains after the merge. Deduptio proposes one using your object's survivor rule; you can override it per group.
- Preview — Review mergeruns a dry run and shows a before/after table of the survivor's fields: what it holds now, and what it will hold once the merge lands, with the record the winning value came from. Changed fields are listed first; unchanged fields are collapsed behind a “Show unchanged fields” toggle, so a record with sixty attributes and three real changes reads as three changes. Any field where the group's records genuinely disagree gets a picker so you can choose which record's value wins for that field alone — see survivor & field rules.
- Merge— Deduptio uses Attio's native record merge: Attio moves emails, calls, notes, tasks, list memberships and incoming references onto the surviving record itself. The merged record gets a new record ID, and the original records become permanently unreadable in Attio. The Merge Log links to that new record when it was able to capture the link at merge time — see the Merge Log section of rollbackfor when it can't.
- Skip — not a duplicate? Skip the group and it won't come back on future scans.
What happens to lists, tasks, notes, references and meetings
The preview counts what's attached to the records being removed — list memberships, tasks, notes, incoming references, and meetings — and states what happens to each. Attio's merge moves list memberships, tasks, notes and incoming references onto the survivor itself, as part of the same native merge that moves everything else. That is Attio's to do, not Deduptio's, so there is nothing to choose per category — the panel shows the counts, not a set of controls.
Meetings are the one thing a merge never touches. Attio has no way to move or re-link a meeting, so a meeting attached to a record being removed stays exactly where it is: not deleted, not moved. It loses its link to that record and stays in Attio, searchable by date and participant. See rollback for what a restore can and cannot bring back.
Bulk merging
Groups load 50 at a time, newest first — use the object filter and the Previous/Next buttons to page through a large queue. Use the toolbar above the queue to merge many groups in one go: select individual groups with checkboxes, or Select page to select everything currently loaded, and hit Merge selected or Merge all.
Merge allis not limited to what's on screen — it takes every pending group matching the current object filter, however many pages that spans, not just the groups this page rendered. It runs as a background job on our servers, so closing the tab or losing your connection does not stop it — but it does slow it right down. Unattended, a background sweep gives the run one short slice every fifteen minutes, so a few thousand groups can take hours or days. Leaving the page open is what keeps it moving at full speed, and reopening the Duplicates page reattaches to the run in progress with its current count.
Groups merge one after another using each group's chosen survivor. A group that fails does not stop the run: it is counted in the failed total and left pending, so it comes back in the queue and you can retry it on its own or in a later run — see when a merge fails. The run reports how many failed rather than naming them; merging a group individually is what tells you why that group failed. Hitting a plan limit or an expired Attio connection is different: either one stops the whole run and tells you how far it got, because every remaining merge would fail the same way.
The object filter scopes the whole toolbar, Merge allincluded: with a filter on, “all” means every group for that object, not every group in the queue. It is the safest way to work through a large cleanup one object at a time.
After a merge
If the merged records shared a list, Attio's own merge keeps both list entries, and the merged record would end up in that list twice. Deduptio checks for this right after the merge and removes the extra entry — keeping the one that belonged to the record you chose to keep, since that entry carries the entry-level values (a pipeline stage, an owner) you expect to survive. When that entry can't be identified, the older of the two is kept instead. The removed entry is snapshotted first, exactly like a manual removal from Duplicate list entries, so it is restorable for 24 hours from that section's removal log. This check cannot fail the merge: a list outside Deduptio's Attio access is left as-is, and the merge log says so — see rollback for the rare case where the entry is removed but the snapshot itself could not be taken. The review screen tells you before you confirm whenever a merge would create this overlap.
Every merge lands in the Merge Log with a 24-hour rollback.