Anchor Text Ratio: What a Natural Profile Looks Like
A natural anchor text profile is mostly branded and naked URLs, with exact-match anchors under about 10 percent. Typical benchmarks are 40 to 60 percent branded, 15 to 25 percent naked URLs, 10 to 20 percent partial match and under 10 percent exact match.
Anchor text is the clickable part of a link. When another site links to your page with the words "best running shoes," Google reads that as a vote that your page is about running shoes. Enough of those votes and you rank for it.
That worked too well. For years, the fastest way to rank was to get hundreds of links all saying the exact keyword. Then Google's Penguin update (2012, and baked into the core algorithm since 2016) started treating that pattern as what it is: manipulation. Sites with unnaturally keyword-heavy anchor profiles lost rankings overnight.
So the question every link builder now asks is: how much is too much?
The categories
Every anchor falls into one of these buckets:
- Branded: your name or domain. "Stark Anchors", "starkanchors.com".
- Naked URL: the raw address as the anchor. "https://starkanchors.com/".
- Exact match: precisely the keyword you're targeting. "seo checker".
- Partial match: the keyword inside a longer phrase. "this free seo checker tool".
- Generic: "click here", "read more", "this site".
- Image: the link wraps a picture; the alt text acts as the anchor.
- Other: ordinary descriptive text that isn't any of the above.
What natural looks like
Here's the thing about natural link profiles: nobody planning them. When people link to a site organically, they mostly use its name or paste the URL. Almost nobody writes "best running shoes" as a link unless they're doing SEO.
So a natural profile is mostly branded and naked, with a small tail of everything else. Benchmarks from large-scale studies of ranking sites cluster around:
| Category | Typical share |
|---|---|
| Branded | 40–60% |
| Naked URL | 15–25% |
| Partial match | 10–20% |
| Exact match | under 10% |
| Generic | 5–10% |
These are rules of thumb, not Google policy. The exact numbers vary by niche. E-commerce and local sites tend to carry more exact-match anchors naturally, because people do write "buy X in Y." Blogs and SaaS sites skew heavily branded.
The signal Google looks for isn't a specific number. It's whether the profile looks like humans made it. A page with 45% exact-match anchors doesn't look like humans made it.
Audit any page in a minute
You can't manage what you haven't measured. Paste a URL into the Anchor Text Analyzer, add the keyword the page targets, and you get every link on that page sorted into the categories above, with percentages and a health score.
Note what it measures: the links on the page you enter, both internal and outbound. That's the right view for two jobs:
Auditing your own internal linking. Your internal anchors are entirely under your control, and they're a real ranking signal. Sites that link to every product page with the exact keyword from the nav, sidebar and footer are over-optimizing themselves without any outside help.
Studying a competitor. The pages that outrank you show you their internal linking strategy for free. Which pages do they link to most? With what words?
For backlinks pointing to your site from elsewhere, you need a backlink index (Ahrefs, Semrush, Moz). The same category logic applies; the tool just can't see those links.
Fixing an over-optimized profile
Internal links: vary the anchors. If every link to /seo-checker says "SEO checker," change some to "check your site," "run a site audit," "our free checker," or just the brand. Descriptive variety is what natural writing produces.
Backlinks you control (guest posts, partner links, directories): edit them to branded or partial anchors. Most publishers will change an anchor if asked politely.
Backlinks you don't control: you generally can't change them, but you can dilute them. Ten new branded links make an existing exact-match link a smaller share of the whole. Focus on earning links naturally, which produces branded anchors by default.
Disavow only for links that are clearly spam. Google has said the disavow tool is rarely needed now; the algorithm mostly ignores bad links rather than penalising them.
What about the health score?
The analyzer gives a 0–100 score based on how far the distribution drifts from a natural profile. It penalises heavy exact match, too many generic anchors, and links with no readable text at all. It's a heuristic to help you spot problems quickly, not a Google metric. Read the warnings for the detail, then decide.
Common questions
Is 0% exact match bad? No. Plenty of top-ranking pages have almost no exact-match anchors. Relevance can come from partial matches and surrounding context.
Do internal anchors matter as much as external? Less, but they matter. Google has confirmed internal anchor text helps it understand pages. It's also the easiest lever to pull because you control all of it.
My competitor has 30% exact match and ranks #1. Why? Possibly because they have so many other strong signals that it doesn't hurt them, or because their niche naturally produces those anchors, or because they haven't been caught yet. Don't copy a risky profile; you don't have their cushion.
How often should I check? After any link-building push, and quarterly otherwise. Anchor profiles drift slowly, so it's not a daily task.
Frequently asked questions
What is a good anchor text ratio?
Roughly 40 to 60 percent branded, 15 to 25 percent naked URLs, 10 to 20 percent partial match and under 10 percent exact match. These are industry rules of thumb, not Google policy.
How much exact match anchor text is too much?
Above about 10 percent starts to look deliberate, and above 30 percent is a common penalty pattern. Niche matters; e-commerce and local pages naturally run higher.
Does internal anchor text matter?
Yes. Google has confirmed internal anchor text helps it understand pages, and it is the part of your profile you fully control.
How do I check my anchor text distribution?
Run the page through an anchor text analyzer, which classifies every link as exact, partial, branded, naked, generic, image or empty.
Try it on your site
Free, no signup. Takes about ten seconds.