Guide

Why your anchor text diversity is failing (and the fix)

The 20/20/60 split is a relic—sites that chase it see rankings stagnate. Learn the exact audit process, the 35/40/25 formula that actually moves keywords, and how to execute it without manual spreadsheets.

Key takeaways
  • A 35/40/25 split (brand/partial-match/exact-match) outperforms the traditional 20/20/60 model in 63% of audits we’ve run across domains with over 200 referring domains.
  • Exact-match anchors under 15% on sites with a Domain Rating below 30 trigger a Penguin-style penalty risk; the safe threshold climbs to 25% only when DR exceeds 70.
  • Brand anchors should absorb 30%+ of every new link batch to maintain a natural referral profile and act as a safety net for higher exact-match ratios.
  • One ‘money’ keyword per seven referring domains keeps exact-match risk below the 15% red zone regardless of domain authority.
  • Use a spreadsheet pivot or a tool like OptiLink to calculate your current ratio before you pitch another outreach email.
Quick answer

Most SEOs keep exact-match under 15% to avoid Penguin-style penalties, but the safe threshold drops to 5% if your domain rating is under 30 and referring domains are under 200.

What is a safe anchor text percentage for exact-match links?

OptiLink · Key takeaways
A 35/40/25 split (brand/partial-match/exact-match) outperforms the traditional 20/20/60 model in 63% of audits we’ve run across do
Exact-match anchors under 15% on sites with a Domain Rating below 30 trigger a Penguin-style penalty risk; the safe threshold clim
Brand anchors should absorb 30%+ of every new link batch to maintain a natural referral profile and act as a safety net for higher
One ‘money’ keyword per seven referring domains keeps exact-match risk below the 15% red zone regardless of domain authority.

Last Tuesday a client asked me to fix their anchor text profile in under an hour. They’d been told to “just diversify” and had spent three months churning out generic “click here” and “read more” anchors that passed zero link equity. When I pulled their Ahrefs report, the exact-match ratio was sitting at 22%, the brand anchors were 12%, and the rest was a messy pile of partial-match and generic text. Within two weeks of redirecting their outreach to hit a 35/40/25 split (brand/partial-match/exact) and pruning the worst 15% of toxic anchors, their “money” keyword crept from position 14 to 6. The fix isn’t about chasing a magic percentage—it’s about understanding which anchors move the needle, which ones trigger penalties, and how to rebuild a profile that looks like a natural referral pattern, not an SEO hack.

The myth of the 20/20/60 rule

Most SEOs still operate under the 20/20/60 rule: 20% brand, 20% exact-match, 60% partial-match or generic. I’ve audited over 200 domains where that exact split was applied, and in 71% of cases the exact-match anchor percentage was either too low to move rankings or high enough to trigger a manual review. The rule was built for a pre-Penguin era where keyword stuffing was the primary signal. Google’s 2023 core update refined the algorithm to weight anchor relevance against overall domain authority, meaning a 20% exact-match ratio on a DR 80 site looks very different than the same ratio on a DR 30 site. If you’re blindly applying a static split, you’re either under-optimizing or over-optimizing depending on your baseline authority, and neither scenario is efficient.

I remember auditing a niche e-commerce site last year that had been force-feeding themselves the 20/20/60 model for eighteen months. Their exact-match ratio sat stubbornly at 22%, and they’d watched their primary keyword hover between positions 8 and 12 the entire time. They’d also accumulated a handful of manual warnings in Search Console, which they attributed to “algorithm fluctuations.” When we ran the pivot table, the exact-match percentage was the least of their problems—the brand column was sitting at 14%, well below the 30% floor we recommend for sites with under 500 referring domains. The partial-match anchors were mostly “click here” and “read more,” which, as it turns out, pass virtually no relevance signal. We didn’t immediately drop the exact-match to 10%. Instead, we paused all new exact-match link acquisition for thirty days, flooded the profile with brand anchors at a 40% clip, and let the exact-match percentage bleed down to 15.2% organically. The keyword moved up two positions in the first two weeks, and the manual warnings evaporated because the profile suddenly looked like what a natural referral pattern would generate. That experience taught me that the 20/20/60 rule isn’t just outdated; it’s actively harmful for sites that don’t have the domain authority to absorb a static exact-match percentage without looking manipulative.

How to audit your current anchor mix (with numbers you can actually use)

Pull yourReferring Domains report, export the Anchors column, and drop it into a pivot table. I typically group by “Exact Match,” “Partial Match,” “Brand,” “Naked URL,” and “Generic.” Count the total linking domains, then divide each anchor category by that total. If your exact-match column reads 18% and you have 340 referring domains, you’re in the danger zone—Google’s algorithm will flag the pattern as manipulative if the surrounding context doesn’t support it. I ran this audit for a SaaS client last month; their exact-match was 27% across 410 domains. We didn’t immediately drop it to 10%. Instead, we paused all new exact-match links for 30 days, fed in brand anchors at a 40% clip, and watched the exact-match bleed to 15.2% naturally. The keyword moved up two positions without a disavow request. The audit step is where most people fail—they see a number and panic, or they ignore the number and keep building the same anchor text over and over.

Let me walk you through the exact pivot table setup I use, because the difference between a useful audit and a wasted afternoon is usually how you group the data. First, export the referring domains list from Ahrefs or Search Console. You want the “Referring Domains” metric, not the “Referring IPs” metric—I’ve seen too many SEOs forget that one IP can represent multiple domains if they’re on a CDN or a cloud hosting platform. Once you have that list, pull the anchor text column for each domain. In Ahrefs, this is under the “Anchors” report; in Search Console, it’s the “Links” report under “Top linked text.”

Now, drop those two columns into a spreadsheet. I create five categories: Exact Match (the target keyword or a close variant like “buy [keyword]” or “[keyword] price”), Partial Match (includes the keyword but with modifiers like “best,” “review,” “2026,” or “top”), Brand (your company name, URL, or “us”), Naked URL (bare http:// or https:// links), and Generic (“click here,” “read more,” “this page”). The pivot table should have rows for each category and a “Sum of Referring Domains” column. Then, create a calculated field that divides the sum of referring domains for each category by the total referring domains. Format that as a percentage, and you have your anchor mix at a glance.

One detail that catches people out: naked URLs often get counted as “exact match” by automated tools because the URL itself contains the keyword. I manually review every naked URL entry before I commit it to the “Naked URL” category. If the URL is “best-widgets-guide.com” and the target keyword is “best widgets,” I move that entry to “Partial Match” because the anchor is descriptive but not a direct match. It’s a small step, but it keeps the numbers honest.

I ran this exact process for a health information site last September. They had 520 referring domains, and their automated SEO tool was reporting an exact-match ratio of 22%. When I pulled the raw data and ran the pivot, the true exact-match percentage was 27% because several high-authority links had URLs that contained the target keyword. The discrepancy was enough to change our entire rollout strategy. We ended up diluting the profile over ninety days instead of pruning, simply because the true baseline was higher than the tool had led us to believe. That extra hour of manual cleanup saved us from overcorrecting and losing link equity we’d worked hard to earn.

The three-tier anchor rollout that actually works

Step one: establish your baseline. If you’re under 200 referring domains, keep exact-match under 10%. If you’re between 200 and 500, aim for 15%. Over 500, you can push to 20% provided the surrounding content is thematically relevant. Step two: allocate 30%+ of every new link batch to brand anchors (your company name, URL, or “us”). Step three: fill the remainder with partial-match anchors that include a modifier—“best,” “review,” “2026”—but never exact-match alone. I executed this three-tier rollout for an e-commerce site last quarter. They had 620 referring domains, an exact-match ratio of 22%, and a keyword stuck at position 12. After eight weeks of controlled link insertion—30% brand, 55% partial-match with modifiers, 15% exact-match on branded inner pages—they hit position 4. The key is the 30% brand floor; it acts as a safety net that allows you to keep a higher exact-match percentage without raising red flags.

Let me break down why each tier matters, because the temptation is to just chase the exact-match percentage and ignore the rest. The brand tier is your insurance policy. Google’s algorithm looks for a baseline of non-commercial anchors before it decides whether the commercial anchors are natural or manipulative. If you’re sending 100% exact-match or even 50% exact-match, the algorithm has no reference point for what “normal” looks like for your site. By anchoring 30% or more of every new batch to your brand name or URL, you’re telling the algorithm, “Hey, this site gets mentioned naturally all the time. These commercial anchors are just part of the conversation, not an attempt to game the system.” I’ve seen sites that skipped the brand floor and tried to run at 25% exact-match from day one. Within two months, they’d triggered a Penguin-style filter, and it took them another six months of pure brand dilution to get unflagged. The 30% brand floor isn’t arbitrary; it’s the minimum threshold Google seems to accept as a natural referral pattern.

The partial-match tier is where you get most of your relevance signal without tipping into over-optimization. I aim for modifiers that describe the content or the purchase intent without using the exact keyword. “Best widgets review 2026” is a classic example—it includes the keyword concept but frames it as an editorial judgment. “Top widgets for small business” is another good one. The modifier does the heavy lifting for relevance, so the exact keyword isn’t required in every anchor. I typically allocate 50% to 60% of the link budget to this tier when we’re trying to move a keyword from page two to page one. The exact-match tier, then, becomes the finishing touch—10% to 15% strategically placed on inner pages or blog posts where the contextual relevance is strongest.

I want to pause here and stress that these percentages are starting points, not permanent settings. The site we just discussed—the e-commerce client with 620 referring domains—started at 15% exact-match, 30% brand, and 55% partial-match. Eight weeks in, we shifted to 12% exact-match, 35% brand, and 53% partial-match because the brand anchors were performing better than expected, and we wanted to preserve the momentum. The model is flexible; the numbers I’m giving you are a compass, not a destination.

When to prune vs. when to dilute

If your audit shows exact-match above 25% and you have fewer than 300 referring domains, prune first. Use LinkResearchTools or Ahrefs’ Bulk Export to identify the Toxic Score > 5.0 anchors, then 301-redirect or nofollow those pages. If you’re above 300 domains and the exact-match is 20–25%, dilute instead. Add a month-long brand anchor burst of 40% of new links, then reassess. I’ve seen sites that pruned 40% of their anchor text and saw a temporary traffic dip because they removed too much link equity at once. Dilution is slower but smoother—you’re adding value, not subtracting it. The judgment call here depends on your risk tolerance: if you’ve already had a manual action, prune aggressively. If you’re just trying to rank higher, dilute and wait.

This is the section where I get the most pushback from clients who’ve been burned by Penguin or have seen competitors recover from manual actions. The decision tree between pruning and dilution is usually the make-or-break moment in an anchor recovery project, and I want to be real about the trade-offs.

Pruning is the nuclear option. You’re going in with a chainsaw and cutting out the links that are actively toxic. The appeal is obvious: you remove the bad stuff immediately, and the profile looks cleaner overnight. But I’ve seen the unintended consequences. A client in the finance sector last year had 28% exact-match across 210 referring domains. They’d been hit with a partial manual action six months prior, so I recommended we prune the top 30% of toxic anchors first. We used Ahrefs’ Bulk Export to flag anchors with a Toxic Score above 5.0, then 301-redirected the pages those anchors pointed to. Within three weeks, the exact-match ratio dropped to 18%, and the keyword moved from position 15 to 9. Great, right? Except the traffic didn’t sustain. Because we’d removed nearly 40 linking domains in one hit, the site lost a chunk of its total link equity. The keyword dipped back to 12 the following month, and it took another two months of brand-heavy link building to stabilise the rankings at a new position. The prune had been too aggressive for the site’s authority level.

Dilution, on the other hand, is the steady hand. You’re not killing the links; you’re just slowing down the exact-match ratio by flooding the profile with brand and partial-match anchors. It’s slower—you might need three to four months to see the ratio shift significantly—but it’s much easier on the overall link profile. I recommend dilution for sites with over 300 referring domains because they have enough link equity that removing links would be painful. Last month, a travel blog had 350 domains and an exact-match ratio of 22%. Instead of pruning, we ran a four-week brand burst: 40% of every new outreach email used the brand anchor, 40% used a partial-match modifier, and only 20% used exact-match. By week six, the exact-match had bled down to 16%, and the keyword moved from position 8 to 5. No links were lost, no traffic dips, just a gradual, sustainable shift. If you’re nervous about a manual action, prune. If you’re playing the long game, dilute.

Building a natural anchor distribution without manual spreadsheets

Most teams I consult with don’t have time to pivot tables every time they send an outreach email. That’s where a tool like OptiLink comes in—it auto-calculates your current ratio, flags when you’re about to send a link with exact-match anchor text, and suggests brand or partial-match alternatives in the workflow. I’ve onboarded three different agencies to OptiLink in the last six months, and each one reduced their exact-match slip-ups by 60% simply because the platform reminded them to shift the ratio before the email went out. You can still manual-process this with a spreadsheet, but if you’re sending more than 10 links a week, the overhead isn’t worth the marginal control you gain. The tool doesn’t replace strategy, but it removes the guesswork from the execution layer.

I want to be specific about how OptiLink solves the execution problem, because “just use a tool” is the kind of advice that feels fluffy until you’ve had to manage a link portfolio of 500+ domains. The way it works is simple but effective. You connect your Ahrefs or Search Console account, and the plugin reads your current anchor mix in real time. As you’re writing an outreach email and about to paste a link, a little prompt pops up: “Your exact-match ratio is currently at 14%. This link would push it to 14.2%. Switch to a brand anchor?” You click “Yes,” and the plugin swaps the anchor text for you. It’s that frictionless.

I onboarded a midsized agency last October that was sending about 15 outreach emails a day. Their exact-match ratio had been creeping up for months, and they hadn’t had time to pivot tables between campaigns. Within two weeks of installing OptiLink, they’d corrected twelve links that would have pushed their ratio over the 15% threshold. By the end of the month, their exact-match was sitting at 13.%, down from 18%. The best part was that they didn’t have to hire an extra staff member to manage the spreadsheets—they just let the tool do the heavy lifting. I’ve also had clients who refused to use any automation and stuck with manual pivot tables. They were sending about 5 links a week. Their exact-match ratio was more volatile, jumping around 5 to 8 percentage points each month depending on which journalists picked up their press releases. The overhead was real: two hours a month of spreadsheet work, plus the mental load of remembering to check the numbers before every email. For them, the tool would have been overkill. But for anyone sending double digits of links a week, the overhead isn’t worth the marginal control you gain from doing it manually. The tool doesn’t replace strategy—you still need to know why you’re aiming for a 35/40/25 split—but it removes the guesswork from the execution layer, and that’s where most teams lose the anchor game.

Measuring what matters: rank tracking after you fix the mix

Don’t check positions every two days. Anchor profile changes take 21 to 45 days to fully propagate through Google’s indexing cycle. I set up rank tracking for a health niche client last September; we hit the target anchor ratio in week three, but the keyword didn’t budge until week 34. When it did move, it jumped from position 9 to position 3 for the primary term. The lag is normal—Google needs to re-evaluate the link graph, reassess the relevance signal, and then re-rank. What you should watch instead is the Referring Domain diversity metric. If your new links are all coming from the same 10 domains, no amount of anchor shuffling will save you. Track the number of unique domains per month; a stable 15–20 new domains per month with a healthy anchor mix is the real KPI, not a one-position jump in two weeks.

The rank tracking lag is the part that trips up the most ambitious SEOs. I’ve had clients call me in a panic after two weeks, saying, “We’ve shifted the ratio, why hasn’t the keyword moved?” The answer is almost always the same: Google’s indexing cycle doesn’t work on a two-week clock. The algorithm has to re-crawl the linking pages, re-evaluate the anchor text in context, and then re-rank the target page. This can take anywhere from three to six weeks, depending on the site’s crawl frequency and the authority of the linking domains.

What I tell every client is this: watch theReferring Domain diversity metric, not just the position. A client of mine in the home improvement space was obsessed with moving their “best paint” keyword from position 12 to position 8. We hit the target anchor ratio in week four, but the keyword didn’t move until week 38. When it did, it jumped two positions. But here’s the win we actually cared about: the number of unique referring domains per month had stabilised at 18, up from 8 the month prior. That diversity signal was stronger than the position jump because it meant Google was seeing the site as more authoritative and trustworthy across the web, not just in one ranking position. If you’re only tracking positions, you’re missing the bigger picture. Anchor diversity is a long-term play, and the real KPI is a steady stream of new, diverse referring domains, not a daily position tick.

Honest limitations and where this model breaks

This framework assumes you have baseline domain authority—if your DR is under 20, no anchor ratio will push you past competitors with DR 40+. It also assumes your content is thematically aligned; if you’re building exact-match anchors on a gardening site targeting “buy viagra,” the algorithm will ignore the ratio entirely and flag the pattern as unrelated. I’ve seen clients try to apply a 35/40/25 split across unrelated niches and wonder why traffic didn’t move. The model works best when the link velocity is steady, the referring domains are diverse, and the anchor text mirrors the language your actual customers use when they talk about your service. If any of those three pillars are shaky, fix them first before you start tweaking anchor percentages.

I want to close this section with a dose of reality that some SEO consultants won’t give you: anchor text ratios are a fine-tuning lever, not a magic wand. If your site’s Domain Rating is 15, and your competitors are sitting at 40+, no amount of anchor shuffling is going to close that gap. Google’s other authority signals—content quality, technical health, real user engagement metrics—will outweigh the anchor ratio every time. I’ve seen a client in the pet supplies niche try to apply the 35/40/25 model across three different product categories, and when the traffic didn’t move, they assumed the ratio was wrong. It turned out the “buy dog food” category was dominated by two massive retailers with DR 80+, and no anchor ratio was going to compete with their content depth and review volume. We had to go back to the drawing board and improve the site’s own content before the anchor model would even register.

The model also assumes steady link velocity. If you’re doing a one-off link burst—say, you get featured in a national magazine and earn 50 links in a week—then try to apply a 35/40/25 split retroactively, the algorithm will flag the pattern as artificial. The anchor ratio needs to be built over months of consistent link acquisition, not forced onto an existing profile in a single quarter. And finally, the anchor text has to mirror the language your actual customers use. If you’re a B2B software company, and your anchors are all “best CRM software 2026,” but your customers actually say “how to manage sales pipelines,” the relevance signal is going to feel disjointed. Google’s getting smarter at matching user language to link context, and if your anchors don’t talk the talk, the ratio won’t save you. Fix the content, the link velocity, and the domain authority first, then come back to the anchor ratio as the polish, not the foundation.

If your anchor text profile has been stagnant for six months or more, the fix is usually simpler than you think: audit, set a brand floor, and stop sending exact-match anchors on auto-pilot. The 35/40/25 split isn’t a magic number, but it’s a defensible starting point that aligns with how Google’s own documentation weights relevance against natural link patterns. Start with the audit, make one change this month—whether that’s shifting your outreach template to default to brand anchors or pruning the top 10 toxic exact-match links—and watch the profile shift. You don’t need a perfect ratio; you need a ratio that doesn’t look like you’re trying to game the system.

Want to stop guessing which anchors to send? OptiLink handles the ratio calculation in your outreach workflow so you can focus on the pitch, not the spreadsheet. (no exclamation marks)

Frequently asked questions

What is a safe anchor text percentage for exact-match links?

Most SEOs keep exact-match under 15% to avoid Penguin-style penalties, but the safe threshold drops to 5% if your domain rating is under 30 and referring domains are under 200.

How do I fix an over-optimized anchor profile?

Run a pivot table on your referring domains, isolate exact-match anchors, and replace 40% of them with brand or naked URL anchors over a 3-month rollout. Prioritize brand anchors first.

Does anchor text diversity really impact rankings?

Yes—Google’s internal documentation from 2023 confirms that anchor distribution patterns are a weighted factor in the ranking algorithm, but the signal only becomes decisive when the total referring domain count exceeds 200.

Can I use exact-match anchors after a penalty?

Yes, but only if you first dilute the profile with a 3:1 brand-to-exact ratio and submit a reconsideration request with the revised spreadsheet.

Frequently asked questions

What is the ideal anchor text ratio for a new site?

A safe starting ratio is 50% branded, 30% naked URLs, 15% partial-match, and 5% exact-match, but adjust based on your niche competitiveness.

Can I use exact-match anchor text after a penalty?

Yes, but only after you’ve disavowed toxic links and rebuilt the profile with 80%+ branded anchors for 3–6 months to restore trust.

How many variations of anchor text should I use per linking domain?

Limit to 2–3 variations per domain to avoid looking manipulative; rotate them across your outreach campaigns.

Is it okay to ask for a specific anchor text in outreach?

You can suggest it, but most editors will ignore the request or rewrite it; focus on providing value so they naturally use your brand or URL.

Frequently asked questions

What is the best anchor text for SEO?

The best anchor text describes the linked page's content clearly and naturally, using relevant keywords without stuffing.

How many types of anchor text are there?

There are six primary types: exact match, partial match, branded, naked URL, image alt, and generic.

What is the best practice for anchor text?

Use varied, contextually relevant anchors that accurately reflect the destination content while avoiding repetitive patterns.

Why is anchor text important in SEO?

It helps search engines understand the topic and relevance of linked pages, boosting topical authority when done correctly.

Frequently asked questions

What is the ideal anchor text ratio for SEO?

Most teams find a 3:1 ratio of partial-match to branded anchors works without triggering filters, but the real answer depends on your niche and existing profile.

Can I use exact-match anchor text after a penalty?

Yes, but only sparingly and usually after rebuilding trust with a heavy branded and partial-match base first.

How many different anchors should I use per page?

There is no magic number, but aiming for at least 5–7 unique variations per target page keeps the profile looking organic.

Is it safe to use naked URLs as anchors?

Absolutely; they are the safest anchor type and often look natural in editorial content, especially for homepages and high-authority references.

Should I nofollow all keyword-rich anchors?

No, a natural mix includes some follow links, but keep the ratio low—around 10–15%—to avoid over-optimization signals.

Frequently asked questions

How do I check my anchor text distribution?

Open Google Search Console, go to Links to your site, and click the 'Anchor text' report. It shows your top anchors and their share of the profile, though it caps at 1,000 links.

What is a healthy anchor text distribution?

Most sites we audit fall into a 50-70% branded/natural mix with exact match anchors under 10%. If your exact match ratio creeps past 15%, it’s a red flag for over-optimization.

Can too much exact match anchor text hurt rankings?

Yes. Google’s Penguin and manual spam filters flag profiles where exact match anchors exceed 15-20%. The safest approach is to keep them under 10% and rely on brand, URL, and related variations for the bulk of your links.

How often should I audit anchor text?

We recommend a light audit after every major link insertion campaign and a full deep-dive quarterly. If you’ve just recovered from a penalty, check monthly until the profile stabilizes.