After about a year of renaming and reorganizing notes, I got curious how many of my links still pointed anywhere. So I made a small tool to check the whole vault at once, and I’m sharing it in case your vault has the same quiet rot mine did.
How it works
Open the page, drag your vault folder onto it (or click to browse). A few seconds later you get every link sorted into three buckets:
- Working — resolves fine, just counted.
- Probably renamed — the link points at nothing, but a note with a very similar name exists (like
[[My Project Ideas]]when the file is nowproject-ideas.md). It shows the likely match so you can confirm before fixing. - Planned notes — no match at all. Some of these are typos or notes you deleted, but in my vault most turned out to be notes past-me meant to create and forgot about. Early feedback convinced me this bucket is less an error list and more a list of ideas you dropped, so the tool treats it that way.
The export reflects that split: you get a markdown cleanup checklist (each item links straight to the note that needs fixing, so you can work down the list inside Obsidian) and a separate ideas backlog of the planned notes, in case rediscovering them tempts you to finally write one.
Details it gets right
Heading links ([[note#section]]) and block references ([[note#^abc123]]) resolve to their note. Aliases in frontmatter count as valid targets. Embeds like ![[image.png]] are checked against all files, not just markdown. Links inside code blocks are ignored so syntax examples don’t get flagged.
One honest limitation: links inside frontmatter properties are currently skipped entirely, not checked.
Privacy, since it matters here
It’s a single static HTML page with no external scripts. Your files are read locally in the browser tab and nothing is sent anywhere. No account, no tracking, no install.
Don’t take my word for it: the source is un-minified (right-click, View Source), you can watch the Network tab stay empty while it scans, and it works just as well with your internet disabled. You can even save the page with Ctrl+S and run your own copy offline forever.
Links
- Tool: https://vault-link-checker.vercel.app/
- Source (MIT): GitHub - Tomayachi/vault-link-checker · GitHub — one HTML file, audit or self-host as you like
Feedback very welcome, especially vaults where it miscounts or link syntax it doesn’t handle. Mine is only a few hundred notes, so I’m curious how it behaves on the truly huge ones.