AI readiness for restaurants and cafés

The menu is a PDF, the hours are in a footer image, and dinner is in two hours.

C3E3D1D2B2C2

The moment

Sofia, who runs a neighbourhood trattoria

Someone asks an assistant for a place nearby that can seat four tonight, has vegetarian mains and is open past ten.

What the agent needs: Hours, menu, dietary options, and whether a table can be booked.

What actually happens: The menu is a scanned PDF that changes weekly, the hours are baked into a header graphic, and the reservation link goes to a widget that renders nothing server-side. The assistant recommends the place across the street.

Which dimensions decide it, and why

AIScan grades five dimensions. These are the ones that carry the outcome for this kind of business.

Content

A restaurant is a set of facts that change often: hours, menu, dietary options, location. HTML menus with Menu and Restaurant structured data are the single highest-value fix in this category — a PDF is a wall.

Capabilities

Booking is the action being attempted. A server-rendered reservations page with a plain link an agent can hand back beats an iframe that only exists after hydration.

Discoverability

Hospitality queries are urgent and local. Robots rules that block assistant fetchers, or a sitemap missing the menu page, cost you the booking before the food is ever considered.

The checks that matter here

Fix guides: /docs/checks/content · /docs/checks/discoverability · /docs/platforms/wordpress

Most sites like this run on WordPress read the WordPress playbook for where each fix lives.

Questions we get asked

Our menu changes weekly. Is HTML realistic?
It is less work than exporting a PDF once you set it up as content rather than a document, and it is the version that gets quoted correctly.
Do dietary tags matter?
They are frequently the deciding filter — vegetarian, vegan, gluten-free. As text per dish they win queries a whole cuisine page cannot.
The booking platform owns reservations. What do we control?
The page around it: hours, capacity notes, a text phone number, and a plain link to the booking system. That is enough for an assistant to complete the handoff.
Are hours in an image really that common?
It is the most frequent single defect we see in hospitality, and it is the fastest to fix.
Should we add Restaurant structured data ourselves?
Yes — servesCuisine, priceRange, openingHoursSpecification and acceptsReservations cover almost every question being asked.
How do we check the menu page specifically?
Scan the menu URL and read check E3. If the dishes are not in the served HTML, neither is your kitchen.

Scan your site and see where you actually stand

Free, no account, about twenty seconds. The report names every failing check by ID, shows the evidence we found, and gives the fix for your platform — plus a hand-off prompt you can paste straight into Claude Code or Cursor.

Run a free scan npx aiscan-cli yoursite.com

Prefer to read first? Browse every check we run or the guide library.

Next in Food, travel & hospitalityAI readiness for hotels, B&Bs and short stays

Also covers: restaurant, cafe, coffee shop, bistro, pizzeria, takeaway, food truck, pub, bar, wine bar, bakery cafe, brunch spot, catering, ghost kitchen, deli, menu pdf, opening hours, table booking.