Marketing tool

Internal broken-link checker

Find internal links with recorded response errors by comparing supplied HTML with a crawl-status export.

Your inputs

Exact headers shown in the example. UTF-8 up to 2 MB; upload takes priority.

Your results

Ready when you are
Add your inputs or try an example.
Your results will appear here.

How it works

Extract same-origin anchors from supplied HTML, resolve relative URLs and join them with a recorded status CSV to distinguish missing, blocked and unverified targets.

Read the source reference ↗

A few things to know

Local export analysis, not a live site crawler. Supplied HTML may omit client-rendered links; fragment existence is not checked. Recheck stale, blocked or server-error results before changes.

A little context

When to use this tool

Review internal links from an HTML page alongside recorded response statuses. Access errors and missing records remain separate from confirmed recorded missing pages.

  • Review an exported page.
  • Join links with crawl statuses.
  • Prioritize missing targets.

How to use internal broken-link checker

  1. Prepare the inputs

    Paste or upload page HTML and its source URL.

  2. Choose the settings

    Supply URL,Status response records from your crawl.

  3. Review and export

    Review missing and unverified targets against the actual site.

Try the numbers

Try the supplied example

Inputs

url: https://example.com/; html: <a href="/about/">About</a> <a href="/missing/">Old page</a> <a href="https://other.example/">External</a>; data: URL,Status https://example.com/about/,200 https://example.com/missing/,404

Result

The example flags /missing/ as recorded 404 and /about/ as recorded success, ignoring the external link.

What it means

This is snapshot evidence; verify failures and rendered links on the actual site.

Common mistakes to avoid

A blocked request is not automatically a missing page

A blocked request is not automatically a missing page.

Export HTML after rendering if JavaScript creates links

Export HTML after rendering if JavaScript creates links.

Useful answers

Frequently asked questions

Definitions, edge cases, and practical next steps for this tool. Search all tool FAQs ↗

Does this crawl the site?

No. You provide HTML and a response-status CSV.

Which CSV headers are required?

URL,Status with one recorded status per URL.

Are external links included?

No. Only HTTP(S) targets on the source page’s origin are considered.

Are fragments checked?

No. Fragments are removed for response-status matching.

Does a 403 mean a broken page?

Not necessarily. It is an access/client error requiring review.

What about JavaScript-rendered links?

They must be present in the HTML you supply; this tool does not execute scripts.

Are my inputs uploaded or stored?

Processing happens locally in your browser. This tool does not upload inputs. Downloads stay on your device; sharing or opening them in another service is your choice.

What should I check before using the output?

Local export analysis, not a live site crawler. Supplied HTML may omit client-rendered links; fragment existence is not checked. Recheck stale, blocked or server-error results before changes.

Explore the topic in the blog

Sources and method

Use the references below to check definitions and platform guidance. The model’s scope and limits are explained above. Read our editorial standards.

Help

How can we help?

Find instructions, report a problem, or leave a message.

Read this tool’s FAQs ↗

Guides for this tool

Keep the crawl evidence attached to the finding.
Common questions

Where do I start? Try an example, then replace its values with yours.

Why did my upload fail? Check the field error, accepted format and file-size limit. Start with a small sanitized sample.

Where are my results? Review the result panel, then use its copy or download controls. If a calculation fails, check the error beside the input.

Message us

Chat opens Tawk.to. It processes your messages and connection data. Do not paste private inputs or file contents. Availability and response times vary.