Anchor Text Distribution
Count anchor text frequencies in pasted HTML.
Overview
The Anchor Text Distribution tool parses an HTML document and tallies the visible text inside every <a> element, returning a frequency-sorted breakdown so you can see how the page links to other pages and which phrases appear most often. It groups by exact match, by lowercase, and reports total link count alongside unique anchor count.
This is the go-to view when auditing internal linking, spotting over-optimised anchor text patterns (a common signal in Google's spam guidelines), or checking how a content team is actually labelling the links they ship. SEO analysts and content editors use it to answer questions like how to analyse anchor text distribution on a page or how to find over-used anchor phrases in HTML.
How it works
The tool walks the DOM, collects each <a> element with an href, concatenates its visible text (stripping nested tag markup but keeping inline content), trims whitespace, and increments a counter keyed by the normalised anchor string. Empty anchors and image-only links are reported separately because they carry no anchor text but still pass link equity via the alt of the wrapped image.
Counts are returned both raw and as a percentage of total anchors, which makes it easy to spot when a single phrase is responsible for an outsized share of internal links — a pattern that can look unnatural to search engines.
Examples
- A blog post pasted in shows
read moreaccounts for 38% of anchors, signalling poor descriptive linking. - A homepage shows 12 occurrences of
Buy nowand only 2 of the actual product names. - An audit reveals 7 empty
<a>tags wrapping icons with noaria-label, an accessibility issue. - The same exact-match keyword appears as the visible text of 90% of external links — a red flag for unnatural linking.
FAQ
Does it follow links or fetch URLs?
No. It only parses the HTML you paste. Nothing leaves the browser tab.
Are nofollow and sponsored links included?
Yes, every <a> with an href is counted regardless of rel value. The tool focuses on visible anchor text, not link equity flow.
How does it handle anchors with nested elements?
Inner tags are stripped and only the concatenated text content is used, so <a><span>Buy</span> now</a> becomes the single anchor Buy now.
Why are some anchors grouped together with different casing?
Case-insensitive grouping is shown alongside exact-match counts because search engines typically treat Home and home as equivalent anchor text when assessing distribution.