All posts
QR menuMobile UX

QR Code Menus: How to Make One That Doesn't Look Like a PDF

May 15, 20268 min readBy The Ordify Store Builder Team

Look. Most QR code menus are a PDF. You scan, you wait two seconds, a Google Drive viewer loads, you pinch-zoom into a font sized for an A3 print, you scroll sideways to read the prices, you give up, you put your phone down, you ask the server.

That's not a QR menu. That's a digitized photo of a paper menu.

This post is about making a QR menu that's actually built for the phone— one people can read, search, and order from without thinking about it. We'll cover what to avoid, what to do instead, and how to generate the QR so it stays scannable for years.

Why PDF menus fail

It's not the QR's fault. The QR works perfectly. The failure is what's on the other side of it.

A PDF menu fails for four reasons. Each one alone is a problem; combined, they're fatal:

  1. It's not responsive. A PDF is a fixed canvas. On a phone, you pinch-zoom to read a single column, then sideways-scroll to read prices, then back to read the next item. By item three the customer has lost the will to live.
  2. It's a separate page, not an order channel. The customer reads it, then has to flag down a server or type the order into WhatsApp by hand. The friction defeats the point.
  3. It's stale.Whoever made the PDF doesn't work there anymore. Prices have changed twice since. The Wi-Fi password section still says “summer2023”.
  4. It's slow.Google Drive's PDF viewer takes 4-6 seconds on a typical 4G phone outside Wi-Fi range. That's the whole attention budget gone.

The fix isn't a better PDF. It's a different kind of page.

What a good QR menu looks like

A good QR menu loads in under two seconds, reads like an app, and has an order button at the bottom. The customer should never need to pinch, sideways-scroll, or download anything.

The non-negotiables:

  • Mobile-first layout. Single-column, big tap targets, real product images, prices visible without scrolling sideways.
  • Search and categories.If your menu has more than 20 items, a customer should be able to type “vegan” and find the three things they can order.
  • Variants and add-ons.Sizes, milks, spice levels — captured as taps, not as “please tell us your preference in the order notes.”
  • One-tap ordering.The order shouldn't require the customer to switch apps, copy text, or remember anything. They tap “order,” their cart turns into a WhatsApp message, they hit send.
  • An update channel that's yours, not your designer's. Prices change. Items run out. The person who owns the menu has to be able to update it from their phone in 30 seconds.

If you're looking at your current QR menu and it fails three of these, the QR is fine — the menu behind it is the problem.

The two real options

You have two reasonable paths. They cost about the same in time. They differ in what you optimize for.

Option A: Build a real mobile storefront

This is what we do at Ordify Store Builder, so consider this section biased — but the logic is generic. You make a page that's actually a storefront: products with photos, prices, variants, a cart, and a button that sends the order as a structured WhatsApp message.

The QR code points to that URL. Customers scan, browse, tap, send. The order arrives in your WhatsApp already formatted. You confirm. More on that flow here.

Why people pick this:

  • Customers actually use it. Conversion to a sent WhatsApp message is dramatically higher than a PDF that ends at “flag down server.”
  • You update prices in a Google Sheet on your phone. No designer, no Canva, no “can you send me the file?”
  • The page is searchable on Google — bonus organic traffic over time.

Why people don't:

  • Slightly more setup than “upload PDF.” Realistically about 15 minutes.

Option B: Skip the PDF, build a long mobile page

If you don't want a real storefront (and you have a small, stable menu), you can build a long mobile-friendly page with categories, sections, and an embedded WhatsApp link at the bottom. Notion pages work for this. So do simple Carrd or Webflow pages.

It's better than a PDF, but worse than a storefront because the customer still has to compose the WhatsApp message themselves. You'll get a lot of “hi, can I order the chicken and rice?” messages and you'll have to reply with prices and totals. That's the same slowness as before, just with a fancier-looking menu.

Pick A if you sell more than ~20 items or have variants. Pick B if your menu is six items and never changes.

Generating the QR (the part nobody explains)

The QR code itself is the easy part. There are four things to get right:

1. Use a static QR, not a tracked one

Some QR generators give you a tracked URL (like qr.bit.ly/xyz) that redirects to your menu. Their pitch: “analytics!” The problem: if their service ever goes down, breaks, gets bought, or starts charging $30/month, your printed QR codes become garbage. Use a static QR pointing to your actual URL.

2. Pick a short, branded URL

A long URL means a denser QR, which means the pattern is more fragile. Set a custom slug like ordify.site/shop/your-cafe instead of a 60-character sheet ID. Your QR will be cleaner and survive scuffs, water rings, and the lamination peeling at the corner.

3. Print at the right size

For a counter QR, 3-5 cm (1-2 inches) on each side is fine. For a table QR, 5-7 cm. For a window decal that someone scans while walking past, 10 cm minimum. The general rule: the QR's side should be about 1/10th the scanning distance. A 5cm QR scans from ~50cm. A 10cm QR scans from ~1m.

4. Include human-readable text above and below

This is the single highest-impact tip in the post:

Above the QR, write: “Scan to see the menu” or “Scan to order”. Below the QR, write the URL in small text.

Two reasons. First, not everyone knows to scan a QR — “scan to see the menu” raises the scan rate by 30-40% in cafés we've seen. Second, if the QR ever fails (bad lighting, old phone, sticker damage), the URL underneath is a fallback. They can type it in.

Where to put the QR

This sounds obvious. It isn't. Most cafés put the QR in exactly one place — the counter — and miss four other free placements:

  • The counter. The default. Catches the line.
  • Every table. The single highest-converting placement for dine-in cafés.
  • The window. People walking past, deciding whether to come in. The QR is your “menu in the window.”
  • The packaging. Your takeaway cups, paper bags, branded napkins. The customer's already had your coffee — make reordering one scan away.
  • Your social bio. Not a printed QR, but the same URL. Instagram link, Facebook page, Google Business listing.

The hidden cost of doing this badly

Every customer who scans your QR and bounces because the PDF won't load is a customer who walks away thinking your café feels old. That's the cost — not lost orders, but lost vibe.

A good QR menu signals that you pay attention to the details. The same way a clean counter signals you care about cleanliness, a fast menu signals you care about the customer's time. Most people couldn't name the difference. They just feel it.

TL;DR

  • If your QR points to a PDF, change it. Today.
  • Point it to a real mobile storefront with an order button.
  • Use a static QR with a short, branded URL.
  • Add “scan to order” text and a fallback URL.
  • Print it bigger than you think, and put it in five places, not one.

If you want the shortest path to a menu that doesn't look like a PDF — the café template takes about 15 minutes to fill in. The QR generates itself once your store is live.

Want a WhatsApp store of your own?

Ordify turns a Google Sheet into a polished storefront. Orders land on your WhatsApp.