DeepSmith

Sep 26 · Content Strategy

14 min read

Keyword Gap Analysis: Finding the Keywords You're Missing Against Competitors

Avinash Saurabh
Avinash Saurabh · CO-Founder & CEO
Two overlapping grids of keyword position squares on a dark background, with a few squares glowing white to mark keyword gaps between two compared sites, under the cover line Find Your Keyword Gaps.

If two or three of your competitors rank for a query and you don't show up anywhere, that's a gap worth knowing about. The problem is that checking one rival at a time only tells you part of the story. You need to see your site next to several competitors at once, in the same table, so you can tell which missing keywords are shared across the field and which ones only one rival happens to own. This guide walks through a keyword gap analysis across multiple competitors, from setting up the comparison to handing off a prioritized list your team can actually work.

By the end, you'll have a repeatable process and a working template you can rerun every quarter, with a shortlist of keywords ranked by how much they're actually worth chasing, not just by search volume.

What you need: access to a multi-domain keyword gap tool such as Semrush's Keyword Gap or Ahrefs' Content Gap, a spreadsheet, and two to four competitors you already know are relevant.

1. Set the comparison boundary and pick your rivals

Start with your site and two to four organic-search competitors that genuinely compete for the same buyers, not just the names that come up in a sales battlecard. Most tools accept your domain plus up to four others in one report, so choose carefully rather than filling every slot. Semrush's Organic Rankings Competitors report can suggest sites that already share keyword rankings with you, which is a reasonable starting list, but you still need to look at each one and ask whether it's actually selling to the same audience.

Decide whether you're comparing whole domains or matching sections of each site. If your blog is a small part of your site and a rival's blog is one small part of an enormous multiproduct domain, comparing the two whole domains will surface a pile of irrelevant rows. Pin down the country or regional database, the device, and the date too, because a comparison run against different markets on different days can't be stacked together later.

Done when: you have a written comparison sheet naming the site you're checking, each rival, why each one belongs, and one shared market and scope for the whole run.

Where it goes wrong: people mix a niche subfolder with an entire publisher's domain, or compare paid rankings on one site against organic rankings on another. Keep the keyword type consistent, organic for every site, for this kind of analysis.

2. Run one multi-domain organic comparison

In Semrush, open Keyword Gap, put your site in the first field, add your rivals, choose Organic, pick the regional database, and run the comparison. You'll get a Top Opportunities widget, an overlap view, and a full keyword table with one position column per site. Set the device and date filters the same way across the whole comparison so the rows mean the same thing. A plain domain-level comparison is the right starting point for most teams; historical data and comparison at the URL, subdomain, or subfolder level sit behind Semrush's higher-tier plans, so don't promise those controls if your plan doesn't include them.

Ahrefs works a similar way through Competitive Analysis: Content Gap. Add your site as the target, add your organic competitors underneath, and turn on Show keyword opportunities. This surfaces keywords where at least one rival ranks in the top 10 while you're outside the top 100. You can tighten that to All competitors if you want stronger consensus across the whole set.

Done when: the report clearly shows one position column per site, with the right target, the right rivals, and the organic setting confirmed.

Where it goes wrong: treating this report as a content-topic audit rather than a keyword-level comparison, or reading rankings from two different markets side by side as if they were comparable.

Which tool makes sense depends on your budget more than anything else. Semrush's plans that include Keyword Gap start in the low hundreds of dollars a month, with the historical and URL-level comparisons reserved for the higher tiers, so check what your specific plan actually unlocks before you promise a teammate a feature you don't have access to. Ahrefs prices its plans differently and documents usage credits rather than a flat feature list, so the same caution applies: confirm what your account's Content Gap workflow can do before you build a process around it. Neither tool publishes an exact maximum number of competitors you can add beyond the low single digits, so don't assume you can scale a single report past four or five rivals.

3. Separate what's missing from what you can improve

Once the table is in front of you, don't just sort by volume. Look at Missing first, which is Semrush's label for keywords every one of your selected rivals ranks for and you don't. That's your strongest consensus signal. Then check Untapped, which only requires one rival to rank while you don't, a wider and less certain net. Then check Weak, where you do rank, but below every rival you added.

Common mistake: Missing means every entered rival ranks for that keyword. Add a fourth competitor who happens not to rank for a given term, and that term can quietly drop out of Missing even though your other three rivals still rank there. Check Untapped and the raw position columns before you write a keyword off.

Look past the labels at the actual position numbers too. A term where two of your three rivals outrank you and the third doesn't isn't captured cleanly by Weak, but it can still be worth pursuing. A top-10 position filter on your rivals is a useful first cut for finding stronger evidence. Ahrefs has its own second pattern worth running: set your own position to 11 through 20 with competitors required to be in their top 10, which surfaces pages you already have that are close to ranking and worth improving rather than starting from scratch.

Done when: every row you're keeping is tagged as no observed ranking, existing ranking to improve, or needs investigation, with the rival count and positions still visible next to it.

Where it goes wrong: treating a blank position as proof the term is impossible for you, or assuming Weak only ever means one rival is ahead of you.

A matrix splits keyword gaps into three classes: Missing when all rivals rank and you have no ranking, Untapped when at least one rival ranks and you have no ranking, and Weak when you rank but below every rival.

4. Build a working keyword gap analysis template

Export the filtered table from your tool as Excel or CSV rather than PDF, since you'll need to keep editing it. Keep the original export untouched somewhere and build your working matrix from a copy, deduplicated by keyword within the same locale and device.

A template that holds up across quarters needs these columns: keyword, market, device, snapshot date, your position, one position column per rival, how many rivals rank, how many of those rank in the top 10, gap class (missing, untapped, weak), estimated monthly volume, which tool and keyword difficulty score you're using, search intent, the URL types your rivals rank with, any existing page of yours that's relevant, product and audience fit, the recommended action, a priority band, an owner, and a status.

If you want a quick way to count how many rivals rank in the top 10 for a row, and your three rival positions sit in adjacent cells like D2 through F2, a formula like =COUNTIFS(D2:F2,">=1",D2:F2,"<=10") does it. That's a spreadsheet convenience you're building, not a number your tool reports on its own, so adapt the cell range to your actual sheet and leave blank cells blank instead of turning them into a rank of zero.

If you're comparing more than the four rivals one report allows, run separate comparison batches and record which rivals were in each one before you merge the results, so you can trace a keyword back to its source comparison later.

Done when: every row still carries its source comparison, market, your position, every rival's position, estimated volume, and difficulty score, including the rows you're about to reject.

Where it goes wrong: adding up keyword volumes across rows as if they were one traffic number, dropping the rival position columns once you've picked winners, or letting a PDF export become the only copy of your data.

5. Filter for relevance, demand, and realistic difficulty

Before you rank anything by volume, throw out the keywords that don't actually fit: off-market terms, competitor-branded searches, wrong product, wrong audience, or a search intent that doesn't match what you'd publish. A high-volume keyword that returns job listings or unrelated products in the actual search results isn't an opportunity just because it showed up in the export.

Use volume, difficulty, intent, and position filters to narrow the list, but treat any specific difficulty range as a starting point you adjust for your own site's authority, not a fixed rule. Check the real search results and the pages actually ranking for any keyword you're shortlisting, since that tells you more about intent than the label the tool assigned it.

Instead of chasing one composite score, work through a simple order: business and intent fit first, then how many credible rivals rank and where, then whether the difficulty and volume are realistic for your site, then whether you already have a page that could serve the query. A useful set of working bands is now (clear fit, solid rival evidence, feasible difficulty, an obvious next action), investigate (promising but something about intent, scope, or difficulty is still unclear), and reject (irrelevant or something you can't honestly serve). These are working categories you're applying, not a published benchmark.

Done when: every keyword you keep has a stated reason and a next action, and the high-volume but irrelevant rows are visibly cut, not just ignored.

Where it goes wrong: sorting purely by volume, applying a difficulty cutoff without checking the actual results, or treating estimated monthly searches as a promise of visits.

6. Decide whether to improve a page or build a new one

For every Weak or near-miss keyword, check whether one of your existing pages already answers that query's intent. If it does, that page goes on your improve list instead of triggering a new brief. For a keyword you genuinely have nothing for, look at what kind of page is ranking for your rivals and be honest about whether you have a real, differentiated answer before you commit to writing one. Not every gap needs its own new page; a handful of closely related queries can often be served by a single well-built page, while two similar-looking queries sometimes need different answers entirely.

This is also where a content audit earns its keep, since it's the fastest way to find out which of your pages are already close and just need a push rather than a rewrite from scratch. This is one of the two places DeepSmith fits naturally into the workflow. The keyword comparison itself, with its volume and difficulty numbers, comes from your SEO tool, not from DeepSmith. But DeepSmith's AI Visibility module tracks which competitor pages earn citations in AI answers for the buyer questions you're tracking, which is a useful second check once you're deciding what to prioritize: a keyword gap and an AI citation gap measure different things, and looking at both gives you a fuller picture of where a rival is actually winning.

Done when: every high-priority row is marked improve existing page, create a new page, or don't pursue, with a reason attached.

Where it goes wrong: assuming any keyword a rival ranks for is automatically worth copying, building near-duplicate pages for close variants, or treating an AI citation tool as a substitute for keyword-level search volume and difficulty data.

DeepSmith's AI Visibility Competitors view ranks a tracked competitor's citation rate and mention rate across engines like ChatGPT, Perplexity, Gemini, and Claude, and lists that competitor's most-cited pages so you can see which of its pages are winning AI citations.

7. Hand off a prioritized list and set a recheck date

The output of this whole process is a short, ranked list your team can actually work: keyword, reason it made the cut, the page to improve or the page to build, an owner, and a status. Keep the comparison's date, market, and device settings attached so a future run is comparable to this one rather than a fresh guess.

Google Search Console is worth checking here too, but only for your own observed queries, not as a competitor database. It omits low-volume and anonymized queries for privacy reasons and only stores the most significant rows, so an absent query in Search Console doesn't prove you have zero impressions for it.

Once the list is approved, this is the second place DeepSmith fits: turning that approved keyword into a finished, brand-grounded article is what DeepSmith's writing pipeline does, researched against real sources, linked internally and externally, and reviewed before it publishes, so the handoff from spreadsheet to draft doesn't stall on your desk. Publishing a page doesn't guarantee it ranks or gets cited, so plan to recheck the comparison, and your Search Console data, after enough time has passed to matter.

Done when: someone on your team can pick up the first row, know exactly why it's there, find or commission the right page, and rerun the original comparison later using the same settings.

Where it goes wrong: treating the export itself as a finished strategy, mixing organic ranking data with AI-citation metrics as if they measured the same thing, or leaving a row without a named owner.

If you want the production side of this handled without a separate handoff, DeepSmith's Content Studio takes an approved keyword through research, writing, linking, and metadata in one pass, and you can start with a free trial to see it against a real keyword from your own list.

Frequently asked questions

How many competitors should I compare?

Two to four relevant organic-search rivals is a manageable set for one comparison. Most tools cap you around four in addition to your own site, and adding an irrelevant fourth competitor can actually distort your Missing and Weak lists rather than sharpen them. Comparability matters more than filling every available slot.

What's the difference between Missing, Untapped, and Weak?

Missing means every rival you entered ranks for the keyword and you don't. Untapped only needs one rival to rank while you're absent. Weak means you do rank, but below every rival in the comparison. The labels are a helpful first sort, but the actual position columns often show patterns worth acting on that the labels alone don't capture.

Should I go after the highest-volume missing keyword first?

Not automatically. Check audience fit and search intent first, then how many rivals actually rank and where, then whether the difficulty is realistic for your site, then volume. Estimated monthly searches tell you demand exists, not how many visits or customers a page will actually bring you.

Can I do this without buying a dedicated SEO tool?

A manual comparison is possible if you already have reliable position data for every site, but building that data from scratch is the hard part a dedicated keyword gap tool solves. Search Console only covers your own property's observed queries, not your rivals'. DeepSmith's AI Visibility tracking is useful for a related but separate question, whether AI engines cite your competitors' pages, and it isn't a replacement for a keyword-level organic gap report or a full keyword gap analysis template you can rerun each quarter.