Dataset · version 1.1 · 2026-09-09
Amsterdam Restaurant Agent-Ready Booking Index 2026: per-venue results
Anonymised per-venue results for 200 randomly sampled Amsterdam restaurants: whether a website was listed and reachable, whether an agent driving a browser found a booking path, could read the form and reached the final booking step (July 2026), whether the site published an llms.txt or a callable booking interface (July and September 2026), and which booking system the venue used where one was identified. No venue names, URLs or addresses.
The data behind The Amsterdam Restaurant Agent-Ready Booking Index 2026, collected on 21 and 22 July 2026 and re-checked for machine-readable files on 6 September 2026. Method: AI Bookability Check v1.0 of 21 Jul 2026.
Recount checks
These are the figures in the published study. Count the file and you should get exactly these. If you do not, write to us: either the file or the study is wrong, and we will say which.
200
rows, one per sampled restaurant
166
had a website listed in Google Places
163
websites reachable in the July run
79
booking path found by the agent
32
reservation form readable by the agent
16
agent reached the final booking step
0
callable booking interface, July and September
9
published an llms.txt in July
34
published an llms.txt in September (of 165 re-checked)
43
venues on a named booking system, across six systems
Columns
One row per sampled restaurant. Suffixes give the measurement date: _2026_07 for the July run, _2026_09 for the September re-check. An empty cell means the check did not apply to that row, usually because there was no reachable website.
| Column | Values | Meaning |
|---|---|---|
| row_id | integer 1..200 | Position in the seeded random sample. Stable across versions; not a ranking. |
| booking_system_2026_07 | name or empty | The reservation system serving the venue's booking path in July, where one could be identified: zenchef, formitable, guestplan, thefork, sevenrooms, quandoo. Empty means no system was identified, not that the venue took no bookings. Systems are products and are named; venues never are. |
| website_listed | true / false | Google Places listed a website for the venue at sampling time (21 July 2026). |
| website_reachable_2026_07 | true / false | The listed website answered during the July run. False when no site was listed or the domain did not resolve. |
| booking_path_found_2026_07 | true / false | An agent driving a real browser found a public path to a table reservation from the venue's own site. |
| form_readable_by_agent_2026_07 | true / false / partial | The agent could read the reservation form's date, time and party-size fields. Partial: some fields readable, or a form that was not a table reservation. |
| final_status_2026_07 | category | Adjudicated outcome: agent_reaches_final_step, no_usable_online_path, blocked_by_antibot, not_a_table_booking. Where the two engines disagreed, the row was reviewed by hand. |
| antibot_encountered_2026_07 | true / false | A CAPTCHA, device check or other anti-bot wall stood between the agent and the booking flow. |
| engines_agreed | true / false | The two independent measurement engines returned the same status for this row (180 of 200 did). |
| manual_review | true / false | The row went to human adjudication because the engines disagreed. |
| callable_booking_interface_2026_07 | true / false / empty | The site published a booking interface an assistant could call directly (API, agent protocol, machine-readable booking endpoint) in July. Empty when the site was not reachable. |
| llms_txt_2026_07 | true / false / empty | The site served /llms.txt in July. Empty when the site was not reachable. |
| callable_booking_interface_2026_09 | true / false / empty | Same check, re-run on 6 September 2026. Empty for the 35 rows not re-checked (no reachable site). |
| llms_txt_2026_09 | true / false / empty | The site served /llms.txt on 6 September 2026. |
New in version 1.1
Version 1.1 adds booking_system_2026_07: the reservation system serving each venue’s booking path in July, where one could be identified. Forty-three of the 200 ran on a named system, across six systems. The rest either used a form of their own or took bookings by phone, email or message.
Systems are named because they are products, and because the central finding cannot be checked without them: not one of the six exposed a booking interface an assistant could call. Venues are never named. That distinction is the whole rule, and the build script enforces the finding, failing if a named system ever turns out to have been callable.
What is not in the file, and why
- Venue names, addresses, URLs and map identifiers. The study publishes distributions, not league tables. A business in the sample can request its own row privately at hello@g-lab.studio.
- The September browser re-run. The September pass in the file is the machine-readable-files check (llms.txt, callable interface) on the same sample. Per-row browser outcomes for September are not included in version 1.1.
- Anything the agent submitted. Nothing. The agent stops at the step where only the guest’s own details remain.
How to cite this dataset
G-Lab Research (2026). Amsterdam Restaurant Agent-Ready Booking Index 2026: per-venue results (Version 1.1) [Data set]. https://g-lab.studio/research/datasets/amsterdam-2026
Licence: CC BY 4.0. Use it, recount it, build on it; keep the attribution and the version. Other formats and the rules for quoting figures are on how to cite.