Your QR Code Points to a PDF. That's the Problem.
A PDF menu behind a QR code is unreadable on a phone and impossible to change once service starts. An HTML menu fixes both, and search engines can finally read what you serve.
Guestavo
7 min read
A guest sits down, scans the little card on the table, waits for a 4 MB file to download, and then spends the next thirty seconds pinching and dragging around a page designed for A4 paper. They find the starters. They lose the starters. They give up and ask the server what the fish is.
This happens in thousands of restaurants every night, and it is entirely avoidable. The QR code is not the problem. What sits behind it is.
A PDF was designed to be printed, not read on a phone
That is literally the format's job, and it does it well. A PDF locks a layout to fixed dimensions so it comes out of a printer looking the way the designer intended. Every one of those properties works against you on a 6-inch screen.
Text does not reflow, so the guest zooms. Once they zoom, they lose their place, because the visible area is now smaller than a business card. Tap targets do not exist. Two-column layouts, the standard for printed menus, are the worst offenders: the guest reads halfway down the left column, scrolls, and has no idea whether they are still in Mains or have wandered into Desserts.
Then there is the download itself. A designer's export with embedded fonts and a photo of your dining room can easily hit 5 MB. On patchy in-restaurant signal, that is a wait, and the guest is sitting there watching a spinner while their table companion has already picked a wine.
Accessibility is the part nobody mentions. Screen readers handle well-tagged PDFs adequately and untagged ones terribly, and almost every restaurant menu exported from InDesign or Canva is untagged. A guest with low vision cannot increase the text size, because the text size is baked into the file.
Open your own menu on your phone, on mobile data, standing outside your restaurant. Time how long it takes to answer: what is the cheapest vegetarian main, and does it contain nuts? If it takes more than fifteen seconds, your guests are having a worse night than they need to.
Google mostly cannot read it, and definitely cannot rank it
Search engines can index PDFs. That is technically true and practically useless for a menu.
What actually happens: the PDF gets treated as one flat document with no headings, no structured markup, and often no meaningful title beyond "menu-final-v3-PRINT.pdf". Google cannot tell that "Grilled sea bass, fennel, salsa verde, 24" is a dish with a price. It cannot pull individual items into search results. It cannot associate the menu with your opening hours, your location, or your booking link, because none of that context lives in the file.
Meanwhile the searches you want to win are all item-level and intent-heavy. "Gluten free pizza near me." "Vegan brunch Ljubljana." "Restaurants with a tasting menu in Graz." Those queries get matched against page text, headings, and structured data. A PDF supplies none of that in a form Google can work with.
There is also the schema problem. Google supports a Menu structured-data type that lets you describe sections, items, prices, and dietary information in machine-readable form. You cannot attach that to a PDF. On an HTML page, it is a block of JSON in the head, and it is the difference between "we have a website" and "search engines know what we serve."
AI assistants have made this worse, or better, depending on which side you are on. When someone asks a chatbot for a restaurant nearby that does a proper Sunday roast, the model is working from crawlable text. Restaurants whose menus are readable get mentioned. Restaurants whose menus are locked in a PDF do not exist to it.
Not sure where your menu stands? Our menu SEO checker looks at your menu page and reports what search engines can actually see: whether items are real text, whether prices and sections are marked up, and what is missing.
You cannot change it at 19:40 on a Friday
The kitchen runs out of the lamb. It is Friday, the room is full, and the menu says lamb.
With a PDF, fixing that means opening the design file, editing it, exporting, uploading it somewhere, and hoping the QR code still points at the right place. Nobody does this mid-service. What actually happens is the server tells forty tables in a row that the lamb is off, some guests get annoyed, and the menu stays wrong until someone gets around to it next Tuesday.
The same friction kills anything time-sensitive. Lunch specials that should appear at 11:30 and vanish at 15:00. A seasonal dish you want to push for two weeks. A price change on a supplier item that just jumped 30%. Every one of those becomes a small design job instead of a thirty-second edit, so most of them never happen, and your menu slowly drifts away from what your kitchen actually serves.
An HTML menu is a database with a nice front end. Mark the lamb unavailable, and it greys out or disappears on every phone in the room instantly. No re-export, no re-print, no new QR code.
What you get instead
Here is the practical difference, once the menu is a real web page.
- It reads properly on a phone. Text reflows to the screen, sections collapse and expand, and the guest can jump straight to Desserts without scrolling past everything else. That is the whole point of the exercise.
- Google sees dishes, not a document. Every item is text on a page, wrapped in headings, with schema markup describing prices and sections. Item-level searches can find you.
- Allergens live next to the dish. In the EU, the fourteen major allergens have to be declared, and a footnote on page four of a PDF is a poor way to do it. On a web page, allergens can sit on the item itself, and guests can filter to what they can safely eat. Verify the exact declaration requirements with your local food authority, since enforcement details vary by country.
- Changes happen in seconds. Sold out, price change, new special, seasonal swap. One edit, live everywhere.
There is a fifth thing that is harder to see: you learn what people look at. A web menu can tell you which dishes get viewed, which sections people abandon, and how long the average guest spends deciding. A PDF tells you nothing, ever.
None of this means abandoning QR codes. Guests are used to them and they work fine. Just point them at a page rather than a file, and give the same page a normal URL you can put on Google Business Profile, Instagram, and your booking confirmations.
The awkward middle ground
Plenty of restaurants have a website with a "Menu" page that contains a single embedded PDF viewer, or worse, a photograph of the printed menu. Both are the same problem in a nicer wrapper. If the words are inside an image or a file, they are not on your page, and everything above still applies.
The fix is not complicated and does not require rebuilding your site. Put the actual dish names, descriptions, and prices in the page as text. Keep the PDF around as a download for whoever wants to print it. The web version is the one that works, and it is the one that ranks.
The short version
A PDF menu behind a QR code was a reasonable panic response in 2020 and is a liability now. It frustrates the guest in front of you, hides you from the guest searching on their phone two streets away, and freezes your menu at whatever it said the last time someone opened the design file.
Move the menu to a real page. Same QR code, same table cards, much better night for everybody.
Keep reading
- Menus
Menu Pricing: Why the Layout Matters as Much as the Number
A price column running down the right-hand edge turns your menu into a spreadsheet. Small changes to how prices sit on the page shift what guests order, before you touch a single number.
- Marketing
The Guests You Already Have Are Cheaper Than the Ones You Don't
Winning back a guest who came twice and drifted costs a fraction of finding a new one. Most venues never try, because nobody is watching who stopped coming.
- Compliance
The 14 EU Allergens: What Restaurants Actually Have to Do
EU law requires allergen information on every dish you serve. Here is what the rule says, what counts as compliant, and where kitchens usually get caught out.