Site index for AI agents: /llms.txt. Documentation pages under /docs are also served as markdown at the same URL plus .md (e.g. /docs/geo-audit.md) or via an Accept: text/markdown request.

How Stable Is a New AI Citation? Evidence From the First 16 Perplexity Observations

A new AI citation should not be treated as permanent after one appearance. In this AirPulse case, a research page was absent from the first six valid Perplexity observations for one fixed non-branded prompt. It then appeared in nine of the next ten. Across the complete 16-observation window, Perplexity cited the page 56.25% of the time. ChatGPT, Gemini and Google AI each produced zero AirPulse own-domain citations for the same prompt.

Harsh Songra

This page publishes the complete first-observation series behind AirPulse's first repeated non-branded Perplexity citation. The method is the registered first-citation trial protocol; this page is the result. It is a repeated, engine-specific observation, not proof that publishing caused the citation, that the citation is permanent, or that the result applies to other prompts.

The citation was repeatable but not permanent. The page was absent in observations 1 through 6, first appeared in observation 7, then appeared in nine of observations 7 through 16. One later valid answer exposed no citations. Full window: 9/16, or 56.25%. After first appearance: 9/10.

The two rates answer different questions. 9/16 describes the full measured period, including the initial absence. 9/10 describes short-window persistence after first appearance. Neither should be projected beyond this prompt, engine and frozen window.

Evidence summary

MeasureObserved result
Fixed prompt“How do I prove that a GEO or AEO change improved AI visibility?”
Engine with AirPulse citationPerplexity
Valid Perplexity observations16
AirPulse own-domain citations9
Full-window citation rate9/16 (56.25%)
Before first appearance0/6 cited
After first appearance9/10 cited
Later valid misses1
Citation-list positionMedian 6; range 1-7
Other enginesChatGPT 0/16, Gemini 0/16, Google AI 0/16
Mean cited-domain overlap0.865 across 13 comparable consecutive pairs
StatusFrozen first cohort; observational, engine-specific result

What happened, observation by observation?

The fixed prompt is the target query of the trial protocol page, which is the page Perplexity cited. Each row is a completed Perplexity observation from the canonical AirPulse brand record.

A row of sixteen circles for sixteen valid Perplexity observations of one fixed prompt. Observations one to six are grey, meaning the AirPulse page was absent. Observations seven to thirteen are green, meaning the page was cited. Observation fourteen is a dashed outline: a valid answer that exposed no citations. Observations fifteen and sixteen are green. Summary boxes show nine of sixteen cited, nine of the next ten after first appearance, and a note that the miss stays in every rate.
Figure 1. Citation presence across the first 16 valid Perplexity observations. Grey means AirPulse was absent. Green means the AirPulse research page was cited. The outlined observation was a valid answer with no exposed citations.
ObservationAirPulse cited?Citation-list positionExposed citations
1No-10
2No-10
3No-10
4No-10
5No-10
6No-10
7Yes110
8Yes710
9Yes710
10Yes110
11Yes610
12Yes610
13Yes510
14No-0
15Yes610
16Yes610

Did the citation persist after it first appeared?

Yes, within this window: nine of the next ten valid Perplexity observations. That shows repeated selection, not permanence. Observation 14 is the counterexample: the answer completed but did not mention AirPulse and exposed no citations. Keep the numerator, denominator, order and miss visible rather than a binary “won” label.

Did the same result appear on other engines?

No. The result was specific to Perplexity in this window.

EngineValid observationsAirPulse citationsInterpretation
Perplexity169Repeated presence in this window
ChatGPT160No observed own-domain citation
Gemini160No observed own-domain citation
Google AI160No observed own-domain citation

A combined four-engine score would hide this. Each engine stays its own prompt-engine cell, as the measurement methodology requires.

What does citation-list position mean?

When the page appeared, its position in the exposed Perplexity citation array was 1, 7, 7, 1, 6, 6, 5, 6 and 6. Median 6, range 1 to 7. This is the page's ordinal position in the exposed citation list, not a Google rank or a quality score.

A dot plot of the AirPulse page's position in the exposed Perplexity citation list for each cited observation, with positions running from one at the top to ten at the bottom. The cited observations show positions one, seven, seven, one, six, six, five, six and six, a dashed median line at six, and a dashed vertical marker at observation fourteen, which exposed no citations.
Figure 2. Citation-list position for each cited observation. Position 1 means first in the exposed list, not “ranked #1”.

How stable was the broader source set?

Across 13 comparable consecutive pairs with non-empty citation lists, the mean cited-domain Jaccard overlap was 0.865, median 1.0, range 0.429 to 1.0. Jaccard overlap is the domains shared by two consecutive citation sets divided by the distinct domains across both; 1 means identical sets, 0 means none shared.

The two pairs touching the zero-citation observation were excluded because overlap is undefined when one side has no exposed sources. This describes one prompt on one engine, not a Perplexity-wide benchmark.

What this result proves, and what it does not

Supported by the dataNot supported by the data
Perplexity repeatedly selected the AirPulse protocol page for one exact prompt.The page or any individual optimisation caused the citation.
The first citation recurred in 9 of the next 10 observations.The citation is permanent.
One later valid answer omitted AirPulse and exposed no citations.Every miss means indexing, authority or content quality was lost.
The result was specific to Perplexity in this window.ChatGPT, Gemini or Google AI will follow.
Repeated measurement changed a milestone into an observed rate and sequence.56.25% is AirPulse's true or future visibility rate.

Why this is not yet a causal GEO result

A before-and-after sequence shows movement, not cause. Several things changed in the same period: a new page went live, the Research hub linked to it, the sitemap and llms.txt were updated, and different crawler-labelled requests appeared in logs. The crawler evidence page shows no verified Perplexity exact-page fetch in origin logs before the first citation. Access evidence and citation evidence stay separate.

No matched-control result is presented. The pre-appearance series has six observations, and observations over time may be correlated, so a binomial confidence interval can imply more independence than the sequence contains. The correct description is “repeated observational result”, not proof that the page, sitemap, llms.txt, a crawler request, a social post or the product caused the outcome.

Why repeated measurement changed the interpretation

After observation 7, AirPulse could report one first citation, not persistence. After ten more observations the page had appeared nine more times and disappeared once, giving an observed rate, an order and a visible exception.

This matches the 30,504-response studyand the external research: “Don't Measure Once” finds one-off AI-search observations unreliable because answers change across runs, prompts and time; “Quantifying Uncertainty in AI Visibility” treats citation visibility as a sample from a changing response distribution. Save the first citation, then keep measuring.

How the result was measured

One exact prompt paired with one named engine, per the measurement methodology. The prompt was selected under the prompt-selection methodology.

  • The prompt text was frozen.
  • Perplexity, ChatGPT, Gemini and Google AI were reported separately.
  • Only completed answers that passed the declared validity rules were counted.
  • An own-domain citation required an exposed URL on airpulse.ai.
  • Citation-list position used the order of URLs in the exposed citation array.
  • Cited URLs were normalised to domains before source-set overlap was calculated.
  • The complete first 16-observation cohort was frozen rather than allowed to move each day.
  • The result series came from the canonical AirPulse brand record, not pooled duplicate records.
  • Customer prompts, raw customer answers, tenant identifiers and customer domains were excluded.

Public data download

One CSV row per observation: observation number, prompt text, engine, valid-answer flag, own-domain-cited flag, citation-list position and exposed citation count. No raw answers, customer information, job identifiers or credentials.

What happens next?

  • The prompt and the first 16-observation cohort stay frozen.
  • The Day 30 result is published as a separate validation window with the same definitions.
  • The Day 60 verdict is published under the registered decision rule, positive, null or inconclusive alike.
  • Page and deployment versions are retained so later observations match what was live.

Frequently asked questions

It is enough to report a milestone: one engine cited one page for one prompt at one time. It is not enough to estimate stability. Continue running the same prompt and report the rate across a declared window.

How this page was made

A read-only extract of AirPulse-owned production data: the fixed prompt, engine, valid-observation counts, citation flags and aggregate source-overlap measures needed to audit the conclusion. It excludes raw customer answers, tenant data, customer domains and credentials, and does not infer hidden indexing state.

Primary sources

  1. Don't Measure Once: Measuring Visibility in AI Search (arXiv)
  2. Quantifying Uncertainty in AI Visibility (arXiv)
  3. Auditing Citation Behavior in AI-Generated Search Summaries (PMLR)
  4. Perplexity Help Center: How does Perplexity work?

Measure the same prompt repeatedly

Track whether your brand is mentioned and cited across ChatGPT, Gemini, Perplexity and Google AI without treating one answer as a stable result.