Demand Engine

Competitor Keyword Research: The Gap Report Is Not a Content Plan

A keyword gap report tells you what your competitors rank for. It does not tell you whether those rankings make money, whether their buyer is your buyer, or whether the click still exists. Here is how to filter the export before it becomes a plan.

Editorial illustration of two ranked keyword lists being weighed on a balance scale against a stack of coins

Key Takeaways

  • A gap report is accurate position data, but it answers 'what do they rank for' rather than 'what should we write'. Those are different questions.
  • Keyword overlap does not mean commercial overlap. Copying a competitor who monetizes at a different price point imports their buyer and their deal size.
  • Most of any gap list is informational, and that is where clicks disappeared: 99.2% of AI Overview keywords are informational, and 68% of US searches now end with no click.
  • Publishing the whole list does not buy visibility. Across 75,000 brands, page count correlated with AI visibility at roughly 0.194, close to nothing.
  • Score the gap on dollar opportunity and distance to a booked conversation, not on volume and keyword difficulty.

Competitor keyword research is the work of finding which search terms send buyers to your competitors, then deciding which of those terms you can win at a profit. The tooling for the first half is solved. The second half is where most of the value sits, and it is the half that usually gets skipped.

The standard version of this exercise takes about twenty minutes. You put your domain and a competitor's into Semrush's Keyword Gap or Ahrefs' Content Gap, export the terms they rank for and you do not, then sort by volume before handing the list to whoever writes. The export is real data. The problem is that the list is a description of your competitor's traffic, and it gets treated as a description of your opportunity.

What a gap report actually tells you

A gap report is a diff between two sets of rankings. It is reliable at that. What it has not checked, and cannot check, is everything that decides whether a term is worth your money:

  • Whether those rankings earn your competitor anything
  • Whether the person searching is the person you want to sell to
  • Whether the query still produces a click
  • Whether you could rank without outspending a company three times your size

Volume, the column most people sort on, is also softer than it looks. Ahrefs published its methodology for AI adjusted volume in August 2026 and was direct about the limits: no major AI platform shares query data, so estimates for AI search are derived from Google volume and a platform ratio rather than measured. Their guidance is that the number is useful for benchmarking visibility against competitors and useless for sizing an addressable market. That is a fair description of keyword volume generally. It is a proxy, and sorting a gap list by it puts the least verified column in charge of your roadmap.

None of this makes the report worthless. It makes it an input.

The gap imports your competitor's business model

This is the failure that costs real money, and it is invisible in the data.

Two firms can rank for an almost identical keyword set and run completely different businesses underneath. Same terms, same SERPs, different buyer, different price. When you copy the list, you inherit the buyer the list was built to attract.

I saw this play out with a fractional finance firm. Their average annual customer value was around four thousand dollars. For the kind of embedded controller and CFO work they wanted to sell, the right number was four to seven thousand dollars per month. Their rankings were not broken. Traffic was fine. The terms they had won, and the terms their competitors had won that they were busy chasing, were bookkeeping queries. Those queries attract someone comparing a one-off service on price. The search was doing exactly what it had been pointed at, and what it had been pointed at was the wrong customer.

A gap report would have made that worse. It would have returned hundreds of adjacent bookkeeping terms, all with respectable volume and low difficulty, and every one of them a vote for the four-thousand-dollar buyer.

The fix is a question you ask of each candidate term before it earns a slot, and it takes ten seconds per keyword: who is the person typing this, and what does the deal look like if they convert? If the honest answer is a buyer you do not want or a deal below your floor, the term is not an opportunity regardless of its volume. This is the same diagnostic logic behind a proper B2B SEO strategy, where the term set gets chosen against the size of the engagement rather than against the size of the search.

Most of your gap sits where the click already died

There is a structural reason gap lists skew informational: informational content is what competitors mass-produce, so it is what accumulates in their ranking profile. The biggest, cheapest-looking section of your export is therefore the section with the worst click economics available.

The numbers here are not close. SparkToro and Similarweb found that in the first four months of 2026, 68.01% of US Google searches ended with zero clicks, with roughly 23% sending a click to the open web. Ahrefs, working from its own keyword database, reports that 99.2% of keywords that trigger an AI Overview are informational in intent, and measured the cost by comparing 150,000 AI Overview keywords against 150,000 informational keywords without one: a 34.5% drop in clicks. When they repeated the analysis on confirmed AI Overview keywords where Ahrefs itself had won the citation, click-through rate fell 3.98 percentage points, a 44% relative decline.

Put those together and the practical rule is straightforward. Split the gap export by query type before you do anything else:

  • Commercial and transactional terms still earn the click, because AI Overviews rarely fire on them. Classic ranking work pays here directly, and these are the terms worth fighting for even at higher difficulty.
  • Informational and comparison terms have mostly stopped producing visits. They can still be worth writing, but the goal has changed from rank to citation share, and they should be judged on whether an answer engine names you.

Sorting a gap list by volume does the opposite of this. It floats the informational terms to the top, because informational queries are where the volume lives, and buries the commercial terms that still convert. The SEO audit template we use runs the same triage on existing pages, for the same reason.

Publishing the whole list does not buy visibility

The instinct after a gap report is to close the gap. Take the four hundred terms and grind through them on the theory that coverage compounds.

Ahrefs tested something close to that assumption across 75,000 brands, looking at which signals correlate with brand visibility in ChatGPT, AI Mode, and AI Overviews. Number of site pages came in at roughly 0.194, which is close to no relationship at all. Branded web mentions landed between 0.66 and 0.71. YouTube mentions were the strongest single factor at about 0.737.

So the volume play is the weakest lever in the set, and the thing that actually moves AI visibility is being discussed elsewhere. That reorders the output of a gap analysis. A term your competitor ranks for because forty other sites cite them on the topic is not a content problem you can publish your way out of. It is a mentions problem, and the honest entry in your plan is a different kind of work.

Pick competitors by who they sell to, not who ranks next to you

Most gap analyses go wrong at the input. People pick the domains that show up next to them in the SERPs, which is how directories, trade publications, and listicle farms end up defining a B2B company's content roadmap. Those sites rank alongside you. They do not compete with you for a signed agreement, and their keyword profile reflects an advertising business rather than a services business.

Choose three or four companies that sell what you sell, at a price near yours, to a buyer you recognize. If you are not sure a firm belongs, look at their pricing page and their case studies rather than their traffic. A competitor with ten times your traffic and a tenth of your deal size is a bad model to copy, and a competitor with less traffic than you but the right buyer is worth studying closely.

It is also worth running the gap against companies you lose deals to. Sales knows those names. They rarely match the list a tool produces, and the terms they rank for are, by definition, terms your actual buyers use.

Score the gap on money, not volume

Once the competitor set is right and the export is split by intent, the ranking question becomes tractable.

Ahrefs' write-up on metrics for leadership makes the useful distinction here. Share of Voice measures the percentage of organic clicks you capture across a keyword set relative to competitors, and it is zero-sum: every term a competitor outranks you on is share you are not getting. Share of Traffic Value measures the percentage of the dollar opportunity you are capturing instead. Same competitive logic, denominated in money rather than clicks. They also note the honest caveat that traffic value is a proxy for revenue rather than revenue itself, which is the right way to hold it.

For a gap list, that suggests a simpler scoring pass than most keyword frameworks:

  1. Drop anything whose buyer fails the deal-size question. This usually removes a third of the list and is the highest-value ten minutes in the process.
  2. Rank the survivors by distance to a booked conversation. A term where someone is comparing providers sits one step away. A definitional query sits four steps away and may never take a step.
  3. Weight by traffic value rather than volume, so a two-hundred-search term at fourteen dollars of commercial intent beats a two-thousand-search term at nothing.
  4. Check each finalist against a live SERP before committing. Look at whether an AI Overview fires, who gets cited inside it, whether the page types ranking are ones you could plausibly produce, and how many of the results are competitors rather than publishers.
  5. Mark the mentions work separately. Terms you lose on third-party consensus go on a different list with a different owner.

The output of that pass is short. A gap export of four hundred terms usually produces somewhere between fifteen and forty worth acting on, and the discarded majority is the point rather than a failure of the exercise. If you want the checks we run alongside this, the SEO and AEO checklist covers the eligibility and structure side.

Where this fits

Competitor keyword research is diagnostic work. It tells you which demand exists, who currently captures it, what it would cost to take a share, and which of those costs are content rather than reputation. It cannot tell you whether that demand converts into revenue at your price, and a report that is treated as a plan quietly answers that question for you in your competitor's favor.

The version that pays is slower at the front and much shorter at the back. Pick competitors by buyer. Split by intent. Score by money and by distance to a conversation. Then write the fifteen pages that survive, and treat the rest of the export as information about the market rather than a backlog. That is the search and AI-search visibility work that produces pipeline instead of a traffic chart, and it is the same reasoning that decides which terms are worth compounding on over the months a Demand Engine takes to mature.

If your organic traffic looks reasonable and your booked conversations do not, the gap report is a good place to look for the reason. The terms you won may be working perfectly for a buyer you never wanted.

Joseph Perkins, Founder of Perkins Growth Systems

Written by

Joseph Perkins

Founder of Perkins Growth Systems

Joseph Perkins is the founder of Perkins Growth Systems. He builds connected growth systems for B2B by combining real-world growth strategy with demand capture, signal-based outreach, follow-up, reporting, and CRM workflows.