# IndieBrokenLinks

> Check up to 200 unique links on one page and see broken destinations first with each HTTP status.

Paste one page. See its broken links first, with each HTTP status.

The canonical page is https://indiebrokenlinks.com/.

## Use the tool

Open [IndieBrokenLinks](https://indiebrokenlinks.com/) to complete the job. The questions below describe the supported input, result, and limits. Every answer names its source next to it.

Source: [HTTP Semantics, RFC 9110](https://www.rfc-editor.org/rfc/rfc9110.html#name-status-codes).

## Questions and limits

### What is a broken link?

A broken link points at a page that is gone. The destination answers with HTTP 404, not found, or 410, gone for good, both defined in [RFC 9110](https://www.rfc-editor.org/rfc/rfc9110.html#name-404-not-found). A visitor who clicks it lands on an error page, and a crawler that follows it wastes a request and reads the site as neglected. IndieBrokenLinks requests every unique web link on one page and calls a link broken only when the destination itself says 404 or 410. Those rows come first, each with its status.

### What does could not verify mean?

The destination answered, but not with a number that proves anything. A 403 or 429 usually means the site blocks or rate-limits automated requests. A 500 or 503 means the server had a bad moment. No answer within eight seconds, more than four redirects, or a hostname that resolves to a private address lands here too. None of these say the page is gone. Open the link in your browser and look. If it works there, leave it and check again later.

### Is a redirected link broken?

No. A link is labeled redirected when the destination sent the check somewhere else and that final page answered 200. The visitor arrives, and the row shows the final address and the number of hops. It is worth a moment, not a repair: point the link at the final address, because each hop costs a request and a redirect can stop working later.

### What is a broken anchor link?

An anchor link such as `#pricing` scrolls to the element on the same page whose `id` is `pricing`, or to an `a` element with that `name`. When no element in the page HTML carries that id or name, the link scrolls nowhere, and IndieBrokenLinks lists it as broken. The check reads the ids and names from the HTML it already fetched, with no extra request.

The empty fragment and `#top` scroll to the top and count as working. A text fragment such as `#:~:text=` is matched against the page text by the browser, and a route such as `#/settings` is handled by the page's script, so both stay under could not verify. The HTML alone cannot settle them, and the check does not guess.

### How do I fix broken links on my page?

Start with the broken rows. For each one, find the new address of the page and change the `href`, or remove the link when the page has no replacement. When the missing page is on your own site, add a redirect from the old address to the new one, so every other link to it keeps working too. Then run the check again. A repeat inside the six hour cache window shows the same measurement, and the result says when a fresh one is available.

### Does one check cover my whole site?

No. One check reads one page, up to 1 MB of the HTML the server returns, and checks the first 200 unique web links in page order. It does not run the page's JavaScript, so a link a script inserts later is not seen, and it does not follow links to the pages they lead to. Check the pages that matter one at a time, starting with the home page and the pages visitors land on.

## Promises

- The core is free: no account, no card, no premium plan, no upgrade nag, no hidden paywall.
- Private lookup activity is never published.
- Analytics is currently off. Private lookup activity is never published or sent to a tracker. No lookup history becomes public inventory.

## More

- [Notes](https://indiebrokenlinks.com/blog.md): posts by the maker, newest first
- [More tools](https://indiebrokenlinks.com/tools.md): the other tools by turushan
- [security.txt](https://indiebrokenlinks.com/.well-known/security.txt): how to report a vulnerability

Made by turushan, https://twitter.com/turushan.
