1. Put the menu online
A QR code only holds a link, so the menu needs a home first. The best option is a page on your own website: it is easy to read on a phone and you can edit it at any time. If you only have a PDF, upload it to your site or to cloud storage and make sure the link opens without a login. A menu page on an ordering platform you already use works too.
Before printing anything, open the link on a phone over mobile data. The text should be readable without zooming, the prices should be current, and the page should load in a few seconds.
2. Use a dynamic code
This is the step most restaurants get wrong. A static code bakes the menu link into the print. The day you rename the PDF, move to a new website or switch ordering platforms, every code on every table breaks.
A dynamic code contains a short link on qrfun.app instead, which redirects to your menu. Change the destination in your dashboard and every printed code follows instantly: a seasonal menu, a separate lunch menu, a new PDF, with no reprinting. It also counts scans, so you can see how often the menu is opened and on which days.
Not sure which you need? Read static vs dynamic QR codes.
3. Print it where people look
- Tables: table tents, stickers or coasters with a code about 3 to 4 cm (1.5 in) wide.
- Window or door: for people deciding whether to come in, the code has to be read from further away, so make it much larger. A good rule is one tenth of the scanning distance; the print size guide has a table.
- Add a line of text. "Scan for our menu" gets far more scans than a code on its own.
- Protect it. Laminate the card or use a wipeable stand. Creased, wet or stained paper scans badly.
- Keep the contrast. A dark code on a light background, never on top of a photo.
The same table card can ask for feedback too: a Google review QR code on the bill or receipt sends happy guests straight to your review form.
4. Test with more than one phone
Print one card at its real size and scan it with an iPhone and an Android phone, from where a guest would sit, in the actual lighting of the room. Dim evening light and glossy laminate are the usual troublemakers.
Mistakes to avoid
- Linking to a file that asks for a login, or to a cloud-drive preview that is hard to use on a phone.
- Printing a static code that points to a link you do not control, such as a free trial of a menu builder.
- Getting rid of every paper menu. Keep a few for guests without a phone or data.
- Hiding a tiny code in the corner of the table card.
Set up your menu code in a couple of minutes. The free plan includes one dynamic code, which is all a single menu needs. Upgrade later if you want a code per location or the full analytics.