How does ChatGPT decide which brands to name?
We logged every URL ChatGPT fetched before naming a skincare brand, registered one number before looking, and found that 88.6% of what the model read was third-party pages — not brand sites. One word in the question swings the own-site-fetch rate by a factor of ten.
Most times ChatGPT named a skincare brand, it never opened that brand’s own site: 61.8% of name-checks included no own-site fetch at all, and only 38.2% did (95% CI 35.8%–40.8%). It builds the answer mostly from third-party editorial, clinical, and retail pages — 88.6% of what it read. The lever is not your own site; it is whether the question demands a fact only your site holds.
Most brands believe that getting recommended by ChatGPT is a problem of visibility — that if your site is well-optimized, authoritative, and crawlable, the model will find you, cite you, and name you when a shopper asks. This assumption drives content budgets, technical SEO sprints, and structured-data rollouts aimed squarely at making brand pages legible to machines. The wound it leaves is quiet but real: brands invest in the wrong surface, measure the wrong outcome, and cannot explain why they never appear in answers no matter how much they spend.
The data breaks the assumption that recommendation is a visibility contest. ChatGPT does not scan the open web for your brand and then decide whether to recommend it. It assembles a reading list on the fly from editorial, clinical, and retail pages, and it names brands from that list. Your site is a minor contributor to the list — most of the time, it is not on the list at all. The sources it fetches before it generates a name are overwhelmingly third-party.
One number, locked before we looked
How often ChatGPT named a skincare brand without ever opening that brand’s own site.
A name-check is one (call, brand) pair in which ChatGPT named the brand. An own-site fetch is any case where the named brand’s own domain appeared among the pages the model fetched for that same call. We ran 1,444 name-checks in the skincare category — skincare because it passed the pre-registered pilot gate for this study window. Before looking at any results, we locked in one registered number: the share of name-checks that included an own-site fetch. Every other figure in this piece is descriptive. We also introduced two invented brands as controls; both were never recommended and never fetched, confirming the instrument behaved as designed.
Named without a visit
For every brand ChatGPT named, the pages it had fetched fell into one of these.
ChatGPT names most brands from a reading list it assembles on the fly from editorial, clinical, and retail pages — not your own site. The registered own-site-fetch rate is 38.2% (Wilson 95% CI: 35.8%–40.8%; n=1,444; skincare; day-0). The majority path, 61.8%, included no own-site fetch at all. In 46.0% of name-checks, no brand site appeared among fetched pages — not the named brand’s, not any competitor’s. A further 15.8% fetched a competitor’s site but not the named brand’s. Whether your site enters the reading list depends on one variable: whether the question demands a fact your pages uniquely hold.
One word changes the fetch
Same brands, eight ways of asking. Own-site fetch runs from 8.5% to 84.9%.
The phrasing of the question is the lever. Own-site-fetch rates swing tenfold across eight phrasings, from 8.5% for ‘best skincare brands’ to 84.9% for ‘best skincare brands under $30’. The full ordering, low to high: ‘best skincare brands’ 8.5%, ‘best skincare brands for sensitive skin’ 10.2%, ‘skincare brands worth buying’ 18.6%, ‘top skincare brands’ 22.9%, ‘rank the 5 best skincare brands’ 37.9%, ‘best affordable drugstore skincare brands’ 67.1%, ‘recommend 5 skincare brands and say why’ 73.3%, ‘best skincare brands under $30’ 84.9%. Generic questions yield editorial and retail aggregators. Questions that embed a constraint — price, format, audience — pull pages that hold the specific fact, and brand sites are where those facts live.
Share of the pages ChatGPT read across 1,444 name-checks. Third-party dominates; own-brand is one bar in ten.
The source mix confirms why. Across the 1,444 name-checks, 88.6% of fetched pages were third-party editorial, clinical, or retail; own-brand pages accounted for 8.2%; UGC and social (Reddit, Quora, YouTube, TikTok, and others) for 1.7%; and reference sites (Wikipedia, Britannica) for 1.6%. The top fetched sources were aad.org (dermatology), nationaleczema.org, allure.com, goodhousekeeping.com, sephora.com, and ulta.com. The model is mostly reading pages the brand does not control.
Fetched often, recommended rarely
Each dot is one brand: how often ChatGPT fetched its own site vs. how often it named it.
The finding does not travel evenly across brands. Anchor brands — CeraVe and L’Oréal — showed a 50.9% own-site-fetch rate when recommended, while mid-tier brands sat at 33.0%. L’Oréal was fetched in 22.8% of queries but recommended in only 3.2%; CeraVe was recommended in 99.8% of calls. Fetching a brand page does not mean the model recommends that brand — the path from fetch to recommendation is observed, not mechanistic. The same study run against Claude (Anthropic) in the same window and category produced an own-site-fetch rate of 5.9% versus ChatGPT’s 38.2% — a sixfold gap. The finding describes ChatGPT’s behavior in skincare on day-0; other categories, models, and dates may differ.
The fetch goes to the page that holds the fact
Stop optimizing brand pages for generic recommendation queries. The open-ended phrasings — ‘best skincare brands,’ ‘top skincare brands’ — are lost causes for own-site fetches; those answers are built from editorial roundups and retail aggregators. Instead, publish the specific facts that constraint-driven questions demand: price tiers, ingredient suitability for skin conditions, format comparisons. A page that uniquely answers ‘best skincare brands under $30’ earns a fetch that a generic brand page never will. The goal is not visibility for its own sake; it is being the only source that holds the fact the question requires.
How we ran this
- What we measured
- 1,444 (call, brand) recommendation events from 408 skincare queries sent to ChatGPT (8 question phrasings × 17 repeats × 3 batches). The brand set was eight real skincare brands plus two invented brands as controls. The registered metric is the share of recommendation events in which at least one fetched URL matched the recommended brand’s own domain (hostname matching, www. stripped), reported with a Wilson 95% confidence interval.
- When
- Data collected 18 and 20 July 2026 (day-0 window). Analysis published 20 July 2026.
- Which AI
- ChatGPT (OpenAI API) with live web search, Claude (Anthropic API) — one labeled comparison note, same window, Gemini — absent; its API does not expose fetched URLs
The full numbers
Every number in this piece, at full precision. The prose rounds for reading; this table doesn't.
| Measure | As shown | Exact | Source |
|---|---|---|---|
| How often ChatGPT opened the brand's own site | 38.2% | 38.2271% | Measured |
| Likely range, low end | 35.8% | 35.7551% | Measured |
| Likely range, high end | 40.8% | 40.7616% | Measured |
| Named with no own-site fetch | 61.8% | 61.7729% | Derived |
| Named with no brand site fetched at all | 46.0% | 46.0526% | Derived |
| Named with only a competitor's site fetched | 15.8% | 15.7203% | Derived |
| Phrasing “best skincare brands” — fetch rate | 8.5% | 8.5202% | Measured |
| Phrasing “for sensitive skin” — fetch rate | 10.2% | 10.2190% | Measured |
| Phrasing “skincare brands worth buying” — fetch rate | 18.6% | 18.5930% | Measured |
| Phrasing “top skincare brands” — fetch rate | 22.9% | 22.8700% | Measured |
| Phrasing “rank the 5 best” — fetch rate | 37.9% | 37.8698% | Measured |
| Phrasing “best affordable drugstore” — fetch rate | 67.1% | 67.0659% | Measured |
| Phrasing “recommend 5 and say why” — fetch rate | 73.3% | 73.2620% | Measured |
| Phrasing “best skincare brands under $30” — fetch rate | 84.9% | 84.8921% | Measured |
| Third-party pages in the reading list | 88.6% | 88.6182% | Measured |
| Own-brand pages in the reading list | 8.2% | 8.1589% | Measured |
| Forum/social pages in the reading list | 1.7% | 1.6495% | Measured |
| Reference pages in the reading list | 1.6% | 1.5734% | Measured |
| L'Oréal — its own site fetched | 22.8% | 22.7941% | Measured |
| L'Oréal — recommended | 3.2% | 3.1863% | Measured |
| CeraVe — recommended | 99.8% | 99.7549% | Measured |
| Big brands — own-site fetch rate | 50.9% | 50.9524% | Measured |
| Mid-tier brands — own-site fetch rate | 33.0% | 33.0078% | Measured |
| Claude — own-site fetch rate | 5.9% | 5.9419% | Measured |
| Brand recommendations analyzed | 1,444 | 1,444 | Measured |
| Queries per brand | 408 | 408 | Measured |
What this doesn't settle
- One category, one day, one leg — the registered rate is a finding for skincare on the OpenAI API on these dates, not a generalizable number across categories, engines, or time.
- Correlation is not cause — the data shows which pages were fetched alongside a recommendation, not why the recommendation was made. The path from fetch to name-check is observed, not mechanistic.
- Zero-retrieval name-checks have three live explanations (training memory, unlogged context, third-party authorship); this data cannot separate them, though the source mix favors the third.
- These queries ran against the OpenAI API with live web search — not the consumer ChatGPT product. The API has no personalisation, no conversation memory, and no geo-targeting.
Is your brand on the pages ChatGPT reads before it names you?
A diagnosis maps which third-party sources — editorial, clinical, retail — are shaping recommendations in your category, and whether your brand appears on them when the model assembles its answer. Not a score: the evidence, run twice.