Study #45 showed that a brand at rank 1 of a cited source is picked every time and a brand at rank 4 almost never. That left open whether the model believes the ranking or simply follows the prompt. We ran the full set of challenges: removing the instruction, moving the source, using real brands, varying the source's reliability, pitting rank against reviews, and listing the same brands without a ranking. Rank holds in every one of them. It is an order, not a slope: the higher brand won in every pair we tried, from adjacent places to a fourteen-place gap.
Source Rank Position (#45) put a brand at rank 1, 4 and 15 of a cited source. It was selected 100%, 1.2% and 0% of the time. Our first pass here, with an unknown brand against the category's default pick, gave the same shape: 100% at rank 1, 0% at ranks 4 and 15, even when the newcomer had a 4.7-star rating on 500 reviews. A result that clean invites three objections: it is a ceiling with no gradient, the prompt told the model to use the source, and the newcomer was invented.
We wrote the follow-up hypotheses down before running it. If rank survives removing the instruction, rank is treated as evidence. If it collapses, the first result was instruction-following and we would say so. We then added one control we had not planned: the same list of brands, labelled as unordered, to rule out a simple preference for the first name on a list.
Same 36 intents as Cold Start, where one brand already dominates the model's open answers. Each is paired with an invented newcomer for its category. The model gets a 17-slot source (“a roundup from a reasonably authoritative industry site, updated 3 months ago”) that ranks both brands plus 15 placeholders, then a forced two-way question: between these two, which is the better choice? Brand order in the question is randomized per run. A selection is counted when the model's JSON answer names the newcomer.
Without a source, the invented newcomer never beat the category's default pick in 360 runs. Put the same two brands in a ranked source with the newcomer first and it wins all 360. The model's own brand preference, which Lock-in shows is stable (86% same #1 across six sweeps), did not survive a single ranked list.
In Study #45 we only had ranks 1, 4 and 15, so the shape between them was unknown. Here every pair resolves the same way: whichever brand is ranked higher wins, whether the gap is one place or fourteen. A newcomer ranked second behind the favorite wins 0%, the same as one ranked fifteenth. A newcomer ranked first wins 100%, whether the favorite sits at second, third, eighth or fifteenth.
The first objection was that the system prompt said “Use this source if it's relevant.” Removing it changed nothing (100% at rank 1, 0% at rank 4). So did a neutral wording (“Weigh it however you see fit”), putting the source in the user message instead of the system message, and swapping the invented brands for real ones: for 16 of the 36 intents the open-answer runner-up from Cold Start served as the challenger. Real brands behaved exactly like invented ones.
| Condition | Newcomer selected | 95% CI (bootstrap over intents) |
|---|---|---|
| No source | 0.0% | 0.0–0.0% |
| Unordered list, newcomer in slot 1 | 0.8% | 0.0–1.9% |
| Unordered list, newcomer in slot 4 | 0.3% | 0.0–0.8% |
| Unordered list, newcomer in slot 15 | 0.3% | 0.0–0.8% |
| Ranked: newcomer #1, favorite #2 (original prompt) | 100.0% | 100.0–100.0% |
| Ranked: newcomer #4, favorite #2 (original prompt) | 0.0% | 0.0–0.0% |
| Ranked: newcomer #15, favorite #2 (original prompt) | 0.0% | 0.0–0.0% |
| Ranked: newcomer #2, favorite #1 | 0.0% | 0.0–0.0% |
| Instruction removed, newcomer #1 | 100.0% | 100.0–100.0% |
| Instruction removed, newcomer #4 | 0.0% | 0.0–0.0% |
| Source in user message, newcomer #1 | 100.0% | 100.0–100.0% |
| Source in user message, newcomer #4 | 0.0% | 0.0–0.0% |
| Blog source, newcomer #1 | 100.0% | 100.0–100.0% |
| Sponsored source, newcomer #1 | 77.8% | 68.3–86.7% |
| Sponsored source, newcomer #4 | 2.2% | 0.6–4.4% |
| Newcomer #1, 3.4 stars (500 reviews) | 86.1% | 78.9–92.2% |
| Newcomer #4, 4.9 stars (2,500 reviews) | 1.7% | 0.3–3.3% |
| Real brands, newcomer #1 (16 intents) | 100.0% | 100.0–100.0% |
| Real brands, newcomer #4 (16 intents) | 0.0% | 0.0–0.0% |
| Real brands, newcomer #15 (16 intents) | 0.0% | 0.0–0.0% |
Study #45 showed that a brand at rank 15 of a cited source reaches the model's candidate set in 35% of runs and is chosen in none. This study explains why the cut is so sharp: when the model has a ranked source in front of it, it treats the order as the answer, and nothing short of the source's own framing (a sponsored label) moves it. Brand familiarity, a better rating and a persuasive instruction all lose to position.
For measurement, a count of citations hides the part that matters. Two brands cited the same number of times can sit at the top and in the middle of the same source, and in these tests that is the difference between being picked every time and never. Position inside the cited source belongs next to the citation count.
Everything here is gpt-4o in a forced two-way choice. Other models, and open-ended answers with several brands, may weigh a ranked source differently.
The source is placed in the prompt. This measures what the model does with a ranked source it has, not how often real systems retrieve one or which list they pick.
Both candidates appear in the ranking. A brand missing from the source, or a source that disagrees with the model's memory on a well-known brand, is a different test.
The source says it ranks brands in this order. The unordered control shows the model reads that declaration, not list order. It does not show what happens when a source implies a ranking without saying so.
See whether your ratings and review counts are visible in a way AI models can read before you spend on awareness.
The studies this one builds on.
Illustrative example · single-site signal for atomfoundry.dev.
View full signals →