Analyzer

Markdown
link checker

Extract and categorize all links from your Markdown. Identifies external links, relative paths, images, and more.

NOTE: This tool extracts and categorizes links. For actual validation (checking if URLs are accessible), use CLI tools like markdown-link-check or broken-link-checker.

Auditing links in a GitHub-hosted docs site?

md0 CMS gives you a visual editor over your repo's markdown, so fixing a broken link means editing the page directly instead of hunting through raw files.

See the CMS

How link checking works

What it checks

  • Scans every [text](url) link in your markdown
  • Reports broken links (4xx, 5xx), redirects (3xx), and malformed URLs

Limitations

  • Some sites block automated requests and return 403 or time out
  • The tool flags these as "unreachable" rather than broken
  • Check manually when in doubt

Tips

  • Run the check before publishing
  • Internal links (relative paths like /about) are checked against the current domain
  • The tool does not validate anchor links (#section)

When to use this tool

Before a content migration

Moving a documentation site from Notion, Confluence, or another platform to a GitHub-backed markdown repo often leaves hundreds of internal links pointing at a domain or path that no longer exists. Paste the exported markdown here to see every URL before a broken link ships.

Auditing a GitHub README

A project README often links to docs, demo videos, CI badges, and npm packages created a year or more ago. Packages get renamed, videos disappear, and badge URLs shift with CI providers. Paste the README here to see which links still resolve and which return 404.

Reviewing blog posts before publish

A technical blog post often links to Stack Overflow answers, library docs, and GitHub issues, and some of those threads get closed or moved. Paste the draft in before hitting publish to catch dead links while they're still easy to fix.

What happens under the hood

Link extraction

The tool parses your markdown and pulls out every link written in the standard [text](url) syntax, including image links written as ![alt](src). It also picks up reference-style links ([text][ref]) and bare URLs in angle brackets.

Categorization

The tool sorts each URL into a category: external (starts with http:// or https://), relative path (starts with / or ./), anchor (#section), or image. This gives a quick inventory of what the document links to, so you can prioritize which ones to verify first.

Nothing is sent to a server

Parsing runs entirely in your browser, and the tool never uploads your markdown anywhere. This makes it safe to use with draft content, internal docs, or anything not yet published.

Frequently asked questions

Does this fetch each URL to check if it's live?

The tool extracts and categorizes every link in your markdown, giving you a full list to review. Live HTTP status checking, confirming whether a URL returns 200 or 404, needs a server-side tool or a CLI like markdown-link-check. This one focuses on extraction and categorization, fast enough to audit structure and spot obvious issues while you write.

What link formats are supported?

The tool detects standard inline links [text](url), image links ![alt](src), reference-style links [text][id], and autolinks in angle brackets <https://example.com>. It may miss bare URLs without markdown syntax unless they're in autolink format.

Can I check links in a large document?

Yes. Paste as much markdown as you need; the tool enforces no character limit. Very large documents with thousands of links may take a moment to process, though parsing stays fast since it runs locally in your browser.

How is this different from running markdown-link-check in a CI pipeline?

A CI pipeline tool like markdown-link-check sends HTTP requests to every URL on each commit, catching broken links in production but adding latency to the build. This tool handles quick, ad-hoc auditing during writing or review, with no setup, no config files, and no CI integration required. Use both: this one while drafting, the CLI in CI.