How to make a QR code for a restaurant menu that you can update daily
A step-by-step guide to putting your menu behind a QR code you can change without reprinting table talkers — including sizing, placement, and the mistakes that cost restaurants scans.
· 7 min read
Menu QR codes went from novelty to furniture in about two years. Most of them are done badly: a static code pointing at a PDF that was current last spring, printed too small, laminated to a table where nobody can angle a phone at it. Here is how to do it so the code stays useful for years.
Use a dynamic code, not a static one
Menus change. Prices change, specials change, whole sections disappear when a supplier falls through. If the code encodes your menu URL directly, every one of those changes means new table talkers. A dynamic code encodes a short link instead, so you repoint it and the tables stay exactly as they are.
Step by step
- Put your menu somewhere with a stable web address — a page on your own site is best, a hosted PDF is acceptable.
- Create a dynamic QR code pointing at that address and give it a name you will recognise later, like "Dining room tables".
- Download the SVG rather than the PNG. SVG is vector, so your printer can scale it to any size without softening the edges.
- Print a test at the exact final size, on the actual material, and scan it from a seated position with an older phone before you order hundreds.
- When the menu changes, edit the destination. The printed codes pick it up on the next scan.
Make the menu itself work on a phone
The most common failure is not the code — it is what the code opens. A PDF designed for A4 arrives on a phone as a wall of unreadable text that has to be pinched and dragged. Diners give up. A plain HTML page that reflows to the screen beats a beautiful PDF every time. If you must use a PDF, set it in a single column at large type.
Size and placement
- Print at least 2 x 2 cm (about 0.8 inches). On a table tent where people scan from a metre away, go to 3 cm.
- Keep a quiet margin of clear space around the pattern equal to about four modules — codes crowded by artwork fail to scan.
- Maintain strong contrast: dark pattern on a light background. Inverted codes and low-contrast brand colours are the second most common cause of failed scans.
- Avoid the middle of a glossy laminated surface where overhead lights reflect straight back into the camera.
- Add a short line of text — "Scan for our menu" — so people know what they are pointing at.
Use separate codes for separate places
Make one code for the dining room, one for the bar, one for the window, one for takeaway bags. They can all point at the same menu today. The reason to split them is measurement: once scans are coming in by code, you can see that the window code outperforms the table tents four to one, which tells you where to put the next print run.
Scheduling lunch and dinner
If your lunch and dinner menus differ, you have two options. Point one code at a single page with both menus on it, or use scheduling to switch the destination automatically at a set time each day. The first is simpler and usually better; the second is worth it when the menus are long enough that combining them makes the page unwieldy.
Always keep a paper fallback
Some diners cannot or will not scan a code — an old phone, a flat battery, poor eyesight, no data. Several jurisdictions also require a non-digital menu on request. Keep printed copies behind the bar. A QR menu should be the convenient path, not the only one.