Remove Duplicate Contacts in Google Sheets Without Losing Notes
By Anu Verma

To remove duplicate contacts in Google Sheets without losing notes, choose a surviving row for each person, copy over any information found only in other rows, then delete the extras. Review matching names before merging because different people can share a name.
To remove duplicate contacts in Google Sheets without losing notes, choose a surviving row for each person, copy over any information found only in other rows, then delete the extras. Review matching names before merging because different people can share a name.
A working copy protects the original contact list
Make a copy of the Google Sheets file before changing a contact list. Give the copy a clear name and do the cleanup there, leaving the original untouched until someone has checked the result. If the sheet feeds a mailing tool, shared address book, or report, pause that import while you work so an unfinished list is not treated as final.
Check what each column holds before looking for duplicates. Notes may be in a dedicated column, but useful details can also sit in fields for job title, preferred contact method, last conversation, or follow-up status. Look for hidden columns and sheets as well. A blank in one row does not mean the other row's value is safe to discard.
Google Sheets has a Remove duplicates command under Data cleanup. It is useful when rows are genuinely disposable copies. It is not a way to combine notes or choose the best version of a contact. If you run it on a range containing only names or email addresses, information in the other cells of removed rows can disappear from your working list. Save that command for after you have reviewed and merged the data you want to keep.
Email addresses help find duplicate contacts in Google Sheets
Start finding duplicate contacts in Google Sheets with a field that is more specific than a name, usually an email address. Sort the working copy by that column or use a filter to bring matching values together. Keep the full contact rows visible while you compare them; sorting only one column can separate names, notes, and addresses from the people they belong to.
Small differences can hide a match. An address may have extra spaces or different capital letters, so a helper column can standardize it for review. If email addresses are in column C, enter =IF(C2="","",LOWER(TRIM(C2))) in a new column and fill it down. Change the cell reference to match your sheet. Leave blank addresses blank rather than treating all blank rows as one contact. The helper value is a search aid, not a replacement for the original address.
Next, filter or sort by name to catch contacts without email addresses. A matching phone number, company, or other known detail can strengthen a possible match. None is conclusive by itself: a shared inbox may belong to several people, and an address can change. Mark uncertain pairs for review instead of deleting them.
The surviving row should be the reliable record
Choose the surviving row before moving any data. A practical rule is to keep the row with the most trustworthy current contact details and the strongest connection to your other work, such as the record already used in a shared address book. Use completeness as a tie-breaker, not as proof that every field is correct. A full but outdated row may be a worse choice than a sparse current one.
Compare the rows field by field. Keep a verified current phone number over an older one, but do not silently choose between conflicting numbers if neither has been confirmed. Move a unique job title or contact preference into the surviving row when it still applies. If a field allows only one value and both values matter, put the unresolved detail in a review column until someone can decide.
For notes, preserve meaning rather than simply replacing one cell with another. A row about a preferred time to call and a row about an outstanding follow-up contain different information. Put both in the surviving record, separated clearly enough that a colleague can understand them later. Do not use an AI tool to choose between conflicting personal details without checking the underlying records and your workplace's rules for sharing contact data.
Merging rows means moving unique data before deletion
To merge duplicate rows in Google Sheets and keep data, edit the chosen surviving row first. Copy each useful value from the other row into an empty field or combine compatible notes in the notes cell. If your team uses separate columns for follow-ups and background details, keep those distinctions rather than turning everything into an unstructured note. Mark the extra row as reviewed only after checking every column.
Work through a small group of matching contacts at a time. A temporary status column can distinguish records awaiting review from records whose information has been moved. For a contact with several rows, compare all of them with the survivor before deleting any. Otherwise, a later row may contain a note that was not present in the first pair you examined.
When only redundant rows remain, delete those marked as safe to remove. Sheets' Remove duplicates command is a simpler option if the remaining rows are truly interchangeable and you have checked the columns it will compare. Google says the command removes duplicate rows from the selected range based on the columns you choose; it does not merge their different contents. If the cleaned list will feed a weekly report from Sheets, finish this review before connecting the updated source.
Matching names need a separate identity check
Treat contacts who share a name as separate people until other details support a match. Compare email addresses, phone numbers, organisations, roles, and any relevant conversation history. A different employer does not always mean a different person, and a shared workplace does not mean two matching names belong to one person. When the evidence conflicts or is missing, leave both rows in place and flag them for someone who knows the contacts.
Review shared email addresses with the same care. A family account, team inbox, or reception address can appear on records for different people. Conversely, one person may have work and personal addresses. The review question is whether the rows describe the same person, not whether a single cell matches. If you cannot establish that, do not merge the notes.
After cleanup, compare the working copy with the original for contacts whose rows changed. Check that the surviving record contains every note and still has the right contact details. Scan the flagged rows separately, then confirm that any connected process uses the intended version of the sheet. A general AI output review checklist is helpful if AI assisted with grouping or rewriting notes, but a person should make the final identity decision.
Sources consulted
- Google Sheets Help (support.google.com)
Frequently asked questions
Does Remove duplicates in Google Sheets combine notes?
No. Remove duplicates removes rows that match according to the columns you select; it does not collect notes from discarded rows. Copy unique notes and other useful fields into the row you plan to keep first. Use the command only when the rows left to remove contain nothing you still need.
What if duplicate contacts have different email addresses?
Compare other details, such as phone numbers, organisation, role, and conversation history. One person may use several addresses, while different people may use the same team inbox. If those details do not establish that the rows belong to the same person, keep both and flag them for review.
How can I deduplicate a contact list without losing information?
Work on a copy, identify likely matches, and choose a reliable surviving row for each confirmed person. Check every column in the other rows, moving unique details and notes before deleting anything. Keep uncertain matches separate. Finally, compare changed records with the original and check any process that uses the list.
Is matching by name enough to delete a contact row?
No. Names are useful for finding rows to review, but different people can share one. Check independent details such as email address, phone number, organisation, and prior contact history. A match in one field may still be misleading, so leave the rows separate when you cannot confirm they describe the same person.
Related guides
Compare Two Spreadsheets to Find Missing RecordsMatch spreadsheet rows by a stable ID, flag records missing from either list, and check duplicates and name differences before acting.
Connect Claude to Google Sheets Without Writing CodeHave Claude read a Google Sheet and write results back to the right rows whenever a new entry lands, set up with Zapier and tested on a copy first.
Set Up Google Meet to Take Notes AutomaticallySet up Google Meet AI notes before a meeting, check when note-taking starts, find the document, and review access before sharing it.
Drafted with AI assistance and checked automatically before publishing. Tools and prices change; check the official source before you act.