Duplicate & Conflicted-Copy Note Finder
Scan a notes folder for duplicate, near-duplicate, and sync-conflict copies. See side-by-side diffs and which file is newer. Runs entirely in your browser.
Drop your notes folder here
or choose a folder from your computer.
Only .md and .markdown notes are read. Nothing is uploaded. Files are read entirely in your browser.
Overview
A duplicate note finder scans a notes folder and groups files four ways: same filename in different folders, byte-identical content, near-match content with 85% or higher shingled similarity, and sync-generated conflicted copies like Note 1.md or Note (conflicted copy).md. Each group gets a side-by-side diff and a newer-file flag by last-modified time, so you decide what to keep.
How it works
- 1Drop your notes folder onto the tool, or choose it with the folder picker. Nothing is uploaded; every file is read locally in your browser tab.
- 2The tool reads every .md and .markdown file and groups them by four independent signals: same filename in a different folder, identical content, near-identical content, and conflicted-copy filename patterns.
- 3Byte-identical notes are found by hashing each note's normalized content; a match means two files are the same note, verified again by direct comparison so a hash collision can never falsely group unrelated notes.
- 4Near-duplicates are found by comparing shingled text similarity (Jaccard on 5-character windows) between notes that share a name or are close in file size; a similarity of 85% or higher counts as a near-duplicate.
- 5Sync-conflict filenames (Dropbox's (conflicted copy), a numbered Note 1.md, or Syncthing's .sync-conflict- tag) are paired with the base file they were split from.
- 6Expand any group to see a side-by-side line diff and which file was modified more recently, so you know which copy to keep.
Worked example
A 6-note folder after a few months of syncing
Cooking/Recipe.md was copied into Backup/Recipe.md with identical content: that pair shows up twice, once as a same-name match and once as a 100% identical-content match. Journal/Draft.md picked up a sync-generated Journal/Draft 1.md whose text differs by a single changed word out of roughly 650 characters: the tool groups them as a conflicted copy and, separately, as a 96.1% near-duplicate. Two unrelated notes, a grocery list and a Q3 planning doc, share no name, no similar size, and no similar text, so they produce no group at all. Scanning the 6 notes returns exactly 4 groups.
Methodology & privacy
Four checks run independently over the notes you drop in. Same-name: notes are grouped by exact filename (case-insensitive) whenever the same name appears in two or more folders. Identical: each note's content is normalized (case-folded, whitespace-collapsed) and hashed; notes sharing a hash are grouped, then re-verified by direct string comparison so a hash collision never produces a false match. Near-duplicate: notes are broken into overlapping 5-character shingles, and the Jaccard similarity of two notes' shingle sets (size of the intersection over the union) is compared; a score of 0.85 or higher counts as a near-duplicate. To keep this from becoming a slow full-vault comparison, near-duplicate checks only run between notes that already share a name or whose file sizes are within 20% of each other; if the folder has more than 400 readable notes, the size-based comparison is skipped entirely and only same-name pairs are checked, which the tool reports openly rather than silently doing a partial scan. Conflict: filenames matching common sync-conflict patterns (a Dropbox conflicted copy, a numbered copy like Note 1.md, or a Syncthing sync-conflict tag) are paired with the base file they were split from.
- Source: Obsidian Forum: How to find notes with same name
- Source: Obsidian Forum: Identifying duplicate notes for file clean up
- Source: Obsidian Forum: Duplicate finder and diff viewer (feature request)
- Source: Obsidian Forum: How to deal with duplicate files created by sync
Your notes never leave your browser. The folder is read locally through the browser's file picker or drag-and-drop; nothing is uploaded to a server, and closing the tab clears everything.
FAQ
Is anyone aware of a plugin that can collate notes with duplicate content for easy deletion?
+
This tool does that without a plugin. Drop your notes folder in and it groups notes by identical content, near-identical content, shared filename, and conflicted-copy naming, so you can see everything worth deleting in one pass.
How do I find duplicate notes in Obsidian?
+
Point this tool at your vault folder. It reads every .md file locally in your browser, hashes and compares content, and lists every group of notes that are identical, near-identical, or share a filename, without installing a plugin.
Why do I have multiple notes with the same name in different folders?
+
This usually happens when a sync service like iCloud, Dropbox, or OneDrive resolves a conflict by keeping both versions instead of merging them, or when a note gets copied into a new folder and the original is never deleted. This tool groups same-name notes across folders so you can compare and remove the stale one.
What is a conflicted copy and how do I clean it up?
+
A conflicted copy is a file your sync service created because it saw two different edits to the same note at once, for example Note (conflicted copy).md or a numbered Note 1.md. This tool detects those filename patterns, pairs each conflicted copy with its base note, and shows a diff so you can merge the changes and delete the copy.
How can I tell which version of a conflicted note is newer?
+
Once your folder includes file modification times, expand any conflict group in this tool and it labels which file was modified more recently, so you are not guessing from filenames alone.
Does this tool detect notes that are similar but not word-for-word identical?
+
Yes. It compares notes using shingled text similarity, not just exact matches, and flags a pair as a near-duplicate when 85% or more of their text overlaps, which catches lightly edited copies that an exact-match check would miss.
Does this modify or delete my notes automatically?
+
No. The tool only reads your files to build a report; it never writes to or deletes them. You review each group and decide what to keep, merge, or remove yourself.
Related tools
Vault Audit: Health Report for Your Notes
Drop a notes folder and get one health dashboard: orphan notes, stale notes, stub notes, unused attachments, and frontmatter issues, plus a shareable score.
Broken Link Checker for Obsidian & Markdown Vaults
Scan an Obsidian or markdown vault for broken wikilinks and dead links. See the source file, line number, and a suggested fix. Runs entirely in your browser.
Tag Cleaner: Audit & Merge Messy Tags
Scan a notes vault for messy tags: case collisions, plural splits, typos, and nesting issues, then copy a ready rename plan. Runs entirely in your browser.
Markdown Word Count & Reading Time
Count words and characters in markdown without frontmatter, code, or link syntax inflating the total, plus a per-heading breakdown and reading time.
This tool fixes one moment. recal handles the whole day.
recal is a private brain for your Mac. It watches how you work, on device, and starts doing your busywork itself. You approve every action.
Get early access