By Updated

HTML Link Extractor

Extract every link from any HTML page: anchors, images, iframes, scripts, stylesheets, and meta canonical/og:url. Paste HTML or fetch a URL, get a categorised table with internal vs external counts and CSV export.

Interactive tool

Input

Used to resolve relative URLs and split internal vs external.

Links

Paste HTML or fetch a URL to see all embedded links.

What is the HTML Link Extractor?

A free tool that surfaces every URL embedded in an HTML document. Anchor tags, image sources, iframe URLs, stylesheets, script sources, video and audio sources: all categorised by destination (internal vs external) and by tag type. Paste HTML directly, or fetch any URL through our SSRF-safe backend.

How to Use the HTML Link Extractor

  1. 1Pick an input mode: paste HTML, fetch a URL, or paste plain text containing URLs
  2. 2Set the base URL so relative paths can be resolved into absolute links
  3. 3Toggle deduplication if you want each unique (kind + URL) listed once
  4. 4Review the categorised counts (internal, external, anchor, mailto, tel, ...)
  5. 5Filter by kind or category, then copy or download the result as CSV
What you get

Key features

Every link kind

Anchor <a>, image <img>, iframe, stylesheet, script src, video, audio, source, plus <link rel> tags (canonical, alternate, ...).

Internal vs external detection

Resolves relative URLs against the base URL, then compares hostnames to classify each link as internal or external.

Three input modes

Paste HTML, paste plain text containing URLs, or fetch any URL via our SSRF-safe backend (rate-limited, size-capped).

Per-row attributes

Anchor text, rel, target, kind, and raw href are surfaced in the table and exported to CSV.

Dedup option

Optional deduplication by (kind + resolved URL) for cleaner CSV exports.

CSV export

Download all extracted links in a flat CSV that imports cleanly into Excel, Google Sheets, or any data tool.

Why extract links from HTML?

Crawling, auditing, and content QA all start with the same question: what does this page link to? Pulling links out of static HTML or a freshly-fetched page lets you sanity-check internal navigation, find broken external references before a search engine does, or feed a redirect map back into your CMS.

Common use cases

  • Auditing a competitor landing page for outbound link partners
  • Generating a redirect-map seed list from an archived HTML snapshot
  • Confirming every canonical / hreflang link tag is well-formed before deploy
  • Counting internal vs external links to assess link equity flow
  • Pulling all image sources from a page to build a CDN migration list

How relative URLs are resolved

  • The tool first looks for a <base href="..."> declaration inside the document. If present, that wins.
  • Otherwise the base URL you supplied is used.
  • Without either, the tool falls back to a scheme-only classification (anything starting with http(s):// is "external", everything else "internal").

SSRF safety

When you choose Fetch URL mode, the request goes through our hardened backend. It blocks non-public addresses, excessive redirects, content-type mismatches, and oversize responses. No URLs are logged.

Pro tips

Tips & best practices

Always pass a base URL

Without one, relative URLs are reported as-is and the internal/external split degrades to scheme-checking.

Pair with the URL Normalizer

Copy the URL column into the URL Normalizer to dedupe, dedupe-and-strip-utm, or canonicalise before you act on the list.

CSV imports cleanly into a spreadsheet

Use the CSV export when you want pivot tables / filters. The HTML output is better for at-a-glance browsing.

Built for trust

Privacy & security

Paste-HTML mode runs entirely in your browser. Fetch-URL mode routes through our SSRF-safe backend with rate limiting. URLs are not logged.

Frequently Asked Questions

Which tags does the extractor look at?

Anchor <a>, image <img>, iframe, script src, video, audio, source, plus <link rel="..."> elements (canonical, alternate, stylesheet, preload, ...).

How is internal vs external decided?

Each URL is resolved against the base URL you provide, then the hostnames are compared. Same hostname → internal, different → external.

Is the URL fetch safe?

Yes. Fetch mode routes through our SSRF-safe backend, which blocks non-public addresses, content-type mismatches, and oversize responses. Per-IP rate limiting is enforced. No URLs are logged.

Will it follow links recursively?

No. The HTML Link Extractor only inspects the single document you give it. A full-site crawl needs the (deferred) Broken Link Checker.

Does it run JavaScript on the page?

No. Only the static HTML response is parsed: links injected by JavaScript at runtime are invisible. Render the page in a browser first if you need post-JS link discovery.