Keyword Cannibalization Killed Half My Revenue
How an SEO 'optimization' stuffed my head term into 72 pages, triggered keyword cannibalization ecommerce-wide, and cut revenue 55%. The diagnosis and the fix.
By Mike Hodgen
The Number That Made Me Stop Everything
Revenue on my DTC fashion brand was down 55% year over year.
Not a soft season. Not a bad month I could blame on weather or a holiday calendar quirk. A sustained, structural decline that had been bleeding for months while I told myself it was noise.
The first thing I did was rule out the obvious. Ad spend was flat, dollar for dollar against the prior year. Product mix was unchanged, same hero categories, same price points. No site outage, no checkout bug, no payment processor drama. The paid channel was holding steady.
Then I looked at organic.
The organic channel had quietly collapsed. Not crashed, collapsed. There was no single event I could point to. No Google penalty email. No competitor who suddenly showed up and ate my lunch. Just a slow, smooth slide downward that nobody had flagged because there was nothing to flag.
That's the part that messed with my head. When revenue drops 55%, you want a villain. A competitor. An algorithm update. A vendor who broke something. I had none of those.
The damage was self-inflicted. It came from a well-meaning SEO "improvement" that someone had marked complete months earlier. A project that looked like progress.
The cause, once I found it, was almost embarrassing in its simplicity: 803 mentions of my single most valuable keyword, stuffed across the site where they had no business being.
This is what keyword cannibalization ecommerce damage actually looks like in practice. Let me show you how it happened, and how I'd catch it on your site in an afternoon.
What Keyword Cannibalization Actually Is (And Why It's Invisible)
Keyword cannibalization is when multiple pages on your own site compete for the same search query. Google has to choose which one of your pages to rank. When you give it too many similar options, it often picks none of them well, splitting your authority across pages that all rank mediocre instead of one page that ranks great.
Authority concentration vs dilution across pages
You're not competing with a competitor. You're competing with yourself.
The head term that mattered most
Most ecommerce stores have one commercial keyword cluster that drives the majority of organic revenue. Mine did. One head term cluster accounted for the bulk of my non-branded organic sales, and it was meant to be owned exclusively by my homepage.
The homepage had the authority, the backlinks, the internal link equity. It was built to win that term. For years it ranked in the top three for the whole cluster.
A head term isn't won by mentioning it everywhere. It's won by concentrating authority onto one page strong enough to outrank everyone else. That distinction is the entire story here.
Why ecommerce stores are especially exposed
Ecommerce, and Shopify specifically, is a cannibalization minefield. You have collection pages, product pages, blog content, and a homepage all chasing overlapping commercial intent. They naturally drift toward the same keywords because they're all describing the same merchandise.
Collection handles and page titles are trivially easy to batch-edit. You can change 72 of them in one script run. That convenience is exactly how the damage happened on my site.
Here's the snippet-worthy part: cannibalization is invisible because nothing looks broken. No error page. No traffic-zeroing event. No alert. Just your strongest page slipping from position 2 to position 11 over a few weeks, while everything else looks fine on the surface.
How a Batch "Optimization" Stuffed My Money Keyword Into 72 Pages
A prior SEO pass had batch-modified dozens of collection handles and page titles. The logic seemed reasonable on paper: inject the homepage's high-value head term into more pages to "improve relevance."
The batch edit that did the damage
Someone wrote a script that programmatically injected the commercial head-term cluster into collection pages that had no business ranking for it. Niche category pages. Sub-collections. Pages with almost no backlinks and thin internal link equity.
In one batch run, dozens of weak pages started shouting the same money keyword that my homepage was built to own.
The script ran. The project got marked done. The line item read something like "optimized collection pages for primary keyword." It looked like work. It looked like progress.
803 mentions where there should have been a handful
The end state: 803 head-term mentions scattered across 72 collection pages. That term should have lived almost exclusively on the homepage, with maybe a handful of supporting mentions elsewhere for context.
How the batch edit caused 803 mentions across 72 pages
Instead it was everywhere, and that was the problem.
The logic error is one I see constantly. Someone treated the money keyword as a thing to maximize. More mentions equals more relevance, right? More pages targeting it equals more chances to rank, right?
Wrong, and dangerously so for a head term.
SEO relevance for a competitive commercial term is about authority concentration, not raw frequency. When you spread your head term across 72 weak pages, you don't multiply your chances. You divide your authority. Google sees 73 pages on your domain all claiming to be the answer for one query, and it loses confidence in all of them.
The optimization diluted the one page that could actually win. The homepage went from the clear, obvious answer to one option among 73, and it dropped out of the top three for the entire cluster.
Every "improvement" made the bleed worse. The harder the batch script worked, the more revenue I lost.
The Diagnosis: Ruling Out Everything Else First
Here's the part that matters if you ever have to do this yourself. I didn't guess my way to the answer. I eliminated my way to it.
Elimination-based diagnosis flowchart
When organic revenue falls off a cliff with no obvious cause, the temptation is to grab the first plausible villain and run with it. That's how you waste three months fixing the wrong thing.
What the data ruled out
Step 1: Domain Rating and backlink profile in Ahrefs. If I'd lost authority or gotten hit with a link-based penalty, DR would have dropped and I'd see lost referring domains. Instead, DR was stable and actually rising. That ruled out a link penalty and lost authority entirely.
Step 2: Ranking pages and indexed page count. If Google had de-indexed pages or hit a crawl issue, the count of indexed and ranking pages would crater. It was stable. No de-indexing. No technical crawl failure. The site was being crawled and indexed fine.
So no penalty, no lost links, no technical breakage. Three of the four usual suspects, gone.
If you're not sure whether your drop is the algorithm versus something on your own site, this same elimination method is how you prove it was the algorithm, not your site. Same discipline, different conclusion.
What it pointed to
Step 3: isolate the head term itself. This is where it cracked open.
The homepage had fallen out of the top three for the entire commercial head-term cluster. At the same time, the count of pages on my domain ranking for that term had ballooned.
That divergence is the whole diagnosis. More of my pages were ranking for the term, and my best page was ranking worse. Those two facts only coexist for one reason.
More pages ranking plus worse top position is the textbook signature of keyword cannibalization. It's not subtle once you know to look for it, but almost nobody looks for it because the surface metrics all seem healthy.
The discipline here is elimination, not intuition. Stable links, plus stable indexing, plus a head term that lost top three while spawning more ranking pages, equals self-competition. You don't argue with that math.
The Fix: A Zero Head-Term Rule That Blocks Cannibalization at the Source
The fix came in two parts. One fixes today. One fixes forever.
Stripping the term back to one page
Remediation first. I stripped the head term out of the 72 collection pages and concentrated it back onto the homepage where it belonged.
The collection pages got titles and handles that matched their actual intent, the specific category each one represented, not the broad commercial term they'd been force-fed. The homepage reclaimed sole ownership of the cluster.
Within weeks, the homepage started climbing back toward the top three. The cannibalization signal cleared because there was no longer a crowd of pages competing for one query.
A guardrail that runs on every deploy
This is the part that actually matters, and it's the part most SEO work skips entirely.
Remediation plus guardrail fix model
I built a guardrail I call the ZERO HEAD-TERM RULE. It runs automatically and blocks any deploy that reintroduces head-term mentions onto pages meant to be homepage-exclusive. If a batch edit, a contractor, or a theme update tries to inject that term back into the collection pages, the check fails and the deploy stops.
Remediation fixes today. A guardrail fixes forever.
Manual SEO vigilance always fails eventually. The next batch edit, the next theme migration, the next well-meaning contractor with a "more mentions equals more relevance" theory will quietly undo your work, and you won't notice until revenue is down 55% again. Humans forget. Code doesn't.
This sits alongside an AI system that monitors my rankings daily, so if anything moves on my head terms, I know within 24 hours instead of three months later. The guardrail prevents the self-inflicted wound. The monitor catches everything else.
This is the philosophy behind every system in the AI systems running my apparel brand. I don't just fix the problem. I build the thing that prevents it from coming back silently, because silent is the only way these things ever come back.
The Belief I Had to Kill: "Paid Drives Organic"
Here's the part I'm a little embarrassed to admit.
For years I held a flywheel belief that running paid campaigns lifted my organic rankings on the head terms. The logic felt airtight. Paid traffic sends engagement signals, brand searches go up, Google notices, organic improves. Everyone "knows" this.
While I was diagnosing the cannibalization mess, I decided to test it. I paused the paid campaign.
The head terms gained ground. Not lost it. Gained.
The "paid drives organic" belief was simply false for my brand. Pausing paid did nothing to hurt organic, and the rankings recovered on their own once I'd cleared the cannibalization. I retired the rule.
The lesson isn't about paid versus organic. It's that even your most confident assumptions deserve a falsification test. The CEO reading this has a handful of "everyone knows X drives Y" beliefs baked into how the business spends money, and some of them have never actually been tested.
Honest limit: this was true for my brand and my term cluster. It is not a universal law. Paid absolutely supports organic for plenty of businesses. The point is I didn't know which camp I was in until I ran the test instead of assuming.
That's the whole move. Test instead of assume. Especially when the assumption is expensive.
Could a Well-Meaning SEO "Improvement" Be Killing Your Organic Revenue?
Yes. And it's more common than a penalty or a competitor.
Cannibalization self-check tell
The most dangerous SEO damage doesn't look like damage. It looks like work that got done. A project marked complete. A line item that reads "we optimized your collections." Nobody breaks anything on purpose, and that's exactly why these wounds go undiagnosed for months.
Here's your quick self-check. Is your strongest commercial term losing top-three positions while your overall indexed page count holds steady? Is more of your site ranking for that term while your best page slips?
That divergence is the tell. Stable indexing plus a head term sliding out of the top three equals self-competition until proven otherwise.
I run a real DTC brand. I diagnosed this collapse on my own site, ruled out every other cause first, fixed it, and built the guardrail so it can't come back silently. This isn't theory I read in a blog post. It's a 55% revenue hole I had to climb out of myself.
If your organic revenue is sliding and nobody on your team can name the event that caused it, that's exactly the kind of forensic work I do. I'll have me audit your organic decline and tell you whether it's cannibalization, the algorithm, or something else, without the guesswork.
Want to explore what AI could do for your business?
Book a free 30-minute strategy call. No pitch deck, no sales team, just a real conversation about your operations and where AI actually fits.
Get AI insights for business leaders
Practical AI strategy from someone who built the systems — not just studied them. No spam, no fluff.
Ready to automate your growth?
Book a free 30-minute strategy call with Hodgen.AI.
Book a Strategy Call