Badly, and a photo not at all. "What do they have and what does it cost" is the question assistants get most, and they answer it from whatever they can read. When your menu is a PDF, the readable copy is on a delivery app, so the answer and the link point there.
A normal page on your own site with the items and prices as text. It can look exactly like the PDF; what matters is that the words are in the HTML, not in an image or an attachment. Keep the PDF as a download for people who like it. On the Lisbon index, 14 October 2026, 133 of 295 reachable restaurant sites had the menu as a page, 39 as a PDF and 107 had none at all.
| Where your site is built | Where the setting lives, October 2026 |
|---|---|
| WordPress | A page with headings per section and a two-column list, or a restaurant menu plugin (most render HTML and add schema.org Menu markup). Avoid plugins that embed the PDF in a viewer: that is still a PDF. |
| Wix | The Restaurants Menus app renders items and prices as text and lets you edit them in the dashboard. |
| Squarespace | The Menu block; sections and prices are typed in, and the page is plain HTML. |
| Shopify | Products are already pages. For a food menu, a page with the list, or a menu app that writes HTML. |
| Webflow, GoDaddy, Jimdo, Duda | A page with the list. If you paste from the PDF, check that prices came through as text. |
| Any builder | Link the menu from the homepage with the word Menu, Carta, Carte or Speisekarte in the link, so crawlers and the scanner find it. |
Dashboards move things around. If a name here does not match, search the dashboard for the word in bold.
Add schema.org Menu markup, or at least hasMenu in your business's structured data pointing at the menu page. Assistants then know where the menu is without guessing. The structured data guide has the block.
Want to see what the scanner finds for your menu? Run the free scanner on your address: the report names each crawler that was refused, what it found for the menu, the structured data and the booking path, and what to fix first. Rescans are free.
Updated 2026-10-14. Dashboard names are as of that date.