BlogPlaybook

Source gap analysis: where competitors get cited and you don't

Benjamin Libor9 min read

A source gap is a page or site that AI assistants cite when they name a competitor for one of your prompts, and where your company is absent. Source gap analysis is the method for finding those pages, ranking them by how much they matter, and closing them one by one. It takes a few weeks of citation data and a spreadsheet, and it turns "why does ChatGPT keep recommending them" into a list of pages with a specific thing to do about each.

In short

  • A source gap is a cited page where a competitor is present and you are not; a mention gap is a prompt where competitors are named in the answer and you are not. The first usually explains the second.
  • Collect the citations for your prompt set across the assistants for a few weeks, group them by domain and then by page, and mark each page as yours, a competitor's or third-party.
  • Rank the third-party gaps by how often they are cited and how many prompts they appear for; the top of that list is where the next month's work goes.
  • Act by page type: get onto a listicle, get listed and reviewed on a review site, answer a forum thread as yourself, build the integration a documentation page describes, pitch a news site.
  • Track each gap by re-running the prompts: the gap is closed when the page names you and the answers for those prompts do too.

Two gaps, and why the first explains the second

Start with AI visibility, the share of answers to your prompt set that name you, and the same number for each competitor (a plain definition). When a competitor's number is higher than yours, the reason is almost never that the assistant likes them. It is that the pages the assistant reads for those prompts mention them and not you.

So two gaps.

A mention gap is a prompt whose answers name one or more competitors and do not name you. A source gap is a page the assistants cite for your prompts that names a competitor and not you.

Mention gaps tell you where you lose. Source gaps tell you why, page by page, and each one is something a person can go and fix.

The method, step by step

1. Collect the citations for a few weeks

Run your prompt set across the assistants that cite sources (ChatGPT with search on, Perplexity, Gemini, Google's AI Overviews) and record, for every answer, which pages it cited and which brands it named. One run is not enough: answers and citations vary between runs, and a page cited once in a month is noise. Three to four weeks of a scheduled run, each prompt asked several times per engine, gives a set you can rank. A tool that tracks AI visibility records this for you; by hand, it is a spreadsheet with one row per citation: date, engine, prompt, cited URL, brands named in the answer.

2. Group by domain, then by page

Group the rows by domain first. That gives the sites that matter for your prompts: a handful of review sites, a few software blogs, Reddit, a couple of news sites, your own domain and your competitors'. Then group within each domain by page, because the gap lives on a page, not a site: a review site's "best scheduling tools" category page is a different gap from its "Slotwise reviews" page.

3. Mark each page: yours, a competitor's, third-party

Three columns. Own pages are on your domain. Competitor-owned are on a competitor's domain (their comparison pages, their integration docs, their blog). Third-party is everything else, and it is where the method does most of its work, because these are pages you do not control but can influence.

4. Find the third-party pages that cite competitors but not you

For each third-party page, open it and check: which of the tracked brands does it name, and in what position or role? Note that for the page itself, not the answer. The pages that name at least one competitor and not you are your source gaps; the pages that name you wrongly or at the bottom are a second, softer list.

5. Rank them

Two numbers per gap: how many times it was cited across the period, and how many distinct prompts it appeared for. A page cited often for one prompt matters for that prompt; a page cited across ten prompts shapes a whole category. Sort by prompts first and citations second, and work from the top.

6. Act per page type

The right move depends on what the page is, and that is the next section.

A worked example

Fernwick is a scheduling tool for agencies. Its marketing team tracks 40 prompts and three competitors, Slotwise, Bookline and Calmeet. After four weeks of citations across four engines, grouped and marked, the top of its source gap list looks like this. The numbers are the team's own counts; yours will differ.

Cited pageTypeCitations in 4 weeksPromptsNames SlotwiseNames BooklineNames FernwickAction
softwareguide.example "12 best scheduling tools for agencies"Listicle319Yes, no. 2Yes, no. 5NoWrite to the author with facts and a trial
reviewhub.example scheduling category pageReview site2711YesYesListed, 4 reviewsComplete the listing, earn reviews
reddit.com r/agencyowners "what do you use for client bookings"Forum thread143Yes, twiceNoNoAnswer as yourself
crmplatform.example "scheduling integrations" docsDocumentation124YesYesNoBuild and list the integration
techdaily.example "Slotwise raises Series A"News92YesNoNoPitch a story of your own
bookline.example "Bookline vs Slotwise"Competitor-owned83YesYesNoBuild Fernwick's own comparison pages

Six rows, each a task with an owner. The listicle and the review site account for most of the citations, which is typical: the pages cited for "best X" questions are the ones that rank for "best X" searches. The documentation page is the interesting one. Fernwick has no integration with that CRM, and until it does, every "scheduling tool that works with [that CRM]" prompt will name the competitors that appear on the page, whatever Fernwick writes elsewhere.

What to do per page type

Listicles and "best X" pages

Get on them, and get on them near the top. Write to the author with one paragraph: what is missing or wrong, a link to the proof on your site, and an offer of a trial account with real data. How AI uses "best X" lists and comparison pages covers the approach and the ethics in detail.

Review sites

Get listed, complete every field, keep pricing and integrations current, and ask recent customers for reviews steadily rather than in a burst. The category page's ranking is built from the listing's completeness and the reviews' volume and recency; there is no pitch that moves it. Why AI answers lean on Reddit, reviews and forums explains why these pages outrank your own for buying prompts.

Forum threads

Answer as yourself, with your company and role in your profile, where the question is genuinely open and your product is a genuine answer. Give the specific reason it fits, name a limitation, and stop. Never pose as a customer. A thread that is years old and closed is not a gap you can close; note it and move on.

Documentation and integration pages

If a page lists the tools that integrate with a platform and you are not there, the fix is usually to build the integration and get it listed in that platform's directory, which is where the documentation page draws from. If you already integrate and are missing, it is a listing problem: find the partner contact and ask. If you do not, this is product work, and the gap list is the evidence for it.

News sites

A news page that names a competitor cites a story about them: funding, a launch, a customer. You get onto the site with a story of your own, pitched to the same journalist, who evidently covers the category. Keep a list of the journalists behind the cited pages; it is a media list proven to feed AI answers for your prompts.

How to know a gap closed

A gap has two states to track, and both matter.

  1. The page changed. The listicle now names you; the review site listing is complete; your reply is in the thread. Record the date.
  2. The answers changed. Re-run the prompts the page was cited for, across the engines, over the following two to four weeks. The gap is closed when the answers to those prompts name you, and ideally when they cite the same page while doing it.

Keep the ranked list alive: a column for the page's status, one for the answers' status, and a date on each. Over a quarter, the list shows which kinds of gap close fastest for your category (usually listicles and review listings first, documentation pages last, because the integration has to exist) and where the next quarter's effort should go. Echo keeps this list on the Citations page and turns each row into an action; a spreadsheet works too, it just needs an owner.

A note on competitor-owned pages

The competitor-owned rows in the table are not gaps you can close by asking. They are a different signal: what the competitor publishes that you do not. If Bookline's "Bookline vs Slotwise" page is cited for your comparison prompts, the question is not how to get onto Bookline's page but whether Fernwick has an equivalent, and if not, why the assistants should ever find Fernwick's side of the story.

List the competitor-owned pages that get cited: comparison pages, "alternatives to" pages, integration docs, pricing pages, a glossary, a benchmark. For each, decide whether to build the equivalent. The ones cited across many prompts are usually worth it, and the comparison page is almost always first. They are the clearest brief for what to publish next.

Questions people ask

What is a source gap in AI search?

A source gap is a page that AI assistants cite when answering one of your prompts, which names a competitor and not your company. It is the page-level reason a competitor appears in an answer where you do not, and each one is something a person can act on: a listing to complete, an author to contact, a thread to answer or a page to build.

How do I find which websites AI cites for my competitors?

Run your prompts across the assistants that show sources (ChatGPT with search on, Perplexity, Gemini and Google's AI Overviews) for a few weeks and record every cited page with the brands named in the answer. Group the pages by domain and page, open each third-party page, and note which brands it names. The pages that name competitors and not you are the list.

How long does it take to close a source gap?

It depends on the page. A listing you control, such as a review site profile, can be complete in a day and reflected in answers within a few weeks of being recrawled. A listicle depends on the author. A documentation page that lists integrations closes only when the integration exists and is listed. Re-run the prompts over two to four weeks after each change to see the answers move.

Should I copy the pages my competitors get cited for?

Build the equivalent, not a copy. If a competitor's comparison page or integration documentation is cited across many of your prompts, the assistants are reading their account because yours does not exist. Publish your own version, with your facts and a fair account of the alternatives, and track whether the citations shift.

Written by Benjamin Libor, founder, echo.

Something wrong or out of date? Write to hello@echo-aeo.com and we'll fix it.

See what AI says about your brand. Free, in about a minute.

The free AI score checks how ready your website is for AI assistants. Echo itself tracks your customers' questions across the assistants every day and turns the answers into actions.