Broken Link Checker

Find broken destinations linked from a public page, review access restrictions, and locate the source links to repair.

Enter the public page containing the links. Checks up to 25 unique HTTP destinations from its first 500 anchors.

Screpy's free Broken Link Checker checks up to 25 unique destinations linked from one public page. Enter the page containing the links to see which destinations return 404 or 410, which are reachable, and which need further investigation. The report keeps source link text and HTML line numbers so you can find the references to change.

Check the page that contains the link

Paste a complete https:// or http:// page URL, then submit the form. To investigate a reference in a blog post, enter the blog post's URL rather than the destination you suspect is missing. The source must be publicly accessible HTML; this check cannot sign in or inspect a private preview.

The checker reads <a href> links from the returned HTML. Relative addresses resolve against the page's effective base URL. Repeated links to the same destination share one HTTP check. Fragment differences such as #pricing do not create separate destination checks, while different query strings can.

Links back to the same page, email addresses, telephone links and other non-HTTP references are excluded. Links created only after JavaScript runs are outside this check. That is a limitation of this tool, not evidence that Google cannot discover those links: Google's crawlable-link guidance also discusses links inserted by JavaScript.

Read the broken link checker's status results

Use the status number together with the category. The category filters help separate repairs from requests that need another look.

Result Observed response Next step
Broken, red cross 404 or 410 Check whether the URL is wrong, removed or moved; locate the source links before editing.
Reachable, green check 2xx Confirm the destination still provides what the link promises.
Restricted, amber warning 401, 403 or 429 Review authentication, access rules or rate limiting; retry when appropriate.
Server error, amber warning 5xx Investigate availability and recheck before replacing the reference.
Other, gray marker Another HTTP response Inspect the actual number and destination before deciding.
Unknown, gray marker No usable final response Retry or investigate the request; absence of a result does not confirm breakage.

The HTTP standard distinguishes a missing or undisclosed resource (404) from one likely removed permanently (410). A 403 means the request was refused; it does not establish that the page has disappeared. These results describe the checker's request, so a logged-in visitor may see something different.

A successful response also has limits. The checker examines destination response headers, not their content. An error message, login screen or unrelated page can return 200. Google describes error content served with a successful status as a possible soft 404. This report cannot diagnose that condition or establish that a page is indexed.

Find each source link to change

Open a destination's occurrences to see the retained link text and source line. One broken destination can appear in navigation, a paragraph and the footer; fixing one occurrence may leave the others unchanged. Line numbers refer to the returned HTML, so they may differ from your content editor's lines. Link text can be shortened; for an image-only link, its alt text can supply the label.

For example, suppose a source page contains these two links:

<a href="https://example.com/old-guide/#setup">Setup guide</a>
<a href="https://example.com/old-guide/#limits">Service limits</a>

Both share a check of https://example.com/old-guide/. If it returns 404, review both source references. If it returns 200, the checker still has not verified that the setup and limits fragments exist.

After a redirect, the table shows the final status and the final URL when it differs. Followed redirects are limited to five steps. Use the Redirect Checker when you need the individual hops; this broken-link report does not show the complete chain.

Understand partial coverage and skipped links

The Broken Link Checker reads the first 500 source anchors and selects the first 25 unique eligible destinations in source order. It does not rank them by importance. Navigation can therefore occupy much of the selection before article links appear.

Suppose the first 500 anchors contain 40 unique eligible destinations. The summary shows 25 selected and 15 skipped. Repeated anchors do not each count as another destination. Skipped counts the eligible destinations found but left outside the 25-target selection; it does not count every excluded email link, same-page reference or anchor beyond the first 500.

Each destination retains at most 20 source occurrences. Selection limits, occurrence limits, unknown requests or a report-size limit can make coverage partial. A destination request has a five-second budget, and the overall check can also stop before a usable report is available. Check the coverage notice as well as the broken-link count. An unavailable result with no selected destinations is not proof that the page is healthy.

For a larger inventory of source anchors, use the Internal Link Analyzer. It does not test their HTTP responses. This free broken-link check covers one page; discovering failures throughout a website requires a broader crawl.

Repair the destination without losing context

Start with links that block an important next step, such as a product page, booking route or installation guide. The report identifies HTTP problems; you decide which references matter most to your visitors.

For an internal 404 or 410, check the path for a typo and confirm whether the intended page still exists. Correct the source link if its address is wrong. Restore the page if its removal was accidental. If the content moved, point the link at the relevant replacement. Google recommends permanent server-side redirects such as 301 or 308 for permanent moves. An unrelated homepage does not fulfill a link promising a specific guide.

For an external reference, locate a current page that supports the same statement. If no reliable replacement exists, remove the link or rewrite the passage rather than preserve a misleading reference. Check the replacement's content as well as its response.

Handle access restrictions and server errors separately. A 401 may be expected for members-only material; 403 or 429 may reflect the request's access conditions. A 5xx response calls for an availability check and another attempt. Avoid deleting a useful reference solely because a temporary or restricted request failed.

Verify the repair and save useful evidence

Publish the source changes and allow any cached HTML to update, then check the source page again. Confirm that the affected occurrences now point to the intended destination. Review the destination as a visitor too: a green response cannot confirm the correct content, a usable login journey or a working section fragment.

Filter the report to focus the handoff. The CSV download contains the currently filtered URLs and their status classifications; it does not include HTTP numbers or source occurrences. Download JSON when you need the full retained report, including HTTP evidence, occurrences and coverage. Neither export adds destinations that were not checked or evidence removed by retention limits.

For specific destinations outside the selection, the Bulk HTTP Status Checker accepts up to 50 supplied URLs. Use that result to review those addresses, then repair their references on the source page. The tools do not automatically select the next batch or keep monitoring after a check.

Broken Link Checker questions

Find broken destinations linked from a public page, review access restrictions, and locate the source links to repair.

Why can a link I can open show 403?

The server can refuse the checker's request while allowing your browser or logged-in session. A 403 is reported as restricted access, not confirmed removal. Review access conditions before editing the link.

Does zero broken links mean every link works?

No. It means the retained checked destinations did not return 404 or 410. Check coverage and unknown results; unselected links, destination content and section fragments remain unverified.

What does an unavailable result mean?

The source or analysis did not provide a usable result, or no eligible destinations were selected. Try a publicly accessible HTML page and review the notice. Unavailable does not mean zero broken links.

Does this check broken images or links added by JavaScript?

It checks destinations of anchor links in the returned HTML. It does not scan image src attributes or execute JavaScript. An image wrapped in an anchor can contribute that anchor's destination.