How Restaurants Can Use QR Codes for Menus (Free, No App Needed)

Restaurant table tent with a scannable QR code for the digital menu

The QR menu is back, but the bad version of it is gone. Diners don't want to download an app to read what's on offer, they don't want to make an account before they can see the prices, and they really don't want a code that takes them to a landing page asking for their email. They want to point a phone, get a menu, and order dinner.

The good news is that this is exactly what a basic QR menu does when you set it up correctly. The whole flow - from "we have a PDF menu" to "there's a printed code on every table" - is a free, half-hour job in 2026. This guide walks you through the full setup using whew.cc, including the one decision (static vs dynamic) that determines whether you'll be reprinting table tents every time you change a price.

What you'll need

The full kit for a basic QR menu:

  • Your menu in a web-readable format. A Google Doc set to "anyone with the link can view," a PDF uploaded to a free file host, or a simple page on your existing site. We'll talk about each option below.
  • A QR code generator. Free, no account required. We'll use whew.cc; the workflow is the same elsewhere.
  • A way to print the code. A home printer for table tents, or a print shop for laminated table cards. Either works.

That's it. No app development, no per-table monthly fee, no proprietary platform.

Step 1 - Get your menu online (the part most guides skip)

A QR code is just a link. Before you can put a link on a table, you need a place for it to point. You've got three good options, in increasing order of effort:

  1. Google Doc or Google Drive PDF. Open your menu in Google Docs (or upload your PDF to Drive), click Share, set permissions to "Anyone with the link can view," copy the link. Cost: $0. Maintenance: edit the doc, your menu instantly updates everywhere.
  2. A free file host like Dropbox or iCloud. Upload the PDF, right-click for a shareable link. Same idea, slightly less friendly URL.
  3. A simple page on your existing website. If you have a website, ask your developer (or your existing builder - Squarespace, Wix, WordPress all do this) to add a /menu page. This is the most professional option because the URL becomes yourbistro.com/menu and your branding stays consistent.

Pick one and grab the URL. We'll use yourbistro.com/menu as the example for the rest of this guide, but anything works.

Step 2 - Generate the QR code on whew.cc

Go to whew.cc. Paste your menu URL into the input box and click Generate QR code. A modal opens with a live preview of the code and customization controls.

whew.cc QR generator showing a real QR code for a menu URL

At this point you've got a choice to make - and it matters more than it sounds.

Step 3 - Static or Dynamic? Pick the right one before printing

The Static / Dynamic tabs at the top of the modal toggle between two fundamentally different ways the QR code works. They look identical on the table; the difference is what happens later when something changes.

Side-by-side comparison of static vs dynamic QR codes for restaurant menus

The honest summary:

  • Static encodes the menu URL directly in the QR pattern. The code works forever and doesn't depend on any service. But: if you ever change the menu URL (you switch from a Google Doc to your website, you rebrand, your hosting provider changes), every printed table tent stops pointing to the right place. You'd have to reprint.
  • Dynamic encodes a short link that redirects to the menu. The same printed code can be re-pointed to a different URL at any time, with no reprinting. The trade-off: dynamic codes depend on the short-link service staying alive and your link not expiring. On whew.cc, anonymous dynamic codes expire after 2 weeks, free-account ones hold for 90 days, and paid-plan ones don't expire.

The decision boils down to: how often does your menu URL change?

  • Never or rarely: static is the safe, free, forever option. Use it if your menu lives at a permanent URL like yourbistro.com/menu and that's not changing.
  • Often: dynamic, and a paid plan is worth the small cost. Seasonal menus, lunch vs dinner switching, daily specials, holiday menus - if you'll change the destination more than once or twice a year, dynamic pays for itself the first time you don't have to reprint 60 table tents.
Step 4 - Style the code (optional but recommended)

The Style tab on whew.cc lets you change a few things that meaningfully affect how a printed QR looks:

  • Data cell shape. Square (the default, scans most reliably) or Circle (softer look, scans almost as well).
  • Finder pattern shape. The three big corner squares. You can keep them square or round their corners for a friendlier look.
  • Color. Anywhere along the line between "black" and "your brand color" works, as long as you keep contrast high. Avoid yellows, oranges, and light grays against a white background - the camera needs a clear dark-on-light contrast.

If you have a square logo (most restaurants do - it's the one on your sign), click the Logo tab and upload it. The QR still scans with a logo over the center at up to about 22% of the code's width. We have a full walkthrough in our guide to adding a logo to a QR code, including the readability check you should run before printing.

Step 5 - Download and lay out the table tent

Click SVG for a sharp vector file (best for any printing). Click PNG for raster (fine for digital-only use).

For the table tent itself, the recipe is short:

  • Tent size: 4 × 6 inches works well. Tall enough to be visible from across a crowded room, short enough that it doesn't block sightlines.
  • QR size: at least 2 inches (5 cm) square. Smaller and phones start to struggle at typical table distances.
  • Call to action: two short lines do the work - "Scan for menu" at the top, "No app needed - just point your camera" below the code. Diners hesitate to scan if they think they'll be asked to install something.
  • Optional, but adds polish: your restaurant's name and one piece of supporting information (Wi-Fi password is a popular bonus on the back of the tent).
Step 6 - Test it before you print 60 copies

Before you send the file to the printer, run it through three scanners:

  1. Your phone's native camera app.
  2. A friend's phone running the other operating system (iOS if you're on Android, or vice versa).
  3. An old phone if you have one around. Cameras from 2020-2021 are less forgiving and represent some of your customers.

Scan from typical table-distance (40-60 cm), not nose-on-the-code. If any scanner hesitates, increase the QR size or improve contrast before printing. After printing, scan one printed copy under real restaurant lighting before placing the whole batch on tables.

Frequently asked: "do diners actually scan these?"

They do, mostly. The post-COVID skepticism around QR menus has cooled, and the data from restaurant operators is consistent: diners scan them, they prefer not having to wait for a paper menu, and the conversion to "I'm reading the menu" is high. The friction points that hurt adoption are very specific and easy to avoid:

  • Sign-up walls. If your menu page asks for an email before showing food, scans turn into bounces. Don't gate the menu.
  • Slow-loading PDFs. A 50 MB PDF that takes 12 seconds to open on a phone is worse than no QR at all. Compress, or use a real web page.
  • Wi-Fi assumptions. Not every diner has data. Offering free Wi-Fi (and clearly labeling it) bumps scan rates significantly.
  • Tiny printed codes. A 1-inch QR on a busy laminated tabletop card is hard to scan from a sitting position. Bigger codes work much better.
Bonus: tracking what's working

If you use a dynamic QR code, you get something genuinely useful: scan analytics. You'll see how many people scan per day, what time of day, on which device. Patterns you can act on:

  • Lunch scan volumes that don't translate to lunch sales → consider a separate, simpler lunch menu URL.
  • iPhone-heavy scans on weekend evenings → if your menu has photos, make sure they look good on iOS.
  • Sudden drop in scans → your menu URL may have broken; a quick test scan and a redirect update fixes it without anyone re-printing.

More on this in our guide to tracking QR code analytics.

Generate your menu QR in 30 seconds

Free, no sign-up. Static or dynamic. SVG and PNG download. Add your restaurant's logo if you'd like.

whew.cc QR Generator

Frequently Asked Questions (FAQ)

No - and this is the single most important thing to communicate. Every modern smartphone (iOS 11+ and Android 9+) reads QR codes natively in the camera app. Diners just point their camera and tap the notification. The "no app needed" line on your table tent is doing real work.

Yes, but the better setup is a web page. PDFs work fine for occasional viewing but they're slow to load on phones, hard to zoom, and look the same on every device whether or not that device is good for PDFs. A simple web page (even a free Google Doc set to "anyone with link") loads instantly and reflows for the phone's screen. If you must use a PDF, host it somewhere that delivers it fast (Google Drive, Dropbox, your own CDN).

For a static QR menu: $0 in software, plus whatever you pay to print the table tents (typically $5-25 for a small batch at any local print shop). There's no monthly fee, no per-scan cost, and the same code works for the lifetime of that URL. For a dynamic QR menu with scan tracking, whew.cc's free tier covers light use; a paid plan removes the link-expiry trade-off and is currently a few dollars a month - cheaper than reprinting table tents once.

Two cases. If the menu content changes but the URL stays the same (you edit the Google Doc, you change the prices on your /menu page) - yes, automatically. The QR keeps pointing to the same URL; the URL now shows the updated menu. If the menu URL changes - that depends on whether you used static or dynamic. Static: you have to reprint the QR. Dynamic: you can re-point the existing QR to a new URL without reprinting anything.

For an indoor restaurant table tent, 2 inches (5 cm) square is the smallest that scans reliably from a comfortable sitting distance. For a window decal or wall poster meant to be scanned while standing 2-3 meters away, scale up proportionally - a rough rule of thumb is "QR size in cm = scanning distance in meters × 2."

Have a small stack of paper menus behind the host stand or bar. Even with the best QR setup, some diners can't or won't scan (older phones, accessibility needs, dead batteries, dietary discussions that need pages flipped). A clear "ask us for a paper menu" line on the tent reduces friction. The QR menu is a default, not a replacement.

Same code on every table is the right default. One menu, one code, fewer things to manage. The only reason to print different codes per table is if you're using table-specific ordering software (where the URL encodes the table number) - which is a different system from a basic QR menu. For a "scan to read the menu" setup, one code is plenty.

Want to compare your options? Check our comparison of free QR code generators, or read about dynamic QR codes and analytics if you want to dig deeper into scan tracking.