What Is Really Under the Hood of ChatGPT? Observations for one query: “Where Can I Buy Blood Work Tests in London Today?”
In short: We captured the full retrieval trace of a single commercial ChatGPT query. One search returned 36 URLs. Fourteen reached the sources panel, four were cited, and none were opened. The businesses that made the answer were not the best-rated – they were the ones open at the right time, in the right postcode.
Research note: this is a single instrumented query – one vertical, one city, one model, one plan tier, captured August 2026. It is a case study. Where a number comes from the trace it is reported exactly; where we draw a conclusion, we say so. Section 5 sets out what this method cannot tell you.
1. What Happened?
We asked ChatGPT a straightforward commercial question – the kind a real customer asks with a wallet in hand:
where can I buy blood work tests in London today?
Then we captured what happened underneath: the search it issued, every URL it retrieved, which it promoted, which it cited, and which it actually opened.
The setup: GPT-5-6 on the Instant path, free plan. Four seconds of thinking. The turn was classified internally as a local use case. A map widget rendered; no product, image or news carousel. Browsing was handled by a single tool call.

What came back to the user was a well-organised answer: six named clinics with addresses and today’s opening hours, a “fastest results” section naming two more, a recommendation of two specific locations, and an offer to find the cheapest option if the user named the test they wanted. Genuinely useful – and exactly the kind of answer that ends the customer journey without a website visit.
What happened underneath is the interesting part.
The retrieval funnel:
| Stage | Count | Conversion |
|---|---|---|
| Searches issued | 1 | — |
| URLs returned by that search | 36 | — |
| Unique domains | 22 | — |
| Reached the sources side panel | 14 | 38.9% of retrieved |
| Promoted to the top section | 4 | 28.6% of panel |
| Became the lead source of a citation | 4 | 100% of promoted |
| Opened and read | 0 | 0% |
| Never left “More” | 10 | 71.4% of panel |
Of 36 URLs retrieved, four were cited – an 11.1% end-to-end citation rate. Of 22 domains, four earned a citation: 18.2%.
Four citations. Zero pages opened. Let that sink in for a second.
2. Why Does It Matter?
Finding 1: It cited four sources without opening any of them
This is the finding that should reorganise your priorities.
The model produced an answer with four footnoted citations, and the trace records zero pages opened and read. It worked from search-result data, structured business entity records, and map data – not from the content of anyone’s website.

Consider what that means for the standard advice. “Write comprehensive content so AI can understand your expertise” assumes the AI arrives at your page. In this trace it never did. What it saw of each business was the indexed representation in search results, the entity record, and the map data. That was enough to name them, describe them, rank them and recommend them.
The practical inversion: for this class of query, your snippet-level representation matters more than your page content. Title, description, indexed summary and – above all – structured business data are doing the work your carefully written landing page was supposed to do.
Finding 2: One search, and it used words the user never said
The entire answer came from a single search, and the query was not the user’s:
London blood test walk in today private blood tests London same day
The user typed a natural-language question. The model synthesised a keyword-style search with two phrasings and introducing four terms absent from the original: walk in, private, same day, and the reframing of buy as private.
There are two consequences.
First, “query fan-out” on the fast path can mean exactly one query, so the assumption that AI surfaces cast a wide net is not safe.
Second: you need visibility for the vocabulary the model invents, not only the vocabulary your customers use. If your page says “phlebotomy appointments” while the synthesised query says “walk in same day private blood test”, you are optimised for a question nobody asked the index.
Finding 3: Promotion to the top section was a perfect predictor of citation
The trace records top-only: 0 – meaning not a single URL was promoted to the top section without also becoming a lead citation. The relationship was binary. There is no partial credit: a URL either made the top four and was cited, or it sat in “More” and did nothing.
Split by result nature, the picture sharpens further:
| Result nature | In panel | Promoted to top | Lead citation | Promotion rate |
|---|---|---|---|---|
| Web search | 9 | 4 | 4 | 44.4% |
| News | 5 | 0 | 0 | 0% |
Every citation came from the web search channel. News contributed nothing – despite news accounting for 22 of the retrieved URLs and 55% of the type distribution. For this query class, news retrieval was pure overhead.
Finding 4: Opening hours beat ratings and reviews
This is the finding with the clearest commercial instruction, and the data supports it more strongly than a couple of anecdotes would.
Fourteen businesses appeared in the map data. Six were named in the main answer.

Included in the answer:
| Business | Rating | Reviews | Today’s hours | Window |
|---|---|---|---|---|
| Blood Test London | – | – | 07:00–21:00 | 14h |
| Blood Tests London | 4.8 | 213 | 07:00–19:00 | 12h |
| Blood London | 4.2 | 5 | 09:00–18:00 | 9h |
| Clinilabs | 4.9 | 301 | 08:00–18:00 | 10h |
| One Day Tests (Windmill St) | 5.0 | 6 | 07:45–16:00 | 8.25h |
| Private Blood Tests London | 5.0 | 4 | 09:00–18:00 | 9h |
Present in the map data, absent from the answer:
| Business | Rating | Reviews |
|---|---|---|
| City Walk-in Clinic | 4.8 | 441 |
| London Health Company Laboratory | 4.7 | 532 |
| One Day Tests (Chiswick) | 4.9 | 97 |
| One Day Tests (South Kensington) | 4.9 | 102 |
| Samedaycoronavirustests | 4.8 | 29 |
| London Medical Laboratory – Nine Elms | 3.2 | 277 |
| Metis Diagnostics | 5.0 | 13 |
Run the arithmetic and review count has no discriminatory power at all:
| Metric | Named in answer | Not named |
|---|---|---|
| Mean review count | 211.5 | 213.0 |
| Median review count | 109.5 | 102.0 |
| Mean rating | 4.78 | 4.61 |
| Mean rating excluding the 3.2 outlier | 4.78 | 4.85 |
Mean reviews for included businesses: 211.5.
For excluded: 213.0.
A difference of 1.5 reviews across fourteen businesses. Strip the single low-rated outlier and the excluded group actually has the higher average rating.
The ordering is more damning still. The two businesses rated 5.0 were placed fifth and sixth. The business rated 4.2 – with five reviews — was placed third. The answer’s sequence tracks availability window, not reputation:
| Position | Business | Window | Rating |
|---|---|---|---|
| 1 | Blood Test London | 14h | – |
| 2 | Blood Tests London | 12h | 4.8 |
| 3 | Blood London | 9h | 4.2 |
| 4 | Clinilabs | 10h | 4.9 |
| 5 | One Day Tests | 8.25h | 5.0 |
| 6 | Private Blood Tests London | 9h | 5.0 |
The user said “today”. The model cited by who is actually open, and for how long – then used reputation, at most, as a tiebreaker. Review count, the metric local SEO has optimised for over a decade, did not drive selection here.
Finding 5: A natural experiment inside the data – centrality decided it
The dataset contains a near-perfect controlled comparison, and it is the most useful thing in the whole trace.
One Day Tests appears three times in the map data – same brand, same category, same service, three London locations:
| Location | Postcode | Rating | Reviews | Named in answer? |
|---|---|---|---|---|
| Windmill Street, Fitzrovia | W1T | 5.0 | 6 | Yes |
| South Kensington | SW7 | 4.9 | 102 | No |
| Chiswick | W4 | 4.9 | 97 | No |
The location with the fewest reviews by a factor of sixteen was the one selected. The variable that separates it is postcode. W1T is central; W4 is not.
Look at the wider pattern. Named businesses cluster in W1 – W1H, W1G, W1W, W1T, plus W1G for the fastest-results mention. Excluded businesses sit in EC2N, E1, W4 and SW8. The model’s own closing recommendation reasons explicitly from central London and names two W1 locations.

For multi-location businesses this is the operative finding.
Your outlying branches may be invisible for city-level “today” queries regardless of how well reviewed they are. Winning those queries means having a central location, or accepting that you compete on a different query set entirely.
Finding 6: There are two routes into the answer, and one leaves a fingerprint
Not every named business came through the map. DocTap was cited and recommended but does not appear in the map data at all – it entered purely through the web search channel with a category page, /blood-tests. Harley Street Health Centre came through both: present in the map with the highest review count in the entire set (740), and cited with a deep page, /blood-tests/full-blood-profile.
So there are two doors: the entity door and the web door. Businesses that walk through both get named twice, in two different registers.
And one URL in the trace proves where the entity door leads. The Clinilabs URL retrieved was:
https://www.clinilabs.co.uk/&utm_content=clinilabs-gbp-organic
Two things are visible in that string. The UTM tag clinilabs-gbp-organic identifies it as the organic link from their Google Business Profile – this URL was harvested from the profile’s website field, not from a crawl of the open web. That is direct evidence for Finding 1: the entity record was a primary retrieval source.
The second thing is a mistake. The URL is malformed – /&utm_content= rather than /?utm_content=, missing the question mark that starts a query string. A typo in a business profile website field propagated verbatim into an AI retrieval layer, and the business was never named in the answer.
Check your business profile website field today. Whatever is in it, including its errors, is what gets retrieved.
Finding 7: Entity records outnumbered web pages as inputs
The trace records what kinds of reference the answer was built from:
| Content reference type | Count |
|---|---|
| Entity | 6 |
| Grouped webpages | 4 |
| URL | 2 |
| Map | 1 |
| Sources footnote | 1 |
Entity references were the single largest input, outnumbering grouped webpage references by half again. Higher up, the reference types resolve to just two: business (1) and search (1).
Your Google Business Profile is not supporting material for this kind of query. It is the primary material.
Finding 8: A third of the panel was irrelevant (to some extent)
Ten of the 14 sidebar URLs never surfaced. More striking is what was among them.
Alongside the London clinics sat an FBI video page about a director’s farewell, a Marshall Project investigation into Ohio prison overdose deaths, a Yahoo Health article about a cardiac biomarker, and a Times luxury piece about “human MOTs”.
Roughly a third of the retrieved panel had nothing to do with buying a blood test in London. Two takeaways. Being in the sources panel is not a visibility win – 71.4% of it never reaches the user. And retrieval noise is substantial, which means panel presence is a poor proxy for anything you would want to report on.
Finding 9: One business ran the pattern properly
One domain appeared four times, across citations, the “More” panel and news: onedaytests.com – more URLs than any other domain in the trace, with the second-placed domain managing two.
Its URL structure is the tell:
/products/book-your-blood-test-chiswick/products/book-your-blood-test-london-city/products/book-your-blood-test-south-kensington
A separate bookable page per location, each named for the location, plus a distinct business profile for each site. It took citation slot [1] – with its homepage.
That last detail matters. Three of the four cited URLs were homepages or top-level category pages; only Harley Street Health Centre earned a citation with a deep page. Depth did not win citations. Breadth of location coverage did.
3. Who Is Affected?
- Multi-location healthcare and diagnostics.
Directly. Clinics, labs, testing services, dental and veterinary practices. High “today” intent, strong map dependence, and a customer who wants an appointment rather than an article.
- Any multi-location business with outlying branches.
The One Day Tests result should worry you. Three locations, one named, and the named one had the fewest reviews. If your strongest-performing branch is not your most central, city-level queries may never surface it.
- Any business with an “open now” purchase.
Walk-in services, urgent trades, pharmacies, garages, salons, repair services. If the customer’s real question is “can you help me today”, availability data is your ranking signal.
- Teams optimising for review volume.
Reviews plainly still matter for map inclusion and for conversion. In this trace they had no measurable effect on which businesses were named. Mean review counts for included and excluded businesses differed by 1.5.
- PR teams buying coverage for transactional intent.
News contributed zero citations from five panel appearances. Coverage has other justifications; appearing in this answer was not one of them.
4. What Should Businesses Do?
Sequenced by return on effort, with the owning team named.
Step 1 – Treat your business profile as ranking infrastructure (Marketing / Ops — one week)
Entity records were the largest single input to this answer.
- Hours accurate to the day, including holiday and exception hours. This is the ranking signal in this trace, and the one most commonly stale.
- Extend and publish your real availability. The business placed first was open 07:00–21:00 — the widest window in the set. If you genuinely open early or late and have not published it, you are invisible for “today” queries at those hours.
- Check the website field character by character. A malformed URL in the Clinilabs profile propagated straight into retrieval. Whatever is in that field is what gets used.
- One profile per physical location, with categories set precisely. The map data distinguishes “Blood testing service” from “Medical laboratory”, “Walk-in clinic” and “General practitioner” — category choice determines which query set you are eligible for.
- Reconcile profile hours against site hours. Where they disagree, an assistant may pick either, and you cannot correct it afterwards.
Step 2 – Build location-level bookable pages (Development / Content — two to four weeks)
Copy the pattern that took citation slot [1].
- One page per location, with the location in the URL slug.
- Bookable or actionable on the page — not a directory entry that links onward.
- Hours in page text, not only in a widget an assistant cannot reach.
- Address, nearest transport and service area in plain text.
- Turnaround time and same-day availability stated explicitly where true.
Then implement LocalBusiness or MedicalBusiness structured data on each, with openingHoursSpecification including exception dates, plus address, geo, areaServed and hasOfferCatalog. Keep this in sync with the business profile programmatically where possible — drift between the two is the failure mode.
Step 3 – Optimise the snippet, because that is what gets read (Content — two weeks)
If pages are not opened, the indexed representation carries the answer.
- Title tag must contain location, service and the availability claim. “Same-day blood tests, Wimpole Street — open 07:00–19:00” outperforms “Blood Tests | Company Name”.
- Meta description should read as the answer, not as marketing. Hours, turnaround, location.
- First 150 words self-contained and factual. Assume they are all that will ever be seen.
- Decisive facts in text: opening hours, turnaround, walk-in policy, price range.
Step 4 – Own the model’s vocabulary, not just the customer’s (Content — ongoing)
Build the terms the model reaches for into your pages naturally:
- Availability: walk-in, same day, today, open now, no appointment needed, late opening
- Commercial framing: private, pay-as-you-go, self-pay, book online, prices from
- Turnaround: results in 24 hours, same-day results, next-day
Where your tooling exposes the synthesised query, read it. That string is keyword research nobody else is collecting.
Step 5 – Rebalance measurement (Marketing — one week)
- Track map inclusion and answer inclusion separately. Different outcomes, different causes.
- Stop counting sources-panel appearances as wins. 71.4% never surfaced, and a third of the panel was irrelevant.
- Add a quarterly hours audit with a named owner.
- Run your top ten commercial queries through AI surfaces monthly and record which competitors appear – and what their opening hours say.
5. What We’re Watching Next
- Whether the reasoning models behave differently.
This trace is the Instant path on a free plan: one search, four seconds, zero pages opened. A reasoning model with more budget may fan out further and open pages. If so, “which model your customer is on” becomes a visibility variable you cannot control. We intend to run the same query across model tiers and publish the comparison.
- Whether zero-open behaviour holds across verticals.
Local intent with strong entity data is the case most likely to be answerable without opening anything. Research and comparison queries may look entirely different. Do not generalise this finding beyond queries that render a map.
- Whether centrality bias is structural or incidental.
The One Day Tests result is suggestive but it is one brand in one city. If it replicates, it has significant implications for how multi-location businesses allocate local marketing budget.
- Whether availability data becomes a broader ranking signal.
If opening hours can outrank 441 reviews for a “today” query, the next step is live inventory, appointment slots and real-time capacity. Businesses with clean structured availability will be positioned for it.
What this study cannot tell you
One query, one vertical, one city, one model, one plan tier, one moment. The findings are directional and should be treated as hypotheses to test in your own category.
Three specific limits worth stating. We cannot distinguish between “reviews do not matter” and “reviews determined map inclusion but not answer selection” – the second is more likely and considerably more useful. We cannot separate centrality from opening hours as causes, since central locations in this set also tended to open longer. And the trace’s own counts are not perfectly consistent: unique URLs are reported as 36 in one summary and 26 in the domain-diversity calculation, with the type breakdown totalling 40 items. We have used the figures as reported and flagged the discrepancy rather than silently reconciling it.
The method, however, replicates easily. Any team can run their own commercial queries and record which sources surface, which get cited, and which get opened. That is the research most brands should be doing and almost none are.
About Szymaniak Digital
Szymaniak Digital is an enterprise AI SEO consultancy working with brands on visibility across classical search and AI-mediated discovery.
Most AI visibility advice is inference from finished answers. Instrumenting the retrieval itself produces different conclusions – sometimes uncomfortable ones, like discovering that the long-form content everyone agreed to invest in was never opened, while a typo in a business profile decided whether a clinic appeared at all.
If you want your commercial queries instrumented and your entity data rebuilt around what actually gets retrieved, that is work we do.
