You set up a QR code menu. You printed the codes. You put them on every table. But something isn't working — customers are asking for physical menus, complaining about the experience, or just ignoring the QR codes entirely.
You're not alone. Despite 52% of US restaurants now offering QR code menus, many of them are doing it wrong. The result: frustrated customers, lower order values, and a digital menu that actively hurts the dining experience instead of improving it.
We've identified the five most common problems based on data from Toast's consumer survey, BOIA's accessibility research, Google's mobile speed data, and Uniqode's consumer survey. Each one has a straightforward fix.
This is the #1 reason QR code menus fail. The restaurant uploaded their paper menu as a PDF and linked the QR code to it. On a phone, this means:
- Slow loading — a typical restaurant PDF is 2–10 MB. Google found that 53% of mobile users abandon pages that take over 3 seconds. A 5 MB PDF on restaurant WiFi can take 4–8 seconds
- Pinch-to-zoom required — PDF layouts are designed for letter-size paper, not 6-inch screens. Customers have to zoom, scroll horizontally, and constantly reposition
- No accessibility — BOIA reports most PDF menus are image-based, meaning screen readers can't read them at all
The Fix
Replace the PDF with a mobile-optimized web menu. A true digital menu is a live web page that auto-fits any screen — text reflows, photos are compressed, and categories are tap-friendly. The QR code still works the same way; only what's behind it changes. Create one free on Menujo in 5 minutes.
For a full breakdown of this issue, read our QR code menu vs PDF menu comparison.
The QR code is physically there, but customers struggle to scan it. This happens more often than restaurants realize.
Common Scanning Failures
- Too small — QR codes printed smaller than 2×2 cm (0.8 inches) are unreliable, especially in low light. DENSO WAVE's specifications recommend a quiet zone (white border) at least 4 modules wide around the code
- Low contrast — colored QR codes on colored backgrounds, or dark codes on dark tables. You need at least a 4:1 contrast ratio between code and background
- Reflective or curved surfaces — laminated table cards with a glossy finish, or codes on round bottle surfaces, create glare that blocks phone cameras
- Dense codes — if your menu URL is very long (100+ characters with tracking parameters), the QR pattern becomes dense and harder to scan. Short URLs produce clean, simple codes
The Fix
- Print at minimum 3×3 cm for table cards (bigger is better)
- Use dark code on a white or light background — matte finish, not glossy
- Use a short, clean URL (digital menu platforms generate these automatically)
- Test by scanning from 20–30 cm distance on 2–3 different phones in your actual restaurant lighting
Learn more about QR code types and best practices in our dynamic vs static QR code guide.
Even if the QR code scans fine and opens a proper web page, a slow-loading menu will lose customers. Google's research shows that as load time goes from 1 second to 5 seconds, bounce probability increases by 90%. At 10 seconds, it jumps to 123%.
Why Menus Load Slowly
- Uncompressed photos — raw smartphone photos are 3–8 MB each. A menu with 20 uncompressed photos could weigh 60+ MB
- Heavy animations and effects — parallax scrolling, fade-in animations, and background videos add seconds of load time
- Too many items on one page — loading 200 items with photos at once overwhelms mobile connections
- Slow hosting — free hosting services often have slow response times, especially during peak hours
The Fix
- Compress all images to WebP format — reduce each photo from 5 MB to under 50 KB with minimal quality loss
- Keep the total page under 500 KB — this loads in under 2 seconds on any 4G connection
- Use lazy loading — only load photos for the items currently visible on screen
- Use a fast CDN — digital menu platforms like Menujo serve menus from global CDN edges, delivering content in milliseconds regardless of customer location
Some restaurants built a "digital menu" on their regular website — a page designed for desktop that technically works on phones but provides a terrible experience. Toast's survey found that 26% of customers can't read the small text on digital menus.
Signs Your Menu Isn't Mobile-Friendly
- Text is too small — body text below 16px triggers auto-zoom on iOS Safari, breaking the layout. Item names should be at least 16–18px
- Tap targets are too small — Apple requires interactive elements to be at least 44×44 pixels. Google recommends 48×48px. If customers misclick when trying to select a category, the menu feels broken
- Horizontal scrolling — any element wider than the screen (tables, images, long text) forces horizontal scrolling, which feels wrong on mobile
- No category navigation — a single long page with all items listed requires excessive scrolling. Nielsen Norman Group found users spend 74% of time in the first two screenfuls — items buried below that get almost no attention
The Fix
- Use a mobile-first menu platform — these are designed for phones from the ground up, not adapted from desktop
- Test on your own phone before going live — scan, browse every category, check every photo
- Ensure 4.5:1 contrast ratio between text and background for readability in bright restaurant lighting
- Use tap-friendly category tabs so customers can jump directly to Mains, Desserts, or Drinks without scrolling
For the full mobile design checklist, see our digital menu design guide.
The worst failure: the customer scans the QR code and gets an error page. A Uniqode consumer survey found that 29% of consumers have encountered expired or dead QR code links.
Why QR Codes Break
- Dynamic QR subscription lapsed — if you used a dynamic QR code service and stopped paying, every printed code stops working. The redirect server goes offline, and customers see an error
- URL changed or page deleted — if you moved your menu to a different URL, renamed the page, or changed hosting providers, the old QR code points to nothing
- Free hosting expired — many free website builders delete inactive sites after 6–12 months
- Temporary link — Google Drive sharing links, Dropbox links, and similar file-sharing URLs can expire or change permissions
The Fix
- Use a dedicated digital menu platform that owns the URL — not a file-sharing link or a temporary page builder
- If using a dynamic QR service, set a calendar reminder to check the subscription status quarterly
- Scan your own QR codes monthly — walk through your restaurant with your phone and scan every code. It takes 2 minutes and catches problems before customers do
- Use static QR codes pointing to platform URLs — these never expire because the data is in the code itself and the platform maintains the URL. For more on this, read our dynamic vs static QR code comparison
How to Audit and Fix Your QR Code Menu in 15 Minutes
Scan every QR code in your restaurant
Grab your phone and walk through the restaurant. Scan every QR code — tables, counter, window, bathroom. Check: Does it load? How many seconds does it take? Does it open a PDF or a web page? Note which codes work and which are broken.
Test on a different phone
Borrow a friend's or staff member's phone — ideally a different brand (iPhone vs Android). Scan the same codes. Some QR issues are device-specific. If it fails on one type of phone, you're losing those customers.
Check loading speed
Time how long your menu takes to load from scan to fully visible. If it's over 3 seconds, you have a speed problem. Common fixes: compress images, remove animations, switch to a faster hosting platform.
Verify readability without zooming
Can you read item names and prices without pinching to zoom? If not, your menu is either a PDF or a desktop page. The fix is to switch to a mobile-optimized digital menu platform.
Replace any broken or PDF QR codes
For broken codes: generate new QR codes from your menu platform. For PDF-based menus: create a free interactive menu on Menujo, then print new QR codes. Label the backs of new table cards with the date so you can track when they were placed.
| Problem | Symptom | Fix |
|---|---|---|
| PDF instead of web menu | Pinch-to-zoom, slow loading | Switch to a mobile-optimized platform |
| Hard to scan | Camera doesn't recognize code | Bigger code, higher contrast, matte finish |
| Slow loading | Page takes 4+ seconds | Compress images, use CDN |
| Not mobile-friendly | Small text, horizontal scroll | Use a mobile-first platform |
| Broken / expired link | Error page or 404 | Platform URLs + monthly QR checks |
Most QR code menu problems trace back to one root cause: using the wrong format (PDF) or the wrong platform (free hosting that expires). A purpose-built digital menu platform solves all five problems at once. Here's how to set one up in 5 minutes.
Frequently Asked Questions
Why isn't my restaurant QR code working?
The five most common causes are: (1) the QR code opens a PDF instead of a web page, (2) the code is too small, low-contrast, or on a reflective surface, (3) the menu page loads too slowly (over 3 seconds), (4) the menu isn't optimized for mobile screens, or (5) the QR code link has expired or broken. Walk through your restaurant and scan every code on your phone to identify which issue you have.
Why do customers ignore my QR code menu?
Usually because of a bad first experience. If the first scan opened a slow PDF that required zooming, customers remember that frustration and ask for a paper menu next time. The fix: switch to a mobile-optimized digital menu that loads in under 2 seconds and reads perfectly without zooming. A good experience changes customer behavior.
How do I know if my QR code opens a PDF or a web page?
Scan it with your phone. If it downloads a file, opens in a PDF viewer, or requires pinch-to-zoom to read — it's a PDF. If it opens in your browser with text that fits the screen, tap-friendly categories, and fast-loading photos — it's a web-based digital menu.
What size should a restaurant QR code be?
Minimum 2×2 cm (0.8 inches) with a white quiet zone border at least 4 modules wide. For table tents and counter displays, 3–5 cm is ideal. Use dark code on a light, matte background with at least 4:1 contrast. Always test scanning from 20–30 cm in your actual restaurant lighting.
Why is my QR code menu so slow?
Common causes: uncompressed food photos (3–8 MB each instead of 50 KB), too many items loading at once, heavy animations, or slow hosting. The fix: compress images to WebP, keep total page under 500 KB, use lazy loading for off-screen photos, and host on a fast CDN.
How do I fix a broken QR code?
If the destination URL changed: generate a new QR code pointing to the correct URL and reprint table cards. If a dynamic QR subscription expired: either renew it or switch to a platform-generated static QR that doesn't depend on a subscription. Scan all QR codes monthly to catch problems early.
Can QR codes expire?
Static QR codes never expire — the URL is encoded in the pattern itself. Dynamic QR codes expire if the redirect service subscription lapses or the provider shuts down. A Uniqode survey found 29% of consumers have encountered dead QR links. Use platform-generated static codes to avoid this risk entirely.
What is the best format for a QR code menu?
A mobile-optimized web page — not a PDF, not a desktop website, not a Google Drive link. The page should load in under 2 seconds, text should reflow to fit any screen, and categories should be tap-friendly. Digital menu platforms like Menujo generate this automatically.
How often should I check my restaurant QR codes?
Monthly. Walk through your restaurant with your phone and scan every code. It takes 2 minutes and catches problems before customers do — expired links, changed URLs, damaged codes, or scanning issues in new lighting conditions. Add it to your monthly opening checklist.
Do I need to reprint QR codes when I update my menu?
No — if your QR code points to a digital menu platform URL. The code links to a web address that stays the same. When you update prices, add items, or change photos on the platform, the changes appear instantly at the same URL. You print the QR code once.
Should I keep printed menus as backup?
Yes. Toast's survey found 81% of diners still prefer physical menus. Keep 5–10 printed menus available for customers who ask. But make the digital menu the default — place QR codes prominently, and train staff to guide customers to scan first. Most will adapt quickly.
My customers are too old for QR codes — what should I do?
Toast data shows 90% of diners 55+ prefer physical menus. The solution: digital-first, printed backup. Place QR codes at every table but have staff ready with a printed menu on request. You can also add a simple sign: Scan for our menu, or ask us for a printed copy. Most restaurants find that within a month, even initially skeptical customers adapt.



