Competitive Analysis: Who Gets Cited in AI Answers, and Why
AI generated
GEO
AEO
GEO · Competitive Analysis · AI Search
Who Gets Cited in AI Answers, and Why
Competitive analysis for the age of AI citations

When ChatGPT, Perplexity or Claude answers a question from your industry, they usually name two to five sources as evidence. These AI citations increasingly decide which brand gets perceived as credible, before a user ever visits the actual website. This article walks through a repeatable method for systematically checking which competitors get cited for your target queries, and what structurally separates the cited pages from the overlooked ones.

17 min read Query sets · Citation patterns · Tracking ChatGPT · Perplexity · Claude · Gemini

1. Why citation is the new ranking position

Classic SEO works with a clear metric: position one through ten on a search results page. Generative answer systems no longer have that ranking in the familiar form. Instead, a language model decides in a split second which two, three or five sources it will draw on for an answer, and in the GEO context that selection is called an AI citation. If you do not appear in that small selection, you are practically invisible to the user in that moment, regardless of how well your page ranks in classic search engines.

The difference is more than cosmetic. A position ten on Google still gets a click from a highly motivated user. A missing AI citation for a direct expert question often means no click, no brand mention, no chance to reach the user at all. That is why a systematic competitive analysis is worth doing, one that precisely documents which domains get selected as AI citations for your target queries and which do not.

This analysis is not a one time project. Language models get updated regularly, and retrieval layers like the one behind Perplexity or Google's AI Overviews change their source selection sometimes weekly. A reliable competitive analysis for AI citations therefore needs a repeatable, documented method rather than isolated spot checks that only give a single snapshot in time.

2. The base methodology: systematic instead of anecdotal

The most common mistake when checking AI citations: an employee types three questions into ChatGPT, notes the answers, and draws conclusions for the entire content strategy from that. The problem is sample size. Language models do not answer deterministically, meaning the same question can return different sources on two separate runs. A single query therefore says little about who is structurally favored as an AI citation.

A reliable method needs three elements: a fixed query set of at least twenty to fifty questions per topic cluster, several runs per question spread across multiple days, and consistent documentation of the cited domains per answer. Only once a domain repeatedly appears as an AI citation across several runs and several related questions can you speak of a stable pattern rather than chance.

It also pays to check across several systems: ChatGPT with web search, Perplexity, Google AI Overviews and, where relevant to your field, Claude with web search enabled. Each system has its own retrieval mechanism and its own weighting, so AI citations can differ substantially between platforms. A domain that gets cited almost every time on Perplexity can be completely absent from AI Overviews, and vice versa.


#!/usr/bin/env bash
# citation-check.sh: structured logging loop for manual GEO query runs
# Run each query 3x across sessions/days, log the cited domains manually or via API

set -euo pipefail

readonly QUERY_FILE="queries.txt"          # one query per line
readonly LOG_DIR="citation-logs/$(date +%Y-%m-%d)"
mkdir -p "$LOG_DIR"

counter=0
while IFS= read -r query; do
  counter=$((counter + 1))
  logfile="$LOG_DIR/query-${counter}.md"
  {
    echo "## Query: $query"
    echo "- Date: $(date -Iseconds)"
    echo "- Platform: "                # fill in manually: chatgpt / perplexity / gemini / claude
    echo "- Cited domains: "           # fill in manually after checking the response
    echo "- Own domain cited: yes/no"
  } > "$logfile"
  echo "[LOG] Prepared template for: $query -> $logfile"
done < "$QUERY_FILE"

echo "Prepared $counter query templates in $LOG_DIR"

3. Building query sets: which questions actually matter

A good query set for analyzing AI citations reflects the actual questions a potential customer would ask a language model, not the keywords they would type into Google. That means full, naturally phrased questions: "Which e-commerce platform fits a B2B wholesaler with complex pricing logic?" instead of "B2B ecommerce platform comparison." Language models respond to semantic closeness to the phrased question, not to exact keyword matches, so the query set has to reflect that natural phrasing.

A split into four query types has proven useful: informational questions ("What is the difference between X and Y?"), comparison questions ("Which alternative to X is best for use case Z?"), recommendation questions ("What are the best providers for...?") and problem solving questions ("How do I solve problem X in context Y?"). Each type produces different AI citations, because models favor different kinds of sources depending on the question type, such as comparison portals for recommendation questions and technical documentation for problem solving questions.

The level of the question matters too: both broad questions about the topic cluster and narrow questions about specific subtopics belong in the set. A domain might be completely absent for broad questions but consistently appear as an AI citation for the narrow detail questions, because it delivers the most specific, best supported answer there. This granularity in the analysis shows at which level your own content strategy should start.

4. Analyzing citation patterns: who shows up how often

Once the data is collected, the actual pattern analysis begins. For every domain in the competitive field, you record what percentage of runs it appears as an AI citation, which query types it performs particularly strongly or weakly on, and at which position within the answer the citation typically sits. Early mentions within an answer often correlate with higher perceived authority, even though the systems themselves do not communicate an explicit ranking.

A pattern that shows up regularly in practice: a handful of domains dominate the AI citations for a topic cluster almost entirely, while many other, sometimes high traffic pages barely appear or never do. This does not necessarily match the classic Google ranking order. A page with a solid position three to five on Google can be completely absent from AI citations if its content is too promotional, too unstructured or too light on facts, while a page with a weaker classic ranking gets cited regularly because it delivers more clearly structured, directly extractable answers.

Trait Frequently used as an AI citation Rarely or never cited
Answer structure Direct answer in the first two to three sentences Answer only recognizable after a long intro
Fact density Numbers, definitions, concrete criteria General statements, little substance
Structural markup Headings, lists, tables, Schema.org Plain prose without semantic structure
Tone Factual, explanatory, neutrally supported Promotional, heavy on superlatives
Freshness Recognizable update date No date or visibly outdated

5. What cited pages structurally have in common

Across many topic clusters, frequently used AI citations show recurring structural traits. The most noticeable one: the answer to the underlying question sits close to the top of the page, usually within the first one to three sentences under the relevant heading, not buried after a long introduction with company history or marketing language. Language models extract text passages, not whole pages, so a direct, standalone understandable answer clearly increases the odds of an AI citation.

Second, cited pages are almost always clearly organized semantically: meaningful H2 and H3 headings that already name a question or subtopic, lists for enumerations, tables for comparisons, and frequently structured data such as FAQPage or HowTo schema running in the background. This structure not only makes extraction easier for language models, it also improves classic readability, which explains the double benefit of this investment.

Third, frequently cited pages contain concrete, verifiable information instead of vague claims: numbers, definitions, comparison criteria, thresholds, step by step instructions. A sentence like "load time should stay under two seconds" is more likely to be used as an AI citation than "fast load time matters," because the first sentence delivers a directly usable, precise statement.


{
  "@context": "https://schema.org",
  "@type": "Article",
  "headline": "Example: a clearly structured, citable page",
  "author": { "@type": "Organization", "name": "Example Company" },
  "datePublished": "2026-06-01",
  "dateModified": "2026-07-15",
  "about": "Defines a concretely verifiable topic instead of vague claims",
  "mainEntity": {
    "@type": "DefinedTerm",
    "name": "Target term",
    "description": "A precise, self-contained definition that is understandable without further context and can be extracted directly as an answer."
  }
}

<!-- Structure pattern that performs well as a source for AI answers -->
<h2 id="max-load-time">What load time threshold applies to B2B stores?</h2>
<p>
  <!-- Direct answer in the first sentence, self-contained without prior context -->
  Largest Contentful Paint should stay under 2.5 seconds, measured on a
  mid-range mobile device under realistic network conditions.
</p>
<dl>
  <dt>Good value</dt>
  <dd>LCP under 2.5 seconds</dd>
  <dt>Borderline</dt>
  <dd>LCP between 2.5 and 4.0 seconds</dd>
  <dt>Critical</dt>
  <dd>LCP above 4.0 seconds</dd>
</dl>

6. What overlooked pages have in common

Just as informative as the patterns behind AI citations is the analysis of the overlooked pages, especially when they rank well classically. A recurring pattern: long, unstructured blocks of prose without clear subheadings, where the actual answer is hidden somewhere in the third paragraph. Language models favor passages that are understandable in isolation from the rest of the page; a paragraph that refers back to earlier paragraphs ("as mentioned above") or assumes context is a poor fit for standalone quoting.

A second common pattern in overlooked pages: promotional language with unsupported superlatives like "the best provider" or "the leading solution" without accompanying facts or criteria. Language models are trained to favor neutral, fact based statements because they appear more credible as an answer source. Pure promotional claims without evidence get used less often as AI citations in practice, even when the page is topically relevant.

Third, pages without a recognizable update date or with outdated information tend to get cited less often, especially on topics with a high rate of change. A technical article that is obviously based on an old software version tends to be avoided by a model that is supposed to deliver current information, even when no newer alternative exists and the core information is still accurate.

7. Documenting and repeating the competitive analysis

A one time analysis of AI citations loses its value within a few weeks, because models, retrieval systems and competitor content keep changing. A fixed tracking format that gets repeated monthly or quarterly makes sense: the same query sets, the same documentation structure, so that changes over time become visible instead of isolated snapshots.

In practice a simple tabular structure works well, with columns for query, platform, date, cited domains in order, and a short note on answer quality. This raw data can then be aggregated: how often does your own domain appear across all queries? Which competitors gain or lose AI citations over time? Does the pattern change after your own content update?


{
  "tracking_run": "2026-07-week3",
  "query_set": "b2b-ecommerce-cluster",
  "results": [
    {
      "query": "Which ecommerce platform fits complex B2B pricing logic?",
      "platform": "perplexity",
      "cited_domains_in_order": [
        "competitor-a.com",
        "own-domain.com",
        "trade-portal-b.com"
      ],
      "own_domain_cited": true,
      "answer_quality_note": "Own page at position 2, but only quoted with a half sentence"
    },
    {
      "query": "Which ecommerce platform fits complex B2B pricing logic?",
      "platform": "chatgpt-web",
      "cited_domains_in_order": ["competitor-a.com", "competitor-c.com"],
      "own_domain_cited": false,
      "answer_quality_note": "Own domain missing entirely in this run"
    }
  ]
}

8. From analysis to content adjustments

The competitive analysis is only valuable if it drives concrete content decisions. The first step: identify topics and questions where your own domain never appears as an AI citation, even though relevant content already exists. In these cases it is worth doing a direct structural comparison with the most frequently cited competitor page: does the answer sit higher up there? Is the language more concrete? Does your own page lack a current date or structured data?

The second step is targeted sharpening of existing content rather than full rewrites: pull the core answer higher up the page, replace vague phrasing with concrete numbers and criteria, add missing structured markup. These adjustments are usually far cheaper than producing new content, and the competitive analysis provides the prioritization: address the topics first where AI citations are missing for the most relevant questions, not the ones with the largest general traffic potential.

A realistic expectation about impact matters here: a content adjustment does not guarantee a new AI citation, and not immediately. Models are not retrained in real time, and retrieval layers have their own indexing cycles. A realistic timeline is to recheck after four to eight weeks, using the same query set, to see whether the citation pattern has changed at all.


// extractCitations.js: simple helper to pull cited domains out of a
// copy-pasted AI answer (manual workflow, no API scraping involved)
function extractCitations(answerText) {
  // Matches bare domains and markdown-style links in the pasted answer
  const urlPattern = /(?:https?:\/\/)?(?:www\.)?([a-z0-9-]+\.[a-z]{2,})/gi;
  const matches = [...answerText.matchAll(urlPattern)];
  const domains = matches.map((m) => m[1].toLowerCase());

  // Deduplicate while preserving citation order
  return [...new Set(domains)];
}

const pastedAnswer = "According to competitor-a.com and own-domain.com the " +
  "recommended load time is under 2.5 seconds. trade-portal-b.com cites similar figures.";

console.log(extractCitations(pastedAnswer));
// ["competitor-a.com", "own-domain.com", "trade-portal-b.com"]

9. Limits of the method: accounting for non-determinism

As systematic as this method is, it has firm limits. Language models do not always give the same answer, and not always the same sources, for an identical question, even within short time intervals. This variability is not a measurement error, it is a property of the underlying systems. Anyone drawing a final conclusion from three runs is overestimating the precision of the method.

Answers also differ by location, account settings, conversation history and system version, which further complicates external analysis. A reliable competitive analysis of AI citations therefore does not deliver exact percentages but robust tendencies: which domains appear consistently, which never, which occasionally. These tendencies are sufficient for strategic decisions, even though they cannot claim scientific precision.

Finally, it is worth keeping in mind that the systems themselves publish no official documentation of their source selection. All the patterns described here are derived from repeated observation, not from disclosed algorithms. This methodology therefore does not replace fundamental content quality work, it complements it with an empirical, repeatable checking loop.

Mironsoft

GEO audits, competitive analysis and content optimization for AI search

Want to know who gets cited for your topics?

We build your query set, check AI citations across multiple platforms and turn the findings into concrete content adjustments, prioritized by the questions where you currently do not appear.

Query set setup

Questions along your real audience, not along keyword lists

Citation tracking

Repeated checks across ChatGPT, Perplexity and AI Overviews

Content sharpening

Structure, fact density and markup adjusted with clear priorities

10. Summary

AI citations are the new, much narrower selection that competitors compete over for visibility in generative search systems. A reliable competitive analysis needs a fixed query set of naturally phrased questions, repeated runs across multiple platforms, and consistent documentation of the cited domains. Frequently cited pages share recognizable traits: direct answers close to the top of the page, clear semantic structure, concrete facts instead of vague statements, and visible freshness.

These patterns translate into concrete content adjustments, prioritized by the topics where your own domain currently gets no AI citations. A realistic framing matters here too: the method delivers robust tendencies, not exact metrics, because the underlying systems operate non-deterministically and do not disclose their selection criteria. Repeated, documented checking remains the only way to turn isolated observations into a reliable picture.

AI citations: competitive analysis at a glance

Query set

20 to 50 naturally phrased questions per cluster, covering four question types: informational, comparison, recommendation, problem solving.

Repetition

Multiple runs per question spread across days, monthly or quarterly tracking to account for non-determinism.

Spotting patterns

Direct answer near the top, clear structure, concrete facts and visible freshness raise citation probability.

Prioritization

Address topics with missing AI citations for relevant questions first, then recheck after four to eight weeks.

11. FAQ: AI citations and competitive analysis

1What exactly are AI citations?
The sources a language model names or links when answering a question, usually two to five domains per answer.
2How many queries does a reliable analysis need?
At least 20 to 50 questions per cluster, run multiple times over several days. Single spot checks are not meaningful due to non-determinism.
3Are AI citations the same as a Google ranking?
No. Good Google positions do not guarantee an AI citation, structure and fact density decide.
4Which platforms should you check?
At minimum ChatGPT with web search, Perplexity and Google AI Overviews, complemented by Claude where relevant.
5How often should you repeat the analysis?
Monthly, or at least quarterly, with the same query set, so real changes become visible.
6Which traits increase citation chances the most?
Direct answer near the top, clear structure, concrete numbers instead of vague claims, recognizable update date.
7Is a citation guaranteed after a content adjustment?
No, models and retrieval layers have their own update cycles. Rechecking after four to eight weeks is realistic.
8What is the most efficient way to document patterns?
A fixed table of query, platform, date, cited domains and a quality note, aggregatable across multiple runs.
9Why does a well ranking page sometimes never get cited?
Often due to unstructured text, promotional language without evidence, or missing freshness.
10Does this method replace classic SEO work?
No, it complements it with empirical prioritization, content quality and technical SEO remain prerequisites.