One page, one intent
The title names the topic and the jobs the page does for the reader. The H1 says the same thing. The URL is short, readable and never changes. All three tell a model what this page is before it reads a line of body copy.
The classic on-page checklist assumed a person scanning results and deciding what to click. This one assumes a language model deciding what to quote. The two want different things from the same HTML: liftable answers rather than clever introductions, tables rather than prose, attributed numbers rather than adjectives, and text the server sent rather than text a browser drew.
Twelve parts of a page, each one annotated on a worked example below.
A worked example in the middle, the notes in the margins. Everything in the sample is invented, including the figures; the points around it are not.
Title, meta and crawl elements
example.com/guides/hotel-booking-enginesGPTBotClaudeBotPerplexityBotOAI-SearchBotGoogle-ExtendedAllow: /Sample AuthorDirect booking leadUpdated 12 September 20269 min read
Key takeaways
A booking engine is the software that takes a reservation directly on the hotel website: it reads live availability and rates, holds the room, takes payment and writes the booking back to the property management system.
Cost is set per property and per room rather than per booking on most of the market. The table below is illustrative.
| Rooms | Entry | Mid-market | Enterprise |
|---|---|---|---|
| Up to 20 | EUR 49 | EUR 180 | - |
| 21 to 80 | EUR 215 | EUR 640 | EUR 1,100 |
| Over 80 | - | EUR 1,450 | EUR 2,400 |
Illustrative monthly figures. A sample page, not pricing advice.
3.1x
the direct-booking rate of properties that finished mobile checkout in three steps rather than five.
Illustrative figure. Sample page, not a real study.
Every roundup scores the same feature grid. None of them mentions that rate-parity clauses survive the switch, or that a new payment descriptor takes weeks to stop triggering chargebacks.
Frequently asked questions
The title names the topic and the jobs the page does for the reader. The H1 says the same thing. The URL is short, readable and never changes. All three tell a model what this page is before it reads a line of body copy.
GPTBot, ClaudeBot, PerplexityBot, OAI-SearchBot and Google-Extended each need an allow rule in robots.txt, and the content has to render on the server. Most AI crawlers do not run JavaScript, so anything drawn client-side is not there as far as they are concerned.
Open with four to six sentences that answer the query outright. Each one has to survive being lifted out of the page alone, which rules out "as mentioned above" and any pronoun pointing backwards.
An answer engine splits a single prompt into a fan of related queries before it retrieves anything. Give each one its own H2, phrased the way it would be asked: what it is, how it works, what it costs, how to choose.
Pricing belongs in a table with real headers. A sequence belongs in a numbered list. Self-contained rows parse cleanly and come back quoted; the same facts in a paragraph usually do not come back at all.
Retrieval pulls a passage, not a page. Lead each section with its answer and explain afterwards, so a paragraph that arrives without the one above it still makes sense.
Models cite what is concrete, attributed and checkable. One figure you produced, with the sample size, the period and the method attached, is the most linkable thing on the page.
A model already knows the definition and has read the other forty articles on the topic. What it cannot generate is your first-hand finding, your audit, the result that contradicts the consensus.
The format already matches how people prompt. Use the questions that actually arrive from sales calls and support tickets, in the words they arrive in, each answered in two sentences and marked up as FAQPage.
Article, FAQPage, Dataset for your own research, Organization for the publisher. Structured data restates in parseable form exactly what the visible copy already claims, and never anything it does not.
A named author with real credentials, a linked bio, one spelling of the brand everywhere it appears. Models resolve entities across the whole web, which makes off-page consistency an on-page job.
A visible last-updated date backed by dateModified, figures stamped with when they were measured, and facts that are genuinely current. A stale number is the quickest way to lose a citation you already had.
Read the page the way a retrieval system does rather than the way its author does. Most of what is wrong shows up in the first two steps.
View source rather than the inspector, or fetch the URL with curl. What is in that response is what a crawler that does not run JavaScript gets. Anything missing from it is missing, full stop.
Open /robots.txt and look for GPTBot, ClaudeBot, PerplexityBot, OAI-SearchBot and Google-Extended by name. A blanket allow covers them; a blanket disallow with a Googlebot exception does not.
Copy one from the middle of the page and read it with nothing around it. If it needs the paragraph above to make sense, a retrieval system cannot use it either.
Find the one figure on the page that nobody else could have published, and check that its sample size, period and method are next to it. If there is no such figure, that is the finding.
Run the page through a structured-data test and read what it asserts. Every claim in the JSON-LD has to appear in the visible text, and anything the text says that the markup omits is a free signal left on the table.
Checklists turn into scorecards, and scorecards turn into pages written for a machine that nobody wants to read.
The order the effort pays in is set out on the layer model: access first, then the shape of the answer, then the material worth quoting.
Asked often enough to belong on the page rather than in a reply.
Access. Allow the AI crawlers in robots.txt and render the content on the server. Most of them do not execute JavaScript, so a page that draws its copy client-side is empty as far as they are concerned, and nothing further you do to it matters.
Four to six sentences, written so any one of them can be lifted out on its own. That rules out openings that refer back to a previous paragraph, and pronouns whose subject is somewhere above.
No. Structured data restates what the visible copy already says in a form a parser can read, which removes ambiguity. It cannot add a claim the page does not make, and marking up content that is not on the page breaks Google’s structured-data policy.
An answer engine expands one prompt into a set of related sub-queries and retrieves against all of them. Covering the whole set on a single page, each with its own question-shaped H2, is what lets one URL satisfy the entire fan-out.
A model can already generate the definition and has read every other article on the topic. A figure you produced, with its sample size, period and method attached, is something it cannot get anywhere else, which is what a citation is for.
We audit the pages that already have demand, fix what blocks retrieval, and track which assistants start citing them.