One record per person.
Every time.
Duplicate records are expensive.
Fragmented giving history
A donor's $10K campaign gift, $500 annual fund pledge, and $2K event ticket sit on three separate records. Your reports show inaccurate data.
Double-counted attendance
The same patron shows up twice in your season ticket report. Segments break down, patrons end up in the wrong groups, and your board sees inflated numbers.
Duplicate mailings & wasted spend
You send two invitations to the same address — sometimes to patrons who haven't engaged in years. Mail gets returned, postage budget explodes, and the people you do want to reach feel ignored.
One place to merge, clean, and maintain your patron records.
Find, Review & Resolve
Tess Buddy surfaces every likely duplicate in one place. For each pair, you decide — merge, swap, household, or skip. Or let it run automatically in the background. Nothing commits until you're ready.
Full Audit Trail
Every merge is logged — who, when, and what changed. If something looks wrong later, you can unmerge or reactivate a record directly from the history.
Remove Inactive Records
Filter by last ticket purchase or donation and remove records that no longer belong. Set your own threshold — Tess Buddy clears out the rest so your segments stay clean.
Quick Tools
Need to merge two specific records on the spot, or split a household right now? Handle it in the moment without running the full workflow.
See exactly what you're merging.
Every likely duplicate lands in one place — side by side, with customer numbers, names, and one-click actions to resolve them. Customer numbers link directly to the record in Tessitura.
See who hasn't shown up in years.
Filter by how long it's been since someone bought a ticket or made a donation — then remove the records that no longer belong.
See where duplicates are coming from.
Track which entry points are generating the most duplicate records — so you can train staff, fix integrations, and stop the problem at the source.
Fix duplicates at the source — Tess Buddy identifies which integrations are creating them and applies preventative hygiene rules directly in Tessitura so they stop coming in.