The Scenario
The fundraising campaign kicks off in three weeks. You're the database manager at a nonprofit. The board has asked for a clean donor list — no duplicate solicitations, no one receiving two copies of the appeal. The problem: your 12,000-row donor database was migrated from three legacy systems, and the same person appears as "Robert Smith," "Bob Smith," and "R. Smith" in different tables.
A deduplication consultant quoted eight weeks and $40,000. The campaign timeline is three weeks.
The bad version:
- Sort alphabetically by last name and scan adjacent rows — which groups "Smith, Robert" with "Smith, Robert A." but misses "Smith, Bob" entirely because it sorts to a different position.
- Run a SOUNDEX formula — which generates so many false positives that the review process takes as long as the manual scan.
- Export to a data quality tool, configure the match settings, run it, export the results, and spend two days mapping the output back to the donation history table.
The appeal goes to print in 18 days. Every duplicate mailer costs $1.40 in postage.
The Easy Way: One Prompt in SheetXAI
SheetXAI reads your Google Sheet and calls Interzoid's full-name similarity key API for every donor row — grouping variants of the same name together without you building a matching model.
For each name in column A, generate an Interzoid full-name similarity key and write it to column B, then sort by column B so variant name groups are adjacent.
What You Get
- Column B: Interzoid name similarity key per donor row.
- The sheet re-sorted so "Robert Smith," "Bob Smith," and "R. Smith" land in adjacent rows sharing the same key.
- Donor clusters visible at a glance for the manual review step before you choose the canonical name per group.
What If the Data Is Not Quite Ready
Column A has first and last name combined — you want to match on full name as-is
The name in column A is already a full name. Generate an Interzoid full-name similarity key for each row as-is and write it to column B, then sort by column B.
You want to score specific name pairs that came up in a preliminary review
Compare every pair of names in columns A and B using Interzoid's name match score and write the similarity score to column C, flagging rows where the score exceeds 85 as likely the same person.
Some rows have blank names from an incomplete import — skip those
Skip rows where column A is blank or contains only whitespace. For all other rows, generate an Interzoid name similarity key and write it to column B. Flag blank rows as 'MISSING NAME' in column B.
Full dedup workflow: generate keys, score pairs, isolate clusters, pick canonical
For each name in column A, generate an Interzoid name similarity key and write it to column B. Add a COUNTIF in column C showing cluster size. For clusters with more than one member, identify the most complete name (longest, most words) and write it as the canonical form to column D. Flag singletons as 'UNIQUE' in column D. Then create a sheet called 'CanonicalDonors' with deduplicated rows using the column D canonical names.
One prompt handles the key generation, the scoring, the cluster analysis, and the clean output sheet.
Try It
Get the 7-day free trial of SheetXAI and open your donor database sheet — ask SheetXAI to generate name similarity keys and group variants before you finalize the appeal mailing list. Then see the spoke on cross-checking a prospect list against existing customers, or the full Interzoid integration overview.
