Broken Link Checker

Enter a page URL and every link on it — plus images, scripts and stylesheets if you like — is tested live, so you can fix 404s and redirect hops before visitors or Google run into them.

Runs on our server

Enter a page URL to test every link on it. Results stream in live.

Enter any public URL above and press Enter or Ctrl + Enter.

  • HTTP status of each internal & external link (up to 500 per page)
  • Redirects, with the final destination URL
  • Bot-blocked links (401/403/429/999) flagged as restricted, not broken
  • Anchor text, link type, nofollow and response time

This tool fetches the public URL you enter from our server. Results are held in temporary memory for a few minutes and never stored in a database.

How to use the Broken Link Checker

  1. Paste the URL of the page you want to audit — a blog post, landing page or your homepage.
  2. Choose whether to include external links and images, CSS & JS files, then click Check links (or press Ctrl+Enter).
  3. Watch results stream in. Use the filters to show only Broken, Redirects or Restricted links.
  4. Fix each broken link at its source (update, redirect or remove it), and export the list as CSV for your team.

What is a broken link checker?

A broken link checker requests every URL that a page links to and reports which ones no longer work. A link is “broken” when the target returns a client or server error — usually 404 Not Found or 410 Gone, sometimes 500 — or when the server cannot be reached at all because the domain expired, DNS fails or the connection times out.

This tool checks a single page in depth. To find broken pages across an entire site, run the Website Crawler, which follows internal links from page to page.

How the check works

We download the page’s HTML, collect every <a href> (and, if you tick the option, every image, script and stylesheet), remove duplicates and fragment-only links, and then test up to 500 unique URLs in parallel. Each URL is requested with a lightweight HEAD request; if the server rejects HEAD or returns an error, we retry with a normal GET so you don’t get false positives. Redirects are followed and the final destination is shown next to the original URL.

Understanding the results

ResultStatus codesWhat to do
OK2xx, no redirectNothing — the link works.
Redirected301, 302, 307, 308 → 2xxWorks, but update internal links to point straight to the final URL.
Restricted401, 403, 429, 999The site blocked our automated request (login wall, bot protection or rate limit). Open it in a browser to confirm.
Broken404, 410, other 4xx, 5xx, or no responseFix, redirect or remove the link.

LinkedIn famously answers bots with the non-standard code 999, and many CDNs return 403 to anything that isn’t a real browser. That’s why those links are reported separately instead of inflating your broken count.

Why broken links matter

Visitors who hit a dead end usually leave. For search engines, broken internal links waste crawl activity and stop link equity from reaching the pages you care about, and a page full of dead outbound links signals neglected content. Redirect hops are not errors, but each one adds latency — linking directly to the final URL is faster for users and crawlers alike.

How to fix broken links

  • Internal 404s: correct the link, or if the target page moved, add a 301 redirect from the old URL (our Redirect Generator writes the rules for Apache, Nginx and more).
  • External 404s: find the new location of the resource, link to an archived copy, or remove the link.
  • Redirected links: replace them with the final URL shown in the results. Use the Redirect Checker to inspect long chains.
  • Unsure what a code means? Look it up in our HTTP status code reference.

Tools that pair well with the Broken Link Checker

  • Meta Tag Checker — See exactly how Google is likely to display your page: title and description measured in pixels, desktop and mobile previews, and every meta tag in the <head>.
  • Heading Checker — Visualise the heading outline of any page.
  • Image Alt Checker — Audit every image on a page in one table: alt text status, file size, width/height attributes, format and lazy loading — with filters and CSV export.
  • Keyword Density Checker — Enter a URL and the keyword it should rank for.

Frequently asked questions

Why are some links marked “restricted” instead of broken?
Status codes 401, 403, 429 and 999 mean the server refused an automated request — because of a login, bot protection or rate limiting — not that the page is gone. They usually work fine in a browser, so check them manually before changing anything.
Does this check my whole website?
No, it checks every link on one page. To scan many pages at once and find broken pages site-wide, use the Website Crawler.
A link works in my browser but shows an error here. Why?
Some servers block data-centre IPs or unknown user agents, time out on slow responses, or only work with cookies and JavaScript. Timeouts and connection errors can also be temporary — run the check again before acting.
Do broken links hurt SEO?
A few broken outbound links won’t tank your rankings, but broken internal links stop crawlers and link equity from reaching your pages and frustrate visitors. Fixing them is one of the quickest technical SEO wins.
Is a redirected link a broken link?
No — it still reaches a working page. But each redirect hop adds a round trip, so update internal links to point directly to the final URL.
How many links can be checked?
Up to 500 unique URLs per page. Duplicate links are checked once, and their anchor texts are grouped together.

Related tools