TL;DR

Part 1 showed how ChatGPT rewrites and searches. This part follows the candidate pages it retrieves and asks which of them survive the selection step and appear as citations. The data is the same 80 questions, each run 20 times on ChatGPT 5.3 Instant and 5.5 Instant, from Understanding ChatGPT Citations.

Finding 1: the candidate set changes from run to run

Across 20 runs of the same question, 40.8% of URL candidates on 5.3 and 44.5% on 5.5 appeared in only one run. Candidates that appeared in 14 or more runs, the stable core, were 9.4% and 7.7%. The newer model retrieved more distinct pages per question, 132.2 against 96.4, but was not more stable: pairwise overlap between runs, measured as Jaccard similarity, was 0.303 on 5.3 and 0.292 on 5.5.

Overlap was higher at the hostname level (0.408 and 0.402) and the entity level (0.421 and 0.404). The engine returns to the same sites and names more reliably than to the same pages. For anyone measuring visibility, one run is a sample, not a census.

Finding 2: the pages that keep coming back are the ones that get cited

We asked whether a candidate’s recurrence in the other 19 runs predicts whether it is cited in a held-out run.

Level 5.3 Instant AUC 5.5 Instant AUC
URL 0.619 0.651
Hostname 0.666 0.709
Entity 0.688 0.711

The increases from 5.3 to 5.5 at the URL and hostname levels stayed significant after correction for multiple tests. The signal is strongest for entities, which include brands: a name the engine keeps retrieving is a name it tends to cite. This is an association in the data. It does not show that making a page appear more often in retrieval would cause it to be cited.

5.3 Instant 5.5 Instant 0 0.25 0.5 0.75 URL 0.6190.619 0.6510.651 Hostname 0.6660.666 0.7090.709 Entity 0.6880.688 0.7110.711
How well a candidate's recurrence across the other 19 runs predicts its citation in a held-out run (AUC; 0.5 is chance).

Finding 3: snippet length carries a signal, position carries less

Among 28,368 candidate instances on 5.3 and 33,976 on 5.5, the length of the snippet the engine extracted predicted citation with AUCs of 0.612 and 0.625, weaker than recurrence but clearly above chance. Of cited snippets, 16.5% and 16.9% were 500 characters or longer; among uncited snippets, 1.5% and 1.9%. A page that gives the engine a substantial passage to quote is more likely to be shown.

Retrieval position mattered less than it does in search. Within a run, position predicted citation with AUCs of 0.561 on 5.3 and 0.623 on 5.5, and candidates beyond position 15 were still cited 24.0% and 19.0% of the time. Publication recency carried no usable signal: AUCs of 0.482 and 0.535, with confidence intervals including 0.5.

By source type, news had the highest share of candidates cited in at least one run on 5.3, at 52.0%, and academic sources had the highest on 5.5, at 49.2%. We treat these as supplementary; the groups are uneven in size.

What this says for GEO

Three things carry over. A single answer tells you little about where you stand, because the candidate set is different next time; repeated runs are the measurement. Being retrieved is not the goal, being retrieved consistently is what tracks citation. And the extracted passage matters: a page that yields a long, self-contained snippet is cited more often than one the engine can only clip a line from. None of this says that publishing more pages or chasing retrieval volume will raise citations; the data is observational.

What this part does not show

All runs are from our own sessions, on 80 questions, in one window. The recurrence and snippet signals are associations within observed candidates, not interventions. The citation label counts supporting pages that are selected behind a displayed reference even when they are not shown separately, which the paper describes.

Continue with Part 3: can Google and the API stand in for ChatGPT Web?