Find topics where a competitor ranks and you do not
Surface transparent keyword clusters that appear in the competitor export without a matching keyword row in your supplied rankings.
Free, no signup. Identify topics a competitor wins, then optionally compare the ranking pages’ internal support to see whether inlinks, anchors, crawl depth, or stronger linking pages may help explain the gap.
Paste your Ahrefs/Semrush keyword export first, then a competitor export. Optional paired crawl and internal-link exports add structural evidence. Separate data sets with a line containing ---. Files never leave your browser.
Optional structural comparison: add your crawl page export third and the competitor crawl page export fourth. To compare anchors and linking-source support too, add your internal-link export fifth and the competitor export sixth. Select uploaded files in that order.
Illustrative example — based only on the supplied rows
Your export
Keyword,URL,Position,Volume
seo audit checklist,https://example.com/seo-audit/,18,1000
---
Competitor export
Keyword,URL,Position,Volume
seo audit checklist,https://competitor.example/guides/seo-audit/,3,1000
technical seo template,https://competitor.example/guides/seo-audit/,5,500
---
Your crawl pages
URL,Inlinks,Crawl Depth,Link Score
https://example.com/,120,0,100
https://example.com/seo-audit/,2,4,8
---
Competitor crawl pages
URL,Inlinks,Crawl Depth,Link Score
https://competitor.example/,160,0,100
https://competitor.example/guides/seo-audit/,24,2,62---, then paste the competitor CSV.Saved targets, named lists, and recent check summaries remain only in this browser.
Runs entirely in your browser — nothing you paste is uploaded or stored. Anonymous run-level outcome counters may be used for aggregate research; URLs, domains, IPs, and identifiers are never included, and no statistic is released below 100 runs.
The browser parses the two ranking tables, normalizes recognized export headers, and keeps the best competitor row per keyword. Keywords are grouped when their normalized word stems overlap. Optional crawl-page exports add page inlinks, within-site inlink percentiles, depth, and an optional internal-rank percentile. Optional internal-link exports add unique source pages, topic-aligned anchors, generic or empty anchors, reused anchor labels, shallow source pages, and source pages in the top quartile of the supplied inlink or internal-rank distribution.
Results are only as complete and current as the supplied exports. Crawl scope and site size affect raw inlink totals, so the report also compares each target’s percentile within its own supplied site. Anchor overlap is lexical and does not establish relevance, PageRank flow, or causation. Exact keyword matching can miss synonyms, while stem overlap can group queries with different intent. Search volume and positions are third-party estimates, the CTR curve is generic, and upside ignores conversion rate, backlinks, authority, SERP featuresSERP features are any element on a search results page beyond the classic ten blue links — featured snippets, People Also Ask, knowledge panels, sitelinks, image and video packs, AI Overviews, and structured-data-driven rich results. Google documents that losing rich-result eligibility doesn't affect ranking; their SEO relevance is CTR (they redistribute clicks). Some are unlocked by markup; most are purely algorithmic., content cost, and ranking probability.
The base analysis needs two Ahrefs- or Semrush-style keyword CSV tables: yours first and a competitor export second. For structural comparison, optionally add paired crawl-page exports with URL plus Inlinks, Crawl Depth, Internal PageRank, or Link Score. Paired internal-link exports with Source, Destination, and Anchor Text add anchor and linking-source evidence.
The competitor export contains the keyword cluster but your export has no matching keyword row. It does not prove your site has no relevant page; it means no match was present in the supplied export.
They can reveal a plausible structural advantage, not prove causation. The report compares supplied inlinks, within-site percentiles, crawl depth, topic-aligned anchors, and linking-source support separately from the ranking and traffic-upside model.
No. Upside is a directional prioritization value: the best competitor position in the topic multiplied by its supplied search volume and a conservative default click-through-rate curve.
No. You supply exports you are authorized to use, and analysis stays in your browser. The tool does not fetch rankings or enrich the files with live data.
Upvote what you want most. New ideas can be submitted from the floating Feedback menu; requests appear here once approved, and the most-wanted rise to the top.
You won't be emailed about that request anymore.
Loading…
New requests are reviewed before they appear here.
Where this tool helps
Surface transparent keyword clusters that appear in the competitor export without a matching keyword row in your supplied rankings.
Separate clusters where your best observed position trails by at least five positions and retain both ranking URLs as evidence.
Mark clusters without the five-position competitor advantage as competitive and assign zero modeled upside.
Add paired crawl and link exports to review inlink percentiles, crawl depth, internal-rank percentiles, anchor alignment, and linking-source support.
Use ranking and structural evidence separately when deciding whether to create a page, improve an existing page, or strengthen internal support.
Watch the full workflow
If you are new to content-gap analysis, this walkthrough starts with the basic terms, then compares two fictional keyword exports, explains every result, adds optional internal-link evidence, and downloads the finished report.
A content gap is a search topic where a competitor has visibility that your supplied ranking data does not match. The Content Gap Analyzer compares your export with one competitor, shows the pages and positions in those files, and turns the differences into a review queue. It does not search the web or decide that you must publish a new page.
A keyword export is a spreadsheet of observed search queries. The ranking U-R-L is the page associated with a query. Position is the estimated rank, where a smaller number is better. Volume is a third-party estimate of monthly searches. These values describe the supplied file and its date; they are not live Google data or guarantees.
Use the tool to find topics where a competitor ranks and you do not, identify cases where they rank materially better, remove topics you already cover competitively, compare internal support around the ranking pages, and decide what deserves human review first. It is useful for prioritization, not automatic content creation.
The first two tables are required: your keyword export, then the competitor export. Each needs Keyword, U-R-L, Position, and Volume. Separate tables with a line containing three dashes. The next four tables are optional: your crawl pages, their crawl pages, your internal links, and their internal links. Processing stays in this browser.
The fictional ranking rows deliberately create all three outcomes. For S-E-O audit checklist, your position is eighteen and the competitor is three. Log file analysis template appears only in the competitor file at position five. For keyword research course, your position four is better than their position six. No real company or customer data is used.
The optional crawl tables add each page’s internal inlinks, crawl depth, and Link Score. An inlink is a link from another page on the same site. Crawl depth is the number of link steps from a crawl starting point. The final tables add source page, destination page, and anchor text. These are local structural clues—not backlinks or proof of cause.
Select the button labelled "Analyze". The browser recognizes common export headers, keeps the best competitor row for each exact keyword, groups overlapping word stems into topics, assigns a verdict, calculates directional upside, maps the supplied ranking pages, and adds the optional structural comparison as a separate evidence layer.
The first card says "They Rank Better". Here, your best supplied position trails the competitor by at least five places: eighteen versus three. Both ranking U-R-Ls stay visible, so you can inspect the real pages later. The label reports the file comparison; it does not say which page is better or why Google ranked it.
Directional upside is ninety-nine clicks in this example. The tool multiplies supplied volume by a generic click-through estimate for the competitor’s best position. Use that number only to sort opportunities. It is not a traffic forecast, conversion estimate, ranking probability, revenue estimate, or promise that your page can reach position three.
The optional structural section finds your supplied ranking page. It reports two crawl-export inlinks, the twentieth inlink percentile inside your own crawl, depth four, and two unique supplied linking pages. Neither supplied link uses an anchor that overlaps this topic’s word stems. These numbers describe only the rows we pasted.
The competitor page has twenty-four supplied inlinks, depth two, four unique linking pages, and four topic-aligned linking pages. Raw inlink totals are not directly comparable when crawls differ in scope or site size. That is why the card also keeps within-site percentiles and reports each observation separately.
The observations note that the competitor page is two crawl levels shallower, has a higher supplied internal-rank percentile, and receives more topic-aligned and shallow-source links. Those associations can suggest what to inspect. They do not prove internal links caused the ranking difference, and they never change the directional-upside calculation.
The second card says "They Rank You Dont" because log file analysis template has no exact matching keyword row or ranking U-R-L in your supplied export. That does not prove your website has no relevant page. Search your site and inspect the current results before deciding whether to create something new or improve an existing page.
The third card says "You Win" because your position four does not trail the competitor’s position six by five or more places. The directional upside is intentionally zero. This keeps the review queue focused on observed disadvantages instead of turning every shared keyword into a recommendation.
A Topic is a transparent word-stem cluster. For example, audit and auditing can share a simplified stem. This is not an embedding model, semantic understanding, or search-intent classification. Exact keyword matching can miss synonyms, while stem overlap can group phrases that deserve different pages. Always inspect the actual queries.
Choose the button labelled "Download results CSV". The downloaded content-gap-analysis file includes each topic, verdict, U-R-Ls, upside, keywords, structural status, raw metrics, percentiles, anchor and source counts, observations, and limitations. Keep the original export dates and scopes with this report so another reviewer can reproduce it.
The main features are common Ahrefs, Semrush, Screaming Frog, Sitebulb, and generic column aliases; three explicit verdicts; observed ranking-page mapping; transparent topic grouping; optional crawl and internal-link evidence; within-site percentiles; complete CSV export; no signup; and no account connection.
For each promising card, first confirm that both queries share the intent you think they do. Then review your existing pages and the current search results. Create a page only when coverage is truly missing. Improve a page when the topic already belongs there. Strengthen internal links only when the supplied structure and a manual review support that intervention.
Results are limited by export freshness, completeness, and crawl scope. Volume and position are third-party estimates. The upside model ignores conversion rate, backlinks, authority, search-result features, content cost, and ranking probability. Anchor overlap is lexical, structural differences are not causes, and separately exported sites may not have comparable crawl coverage. Treat every card as a question to investigate.
Start with the clearest supported gap, inspect the current search results and your existing pages, then choose the smallest useful response: create a page, improve one, or strengthen its internal support. The tool is free and runs in your browser.