Internal Links Extractor

Paste a URL or raw HTML and the extractor pulls every anchor tag out, separating internal (same host) from external, noting anchor text, rel attributes, target, nofollow status and the position in the document. Useful for SEO audits, orphan-page hunts and spotting inadvertent rel="nofollow" on important internal links.

How to extract internal links

  1. 1

    Enter a URL or paste HTML

    For a live URL, the tool fetches and parses the DOM. Pasted HTML is parsed locally in your browser.

  2. 2

    See the link table

    Destination URL, anchor text, rel, target, nofollow flag and link position (header / body / footer).

  3. 3

    Filter internal only

    Toggle the "internal only" filter to hide links that leave the current host.

  4. 4

    Export

    Copy as CSV or JSON for use in a crawler or spreadsheet audit.

Why internal linking matters for SEO

Internal links do three things Google cares about:

  1. Crawl discovery. Bots reach new pages by following links from pages they already know.
  2. PageRank distribution. Every internal link passes a share of the source page’s authority. Key pages deserve more inbound internal links.
  3. Contextual relevance. The anchor text and surrounding paragraph tell Google what the destination page is about.

What the tool flags

Flag Meaning
Internal / External Compared against the page’s host (including subdomains).
Nofollow rel="nofollow" present, no ranking signal passed.
Sponsored / UGC rel="sponsored" or rel="ugc", same crawl behaviour.
Target blank target="_blank", opens in a new tab.
Empty anchor No visible text (image-only or whitespace).
Hash only Fragment links like #section, do not cross pages.
Position Header / nav / main content / footer.

Fixing common issues the extractor surfaces

  • Internal nofollows on nav. Sometimes a template applies rel="nofollow" to every internal link, strip these.
  • Excessive exact-match anchors. If 40 internal links point to /blog/pricing with the anchor “pricing”, that can look manipulative.
  • Orphan pages. Crawl the whole site and check which URLs have zero internal links pointing to them.
  • Image-only anchors. <a><img alt="..."></a> is fine, but Google reads the alt text as anchor, make sure it is meaningful.

When to use URL fetch vs pasted HTML

  • Use the URL fetch for public pages and quick audits.
  • Use pasted HTML for authenticated pages (staging sites behind HTTP Basic auth), dynamic SPAs after JavaScript rendering, or offline analysis of a downloaded page.

Common mistakes

  • Treating subdomain links as external. Search engines usually do, blog on blog.example.com vs main site on example.com distribute authority separately.
  • Missing <link> elements (canonical, alternate). Those are not covered here; they count as internal references but are semantically different from anchors.
  • Confusing rel="noopener" with rel="nofollow". The first is a security attribute; it does not affect SEO.

Frequently Asked Questions

An anchor whose destination host matches the current page’s host. By default subdomains are treated as external; toggle “include subdomains” to count them as internal for single-brand audits.

When you fetch a URL, no, it parses the raw HTML response. For JavaScript-rendered SPAs, open the page, view source after load, and paste the DOM markup into the tool.

Not via URL fetch (the server responds with a login page). Log in, copy the rendered HTML, and paste it into the tool for local analysis.

Yes. Copy as CSV for spreadsheet work or JSON for feeding into a script, with one row per link including URL, anchor text, rel and position.

Related Tools

Tool available in other languages