Author: admin

  • QR Code Best Practices for Marketing Campaigns

    Summary: A practical marketing guide covering design principles, strategic placement, tracking goals, A/B testing approaches, and how to measure QR code campaign performance.

    Q: Should I use a static or dynamic QR code for marketing?

    A: For most marketing campaigns, a static QR code pointing to a URL you control is the most reliable choice. Keep the destination URL permanent and redirect from it if your campaign changes. Dynamic codes from paid services add editability and scan tracking but come with subscription costs.

    Q: How do I track QR code scans in Google Analytics?

    A: Add UTM parameters to the URL your QR code links to — for example, ?utm_source=flyer&utm_medium=print&utm_campaign=summer2024. When someone scans and lands on the page, Google Analytics records the session with those campaign dimensions.

    Q: How big should a QR code be on a flyer or poster?

    A: The minimum size for reliable scanning on a printed flyer is 2.5 cm (1 inch) square. For a poster viewed from 1–2 metres away, aim for at least 10 cm (4 inches). Always test by scanning from the expected viewing distance before printing.

    Q: Can I use a QR code on a digital ad or social media post?

    A: QR codes on digital screens generally work only when the viewer is physically close to that screen — a TV ad, a digital billboard, or a presentation slide. They do not work inside clickable social media posts because tapping a link is already the action. Use QR codes for print, packaging, and physical environments.

    Q: What should a QR code link to for better conversions?

    A: Send visitors to a dedicated landing page that mirrors the message on the print material. A page built for that campaign — rather than a generic homepage — converts significantly better because it delivers exactly what the QR code promised.

    QR codes closed the gap between print and digital long before smartphones became universal, but it took a global shift toward touchless interaction to push their adoption into mainstream marketing. Today, a well-placed QR code on a flyer, package, or window display is one of the most cost-efficient ways to move a prospect from awareness to action without adding any friction. This guide covers every lever worth pulling — design, placement, tracking, testing, and the mistakes that quietly kill scan rates.

    Why QR codes work in marketing

    Print has always had a measurement problem. You can count how many flyers you distributed, but not how many people acted on them. QR codes solve this by creating a traceable bridge between a physical impression and a digital session. Every scan can be logged as a campaign event in Google Analytics, giving you the same attribution data you expect from digital ads.

    Beyond tracking, QR codes reduce the effort required to act. Typing a URL by hand — even a short one — creates enough friction to lose most impulse responses. A scan takes under two seconds on any modern phone. That speed advantage compounds when the destination page is built to convert: no extra navigation, no distractions, just the offer the print piece promised.

    QR codes also extend the life of static print. A product package designed in 2023 can still be sending customers to updated landing pages in 2025 as long as the destination URL points somewhere permanent. This is one reason why linking to a URL you control — rather than a social media profile or a third-party platform you cannot fully manage — matters so much.

    Designing your campaign QR code

    A QR code that blends into a design is a QR code that does not get scanned. Visibility is the first design rule. The code needs enough contrast to be read by a camera sensor in mixed lighting, and enough size to be noticed at a glance. Both are non-negotiable.

    Contrast and colour

    The dark modules of the code must be at least 3:1 contrast against the background behind the code. Dark code on white or light paper is the safest choice. Avoid printing dark modules on coloured paper that reduces contrast — a navy code on charcoal paper is effectively invisible to a camera. Inverting (white on dark) works visually but many older scanners struggle with it, so test before printing a full run.

    Size

    For most print materials, aim for a minimum 2.5 cm (1 inch) square. A business card QR code can go as small as 1.8 cm if the URL is short, but anything smaller is risky on glossy or textured stock. For outdoor placements — A2 posters, banners, window stickers — scale up to 10 cm or more so people can scan from a metre or two away.

    Quiet zone

    Leave at least four modules (the width of four cells in the code grid) of blank space around all four edges. Printing text, images, or decorative elements inside the quiet zone confuses the scanner’s edge detection and causes failures at scale.

    Logo overlays

    Adding a logo to the centre of a QR code is possible because the QR standard includes error correction that allows up to 30% of the code’s modules to be obscured. In practice, keep the logo to no more than 20% of the code area to preserve a comfortable margin. Use a white or transparent background behind the logo so it does not bleed into adjacent modules. Always scan the final output before signing off on print.

    For campaign codes, the QR code with logo generator produces high-resolution 1024×1024 PNG output with your brand mark centred in the code.

    Strategic placement for maximum scans

    Placement determines whether people even encounter your QR code. The single most important rule: put the code where people have both the time and the device ready to scan.

    High-dwell environments

    Locations where people linger — restaurant tables, waiting rooms, trade show stands, retail checkout areas, hotel rooms — consistently outperform high-traffic but low-dwell spots like transit ads. A diner studying a table tent has 10–15 minutes of idle time. A commuter walking past a platform poster has three seconds.

    Product packaging

    Packaging QR codes are opened in the home, where the customer already has their phone and ample time. The code can link to setup guides, recipe ideas, reorder pages, loyalty programmes, or warranty registration — all high-value post-purchase actions. See our guide to QR codes for product packaging for placement specifics.

    Events and conferences

    Badge QR codes, session slide decks, and printed brochures at events carry some of the highest scan rates of any marketing channel because attendees are already in an engaged, exploratory mindset. Link badge codes to LinkedIn profiles or contact vCards; link brochure codes to follow-up landing pages with exclusive attendee offers. Read more in our events QR code guide.

    Real estate

    For-sale signs, flyers, and property brochures remain one of the clearest print-to-digital use cases. A prospect driving past a property can scan and pull up photos, a virtual tour, or an agent contact form within seconds. Our real estate QR code guide covers sign placement, weather durability, and linking strategy.

    What to put near the code

    Every QR code should have a short call-to-action above or below it — “Scan to see the menu”, “Scan for 10% off”, “Scan to watch the video”. Without that prompt, many people do not recognise the square as something they should interact with, and those who do have no reason to bother. The CTA is as important as the code itself.

    Tracking and measuring performance

    The most reliable way to measure QR code performance without a paid dynamic code service is UTM parameters on the destination URL. A UTM-tagged URL looks like this:

    https://example.com/offer?utm_source=flyer&utm_medium=print&utm_campaign=summer_sale

    When someone scans and lands on that URL, Google Analytics captures the session under the campaign dimensions you set. You can then see sessions, bounce rate, and conversions broken down by flyer, poster, window_sticker, or whatever source labels you assign — giving you per-material attribution.

    Build each print material its own distinct source parameter. Do not reuse the same UTM across multiple materials unless you want them to appear as a single traffic source. A flyer and a window cling promoting the same campaign should still have different source values so you can compare their performance and allocate future budget accordingly.

    A/B testing your QR campaigns

    A/B testing print campaigns is more constrained than digital testing, but it is not impossible. The simplest approach uses two destination URLs with different landing page variants and two QR codes with distinct UTM source parameters. Print equal quantities of each variant, distribute them in comparable locations, and compare conversion rates after an adequate exposure period.

    Variables worth testing include:

    • The call-to-action text adjacent to the code
    • The placement of the code on the material (top vs bottom, front vs back)
    • The code size (larger vs minimum viable)
    • The landing page design (offer-focused vs brand-focused)
    • The incentive (percentage off vs free item vs access to content)

    Change only one variable per test. Changing the CTA text and the landing page simultaneously makes it impossible to know which change drove any difference in conversion.

    Calls-to-action that drive scans

    The call-to-action is the most frequently neglected part of a QR code campaign. Without a clear reason to scan, most people will not. Here are prompts that consistently perform well:

    • Offer-driven: “Scan for 15% off your next order”
    • Content-driven: “Scan to watch the full recipe video”
    • Utility-driven: “Scan to connect to the conference Wi-Fi”
    • Curiosity-driven: “Scan to see what happens next”
    • Contact-driven: “Scan to save my contact details”

    Match the scan incentive to the context. A restaurant flyer promising a loyalty discount will outperform “visit our website” because it gives a clear, immediate benefit. On a business card, “Scan to save my contact” is clearer than “Scan to learn more”. The best CTAs are specific about what the scan delivers.

    CTA: Create a URL QR Code for Your Campaign

    Common marketing mistakes to avoid

    • Linking to a homepage: A homepage has too many competing paths. Send campaign traffic to a dedicated landing page that matches the print creative.
    • Not testing before print: Test every code on both iPhone and Android and in the lighting conditions of the final placement environment before committing to a print run.
    • Printing on reflective or textured stock: Foil finishes, heavy embossing, and glossy varnish can distort the code pattern. Request a matte finish or a dedicated uncoated panel for the code area.
    • No mobile-optimised destination: Over 95% of QR code scans happen on mobile. If the landing page is not mobile-optimised, you lose nearly every scan.
    • No analytics setup: Launching a campaign without UTM parameters or a short link with click tracking makes it impossible to measure ROI and improve future campaigns.
    • Too small on outdoor materials: A 2.5 cm code is sufficient for a flyer held in hand, but it is invisible on a roadside banner. Scale the code proportionally to the expected scanning distance.
  • How to Create a QR Code for a Restaurant Menu

    Summary: A complete walkthrough for making a restaurant menu QR code with either a hosted URL or a PDF, plus placement ideas, a testing checklist, and static-code limits.

    Q: Should I link my menu as a URL or a PDF?

    A: A hosted web page (URL) is usually better because it loads fast on phones, reflows to fit the screen, and can be updated without touching the code. A PDF works if you already have a well-designed menu file, but it can be slow and awkward to read on small screens.

    Q: Can I change my menu without reprinting the QR code?

    A: Yes, if you point a static code at a stable URL such as yoursite.com/menu and update the page behind it. The code never changes, only the content it displays. If you link directly to a specific PDF file and later replace it with a differently named file, the code will break.

    Q: Do customers need an app to scan the menu code?

    A: No. The built-in camera on current iPhone and Android phones detects QR codes automatically. Adding a short line such as “Scan with your camera to view the menu” helps less familiar guests.

    Q: How big should a menu QR code be on a table?

    A: For scanning from roughly 30 to 50 cm, a code around 3 to 4 cm wide is a good starting point. Keep a clear white margin around it and test at the real size before printing a batch.

    Q: Should I include my logo on the menu QR code?

    A: You can. A logo adds brand recognition and looks professional. Keep the logo under 20% of the code area, use error-correction level H, and test on at least two phones before printing. A logo that is too large will break the scan.

    Q: What if guests do not know how to scan a QR code?

    A: Add a short instruction line near the code: “Scan with your phone camera to view our menu.” Most people know how, but the prompt reassures those who are not sure. You can also offer a printed menu as a fallback for guests who prefer it.

    Q: Is a QR code menu safe from a privacy perspective?

    A: A static QR code generated by QRVelto encodes only the URL. No customer data is collected by the code itself. Privacy depends on the destination: ensure your menu website does not collect unnecessary data, and disclose any analytics in a privacy policy.

    A menu QR code lets diners view your menu on their own phone, which cuts printing costs, eliminates hygiene concerns about shared physical menus, and makes updates easy without reprinting. This is a complete, practical walkthrough covering both the URL and PDF methods, restaurant-specific design tips, where to place the code, customer engagement strategies, security considerations, and the real limitations of a static code so there are no surprises later.

    Step 1: Choose URL or PDF

    Before generating anything, decide what the code will point to. There are two solid options:

    • A web page (URL) — a menu page on your website or a hosted menu service. Best for phones because it loads quickly, adapts to any screen size, and can be updated without changing the code.
    • A PDF file — a hosted PDF of your menu. Useful if you already have a professionally designed menu document, though PDFs can be slower and harder to read on small screens.

    Recommended for most restaurants

    A third option is using a free menu-builder service (such as a Google Drive published document, a Notion page, or a dedicated menu-hosting tool). These give you a shareable URL and a simple update interface, which is ideal if you do not have your own website.

    Step 2a: The URL method

    • Publish your menu as a page on your website, or use a free menu hosting service.
    • Make sure the page is mobile-friendly: large text, clear categories, no horizontal scrolling.
    • Use a clean, stable URL you will not rename later, such as /menu.
    • Test that the page loads correctly on a phone on mobile data (not just Wi-Fi).
    • Copy that URL, ready to paste into the generator.

    The key is stability. Every time the URL changes, you need a new code and a reprint. Build the URL around a permanent path like /menu rather than a seasonal one like /spring-menu-2024. When the season changes, update the page content, not the address.

    Step 2b: The PDF method

    • Export your menu as a PDF. Aim for a file size under 2 MB so it opens quickly on mobile data.
    • Upload the PDF to your website or a cloud host (Google Drive, Dropbox, or similar) and make it publicly accessible.
    • Open the PDF’s public URL in a browser on a phone to confirm it loads directly.
    • Copy the PDF’s URL to use in the generator.

    Note that a QR code encodes a link to the PDF, not the file itself, so the PDF must stay hosted at that address for the code to keep working. If you ever replace the PDF file, use the exact same file name so the URL stays constant.

    PDF limitations to know: PDFs are designed for print, not screens. A two-column landscape PDF looks great on paper and small on a phone. If your PDF menu is not already optimised for mobile (single column, large text), consider converting to a web page instead.

    Step 3: Generate the code

    With your URL ready (whether it points to a web page or a hosted PDF), creating the code takes seconds.

    CTA: Open the menu QR code generator

    If you would rather start from a plain link, the URL QR code generator works the same way. For a branded look with your logo in the center, use the QR code with logo generator and keep the logo small.

    Step 4: Design best practices for restaurant menus

    A menu QR code is a customer-facing element that reflects your brand. Here is how to get the design right without sacrificing scan reliability.

    Size

    For a table code scanned from roughly 30 to 50 cm, aim for 3 to 4 cm wide. If your tables are larger than standard (such as in a fine dining setting with guests seated further from the center), go up to 5 cm. Never go below 2.5 cm for a printed table code. See the full QR code size guide for sizing by placement.

    Contrast and color

    Use a dark code on a light background. If your restaurant branding uses a dark color scheme, place the code in a white or cream box so the contrast is preserved. Avoid printing codes in dark ink on dark paper, even if it matches your aesthetic: a code that fails to scan helps nobody.

    Adding your logo

    A logo in the center of the code adds brand recognition and looks more professional than a plain black-and-white square. Keep the logo small (under 20% of the code area), use error-correction level H, and test on at least two phones before printing a batch.

    Including a prompt

    Add a short line near the code, such as “Scan to view our menu” or “Open our menu on your phone.” A brief instruction significantly increases the number of guests who use the code, especially older guests or those who are less familiar with QR codes.

    Table tent vs sticker

    Table tents (folded card stands) are easy to replace but can be knocked over. Self-adhesive vinyl stickers on tables or menu boards are more durable but harder to replace. Laminated card stickers strike a balance: durable enough for daily cleaning, easy to peel off and replace when worn. For outdoor or bar-top use, invest in proper laminated stickers that resist moisture.

    Step 5: Where to place it

    • Table tents or stickers at each table, at a comfortable reading angle of about 45 degrees for standing or seated guests.
    • The front door or window at eye height so passers-by can preview the menu before entering. Use a larger code here: roughly 6 to 8 cm, since people may scan from outside the window.
    • The host stand or counter for guests waiting to be seated.
    • Takeaway packaging and receipts to bring online customers back and showcase new dishes.
    • Social media and your website. You can embed the code image in a social post or email newsletter as a novelty link to your menu page.

    For a complete guide to QR code placement across every area of a restaurant, from the entrance to the kitchen counter, see QR codes for restaurants.

    Step 6: Customer engagement strategies

    A menu QR code does not have to do just one thing. Here are ways to extend its value:

    Link to the full menu, not just the food

    Your menu page can also include allergen information, origin stories for signature dishes, a wine pairing guide, and links to booking or ordering. Give guests a reason to spend time on the page beyond just reading dish names.

    Add a seasonal specials section

    One of the biggest advantages of a digital menu is that updates are instant. When a special changes, update the page. No reprinting, no waiting for the new menus to arrive. Train staff to expect that the digital menu is always current, and make that a selling point with guests.

    Collect feedback

    Place a second QR code at the end of the meal (on the receipt or a table card) that links to a short feedback form or your Google Business page. QR codes make leaving a review a one-tap action instead of a task to remember later.

    Promote loyalty and social

    Link a code to your loyalty program sign-up, your Instagram page, or a “refer a friend” page. Guests are already on their phones scanning the menu; a secondary code on a leave-behind card can direct that engagement toward building your audience.

    Step 7: Testing checklist

    • Print the code at the exact final size, not a screen preview.
    • Scan it with at least two phones (ideally one iPhone and one Android).
    • Test under the restaurant’s real lighting, including any dim areas, candle light, and window glare.
    • Confirm the menu page or PDF opens and is easy to read on a phone screen.
    • Check load speed on mobile data, not just the restaurant Wi-Fi.
    • Verify that all menu sections, prices, and allergen information are accurate and up to date.
    • Ask a member of staff unfamiliar with the process to scan and navigate the menu; their experience reflects a typical guest’s.
    • Only then print the full batch of table cards or stickers.

    Security and privacy

    A QR code for a restaurant menu is low-risk by nature, but there are still a few security and privacy considerations worth knowing:

    Protect against code tampering

    In high-footfall venues, it is not unheard of for a malicious sticker to be placed over a legitimate QR code, redirecting guests to a phishing page. Inspect table codes periodically and train staff to report any codes that look different or feel raised (a sticker over the original). Laminated codes are slightly harder to overlay than paper ones.

    Use a recognizable URL

    When guests scan your code, their phone shows the destination URL before opening it. Using your own domain (such as yournrestaurant.com/menu) rather than a generic shortener or third-party URL builds trust. Guests can recognize your domain and are more likely to proceed without hesitation.

    Guest data

    A static QR code generated by QRVelto collects no customer data. No scan is logged, no analytics are recorded by the code itself. What your menu website collects depends on your web platform. If you use Google Analytics or similar, disclose this in your privacy policy.

    Do not encode sensitive information

    A menu code should point to a publicly accessible URL. Never encode passwords, admin links, or employee-only pages in a code that will be placed in a public area.

    Static code limitations

    QRVelto creates static QR codes, which are free, private, and permanent, but the destination is fixed once printed. The practical way to handle a changing menu is to point the static code at a stable URL (like /menu) and edit the page behind it whenever dishes or prices change. The code keeps working because the link never changes.

    Watch out with PDFs

    If your menu changes so frequently that managing a stable URL feels difficult, a dynamic QR code service may be worth the monthly cost. For most restaurants, however, a static code pointing at a well-maintained web page is the simpler, cheaper, and more private solution.

    Common mistakes

    • Linking to a page that is not mobile-friendly. Most diners are on phones with varying screen sizes.
    • Using a URL you will later rename, which breaks a static code and requires a reprint.
    • Printing too small for a comfortable table-distance scan.
    • Skipping the real-world test before printing every table card.
    • Using a PDF with no mobile optimization, so guests have to pinch and zoom to read it.
    • No instruction text near the code, leaving guests unsure what to do with it.
    • Not testing on mobile data: a menu that loads quickly on the restaurant Wi-Fi may be slow on 4G.
    • Forgetting to update the menu page when dishes change, creating a mismatch between the digital and physical menus.

    Frequently asked questions

    Related reading: why a QR code is not working, QR code size guide, static vs dynamic QR codes, and QR codes for restaurants.

  • Why Is My QR Code Not Working? Common Problems and Fixes

    A QR code that will not scan is almost always failing for one of a short list of reasons. Work through them in order and you will find the culprit quickly. Each section below explains the cause, how to recognize it, the fix, and how to prevent it from happening again. We also cover device compatibility differences and testing tools you can use before committing to a print run.

    First checks

    Before diagnosing anything complex, rule out the basics in under two minutes:

    • Clean the phone camera lens; fingerprints and smudges reduce autofocus quality.
    • Check the lighting: glare, deep shadow, and dim conditions all defeat scanners.
    • Confirm the phone’s camera is pointed squarely at the code, not at a steep angle.
    • Hold the phone steady for two full seconds to allow autofocus to lock.
    • Try a second phone to determine whether the problem is the code or the specific device.
    • If using an older phone, open a dedicated QR scanner app instead of the built-in camera.

    If the code fails on every phone in good light, the issue is in the code itself or the destination. Continue through the sections below.

    Low contrast

    Scanners read the difference between dark and light modules. Light grey on white, dark blue on black, dark green on dark teal, or a busy photographic background behind the code all reduce that contrast until the reader cannot reliably distinguish the pattern.

    How to recognize it: The code looks visually “muddy” or the colors are close in brightness when viewed in greyscale.

    Fix: Use a genuinely dark foreground on a plain light background. Classic black on white is the most reliable pairing. If you must use brand colors, ensure the dark modules are still very dark (aim for a contrast ratio of at least 3:1; 4.5:1 or higher is safer). Add a white container box behind the code if it sits on a colored or photographic background.

    Code too small

    A code printed smaller than the scanning distance allows is the single most common failure point in deployed QR codes. The 10-to-1 rule gives a starting estimate: the code width should be about one tenth of the maximum scanning distance.

    How to recognize it: The code scans fine on a phone held very close but fails at any normal reading distance. Different phones give inconsistent results.

    Fix: Reprint at a larger size. See the QR code size guide for specific figures by use case. As a starting rule of thumb, keep printed codes at least 2 × 2 cm, and scale up for any placement further than arm’s length.

    Oversized logo

    A logo in the center covers modules. Error correction can recover some loss, but a logo that occupies more than roughly 25 percent of the code area pushes it beyond the recoverable limit, especially on devices with average cameras.

    How to recognize it: The code scanned before the logo was added but fails afterward. Or it works on a high-end phone but not a budget device.

    Fix: Shrink the logo to under 20 percent of the code area, raise the error-correction level to H (the maximum), and regenerate the code. After regenerating, test on at least three phones before reprinting.

    Rebuild a branded code with the QR code with logo tool.

    Insufficient whitespace

    The quiet zone is the empty margin around the code. Scanners need it to identify where the pattern begins and ends. If text, a border, a colored box, or a background image crowds the edges, the decoder cannot reliably locate the finder patterns.

    How to recognize it: The code looks like it goes right to the edge of the printed area, or a design element overlaps the corner squares.

    Fix: Leave a clear white margin at least four modules wide on all sides. If the design is tight, shrink the surrounding element rather than the margin. The quiet zone is non-negotiable.

    Inverted colors

    Many scanners are tuned to expect dark modules on a light background. A light or white code on a dark background (inverted) fails on a significant share of devices, including many older Android models and some scanner apps.

    How to recognize it: The code has light squares on a dark background instead of the standard dark on light.

    Fix: Switch to a dark code on a light background. If inversion is required for brand reasons, test exhaustively on at least ten different phone models before printing.

    Blurry printing

    Enlarging a small raster image, printing at low DPI, saving as JPEG, or using a low-quality printer all soften the module edges. Blurry edges cause dark and light areas to merge, so the scanner cannot cleanly separate the binary data.

    How to recognize it: Module edges look fuzzy or grey in the print. You can see this under magnification or by looking closely at a printed proof.

    Fix: Generate the code at or above the final print size. Export as PNG (not JPEG). Print at 300 DPI minimum, and 600 DPI for small or high-detail codes. For large-format output, use SVG or PDF vector format so the image stays sharp at any size.

    Physical damage

    Scuffs, folds, peeling stickers, spills, UV fading, and surface wear all destroy modules and reduce contrast over time. Error correction tolerates minor damage (up to about 7% at Level L and 30% at Level H), but significant physical degradation pushes the code past recovery.

    How to recognize it: The code was working before and now fails. There is visible physical damage to the printed surface.

    Fix: Reprint on more durable stock. Use laminate for outdoor or high-traffic codes. For table codes in restaurants, self-adhesive vinyl with a laminate overlay is far more durable than paper table tents. Replace codes proactively in high-wear locations every few months.

    Broken destination link

    Sometimes the code scans perfectly but the page fails to open. The pattern is fine; the target is the problem. Common causes include a deleted or renamed page, a URL that requires login, a typo in the original URL, a domain that has lapsed, or a server error on the destination.

    How to recognize it: The phone shows a URL or a “code detected” notification but then displays a 404 error, a redirect loop, or a “site can’t be reached” message.

    Fix: Copy the URL from the code notification and open it directly in a browser to confirm it loads. If the page is broken, fix the destination. For static QR codes, a changed URL means generating a new code and reprinting, because the destination is fixed in the pattern. This is explained in detail in static vs dynamic QR codes.

    Wrong scanning distance

    A code sized for a table will not scan from across a room. Conversely, very large codes held right up to the camera lens can fall outside the phone’s autofocus range, particularly on devices with close-focus limitations.

    Fix: Match the code size to the realistic scanning distance using the 10-to-1 rule and test at both the nearest and farthest points people will actually stand.

    Device compatibility issues

    Not all phones are equal when it comes to QR code scanning. Here is what to know:

    iPhone

    iPhones running iOS 11 and later (2017 and newer) have native QR code scanning in the Camera app. No additional app is needed. Older iPhones require a third-party scanner app.

    Android

    Android QR scanning varies by manufacturer and version. Google Camera and many OEM camera apps on Android 8 and later support native QR scanning. Older or budget Android devices often need an explicit scanner app such as Google Lens (built into most modern Android devices via the Google app) or a third-party scanner.

    When a code works on one phone but not another

    This is almost always a sign that the code is “borderline”: it works on a phone with a superior camera or autofocus but fails on a weaker one. The right fix is to improve the code quality (larger, better contrast, smaller logo) rather than asking users to try another phone.

    Scanner apps worth knowing

    • Google Lens — available on most Android devices; reliable and privacy-respecting.
    • iOS Camera app — built-in on iPhone; no additional setup.
    • QR & Barcode Scanner by Gamma Play — widely used third-party option for older devices.

    Testing tools and methods

    Testing a code before committing to a print run takes minutes and can save significant cost. Here are the methods:

    Print a proof at the exact final size

    Print a single copy on the same paper stock you plan to use at the exact dimensions of the final version. Scan it with at least two phones in the real environment (lighting, distance, angle). This is the only reliable test.

    Display on screen as a proxy test

    Display the code at roughly the intended size on a monitor screen. Scan it with a phone. This tests whether the code itself is valid but does not test print quality or outdoor conditions. Use it as a quick sanity check, not a final verification.

    Use multiple scanner apps

    Test with the built-in camera, Google Lens, and a dedicated scanner app. If a code fails on one but works on others, it is borderline quality. Fix it before printing rather than hoping users will switch apps.

    Test in real conditions

    Restaurant codes should be tested in the actual restaurant lighting, not at a desk. Outdoor signs should be tested in sunlight and shade. Event codes should be tested in the venue’s actual lighting conditions.

    Prevention checklist

    Follow these steps before every print run and you will rarely need to troubleshoot a failed code:

    • Verify the destination URL loads correctly in a browser before generating the code.
    • Generate at or above the final print size; never upscale a small image.
    • Export as PNG, not JPEG.
    • Ensure the foreground is genuinely dark and the background is genuinely light.
    • Leave a clear quiet zone margin on all four sides.
    • Keep any logo under 20% of the code area; use error-correction level H with a logo.
    • Print a proof at the exact final size before ordering a large run.
    • Test with at least two different phones in the real environment.
    • Plan for periodic replacement in high-wear or outdoor locations.

    For sizing specifics, see the QR code size guide. For best practices in marketing campaigns, read QR code best practices for marketing.

    Frequently asked questions

    My QR code scans on one phone but not another. Why?

    This usually points to a borderline code: slightly too small, low contrast, or a large logo. It works on a phone with a better camera or in good light but fails on a weaker one. Improve the underlying quality rather than accepting a marginal scan.

    The camera detects the code but nothing opens.

    The pattern is fine but the destination is the problem. The linked page may be deleted, private, or misspelled. Open the URL directly in a browser to confirm it loads, then regenerate the code with a working link.

    Can a printed QR code stop working over time?

    The pattern does not change, but ink can fade, labels can peel, and surfaces can scuff. Faded or damaged printing reduces contrast and breaks modules. Reprint on durable material for high-traffic or outdoor placements.

    I edited my code in an image editor and now it fails.

    Cropping, recoloring, compressing, or resizing a finished code can corrupt the modules or remove the quiet zone. Always regenerate the code at the size and colors you need instead of editing the final image.

    Why does my QR code work indoors but not outside?

    Direct sunlight, glare on glossy surfaces, and low-contrast printing all reduce outdoor scan performance. Move to a shaded spot, tilt the sign away from direct light, or increase code size and contrast for outdoor use.

    Is there a way to test a QR code without printing it?

    Yes. Display the code at the intended size on a monitor, then scan it with a phone. This tests the code logic but not print quality. For a proper test, print a proof at the exact final size and test in the real environment, including the actual lighting conditions.

    Generate a fresh code with the URL QR code generator. Related reading: QR code size guide, what is a QR code, static vs dynamic QR codes, and QR code best practices for marketing.

  • What Size Should a QR Code Be? Print and Digital Size Guide

    Summary: Practical sizing guidance based on scanning distance, plus quiet zone, contrast, resolution, and a testing routine that catches problems before you print.

    Q: What is the smallest a QR code can be?

    A: As a rough starting point, keep a printed code at least about 2 x 2 cm (0.8 inch) for close scans, then confirm with a real test. Denser codes with more data or a logo need to be larger. Always verify at the actual print size rather than relying on a fixed number.

    Q: What is the 10-to-1 rule for QR codes?

    A: A widely used guideline: the minimum code width should be about one tenth of the scanning distance. To be read from 2 metres away, aim for a code around 20 cm wide. Treat it as a starting estimate and test in the real setting.

    Q: Does adding a logo require a bigger code?

    A: Usually yes. A logo covers modules, so you should raise the error-correction level and often increase the size to keep the scan reliable. Test any code with a logo on more than one phone.

    Q: What resolution should I export for print?

    A: Print at 300 DPI or higher, or use a vector export where available, so edges stay crisp at the final size. Never scale up a small raster image, since that produces blurry modules that fail to scan.

    Q: Does a longer URL produce a larger QR code?

    A: Yes. More data means more modules, which means a denser pattern. A very long URL can produce a code that needs to be printed larger to remain scannable. Shortening the URL (using a URL shortener or a cleaner page path) reduces density and improves reliability.

    Q: Can I print a QR code on a curved surface like a mug or bottle?

    A: Yes, but curves distort the pattern. Use a higher error-correction level (Q or H), keep the code smaller relative to the curve, and test scanning from multiple angles. Some curvatures are too severe for reliable scanning.

    The most common reason a QR code fails is simple: it was printed too small for the distance it needs to be scanned from, or the surrounding factors, like contrast and whitespace, were neglected. This guide gives you reliable sizing for both print and screens, including specific recommendations by industry, DPI and resolution guidance, and a real-world testing checklist, without making promises that ignore your specific setting.

    The scanning-distance rule

    The most useful rule of thumb is the 10-to-1 ratio: the code should be about one tenth as wide as the maximum distance it will be scanned from. So:

    • Scanned from 30 cm (a table or flyer): aim for around 3 cm wide.
    • Scanned from 1 m (a counter display or window): aim for around 10 cm wide.
    • Scanned from 2 m (a poster): aim for around 20 cm wide.
    • Scanned from 5 m (a wall or window display): aim for around 50 cm wide.
    • Scanned from 10 m (a large banner or billboard): aim for around 100 cm wide.

    This is a starting estimate, not a guarantee. Denser codes (those encoding more data or using higher error correction) and lower-end cameras need more size, so round up when in doubt. Lighting conditions, glare, and print quality all affect the practical threshold.

    The minimum recommended printed size is 2 cm × 2 cm even for the closest scans. Below that, small print variations and camera focus limitations start to cause consistent failures on budget smartphones.

    Practical print sizes

    PlacementTypical scanning distanceSuggested minimum size
    Business card15 to 30 cm2 to 2.5 cm
    Table tent / table sticker30 to 50 cm3 to 4 cm
    Flyer / brochure30 cm2.5 to 3 cm
    Product packaging (small)20 to 30 cm2 to 2.5 cm
    Product packaging (large)30 to 50 cm3 to 4 cm
    A5 / A4 poster30 to 60 cm3 to 5 cm
    A3 / A2 poster1 to 2 m10 to 20 cm
    A1 / A0 poster2 to 3 m20 to 30 cm
    Retail window display1 to 3 m15 to 30 cm
    Billboard / large banner5 m and above50 cm and above

    Sizing by industry

    Different industries have different typical scan distances and placement conditions. Here are targeted recommendations for the most common use cases.

    Restaurants and cafés

    Table codes are scanned from roughly 30 to 50 cm, so a code between 3 and 4 cm is a solid starting point. The real-world factor is restaurant lighting: dim atmospheric lighting can reduce camera performance significantly. If your venue is intentionally dark, print slightly larger (4 to 5 cm) and test in the actual space. Codes on menus at the front door should be sized for a standing scan distance of about 50 to 80 cm, so aim for 5 to 8 cm.

    For the full restaurant guide, see QR codes for restaurants and the step-by-step menu QR code guide.

    Real estate

    Codes on for-sale signs and window displays are typically scanned from 1 to 3 metres by passers-by. Use the 10-to-1 rule and aim for 15 to 30 cm wide. Outdoor signs also face direct sunlight and weather, which affect contrast and durability. Use high-contrast black on white and laminate the surface. See QR codes for real estate.

    Events

    Event codes appear in many contexts: on badges (scanned from 20 to 30 cm), on stage screens (scanned from 5 to 20 m), and on printed programmes (30 cm). Size each placement appropriately rather than using one code size for all. A code on a conference screen needs to be very large, often full-screen for a moment. Badge codes should be at least 2.5 cm. Read more at QR codes for events.

    Business cards

    Business card codes are scanned close up (15 to 25 cm) so a code of 2 to 2.5 cm fits well even on a standard 85 × 55 mm card. Keep the quiet zone clear and avoid placing text right up to the code edge. A vCard code with a full name, phone, email, and website will be denser than a plain URL code; if the pattern looks very dense in preview, trim the content or increase the size to 2.5 cm. See QR codes for business cards.

    Product packaging

    Packaging codes are scanned at arm’s length (20 to 40 cm) in store lighting conditions. A 2 to 3 cm code is usually sufficient, but curved or non-flat packaging (tins, bottles, tubes) distorts the pattern. Use error-correction level H for curved surfaces and test by scanning the physical product. Read the full guide to QR codes for product packaging.

    Quiet zone (whitespace)

    The quiet zone is the empty margin around the code. Scanners need it to tell where the pattern begins and ends. The QR standard specifies a clear border at least four modules wide (a module is one of the small squares in the grid). In physical terms, for a 3 cm code this means roughly 1 to 2 mm of clear space on each side.

    In practice, be generous. Leave a visible white frame and never let text, borders, brand graphics, or photo backgrounds crowd the edges. Even a partially obscured quiet zone causes failures on some scanners, because the decoder cannot reliably locate the finder patterns.

    Contrast and color

    Scanners read the difference between dark and light modules, so contrast is critical:

    • Use a dark foreground on a light background. Classic black on white is the most reliable.
    • Keep the foreground darker than the background, never the reverse.
    • Avoid low-contrast pairs such as light grey on white, navy on black, or dark green on dark blue.
    • If you tint the code to match a brand color, keep the dark modules genuinely dark (at least a 3:1 contrast ratio, ideally higher).
    • Do not place a QR code on a busy photographic background without a white container box behind it.

    Logos and complexity

    A centered logo looks professional but covers modules. To keep the scan reliable:

    • Use error-correction level H, which tolerates up to 30% module loss.
    • Keep the logo area under 20 to 25 percent of the total code area.
    • Use a simple logo mark rather than a complex full-color wordmark; the busier the logo, the more the underlying modules are obscured.
    • Increase the overall code size by 10 to 15 percent compared to the equivalent code without a logo.
    • Test the finished code on at least three phones, including an older Android device.

    CTA: Add a logo the safe way

    Resolution, DPI, and file format

    For print, resolution determines whether module edges are sharp or blurry. Blurry edges merge adjacent modules and destroy the read.

    DPI guidance

    • 300 DPI minimum for standard print (flyers, cards, brochures).
    • 600 DPI for high-quality or small-size print (business cards, product labels).
    • Vector (SVG or PDF) for large-format print (posters, banners, billboards). A vector image is resolution-independent and stays sharp at any size.

    File format advice

    • PNG is the best raster format. It is lossless, so no JPEG compression artifacts soften the module edges.
    • JPEG / JPG introduces compression artifacts even at high quality. Avoid for QR codes if at all possible.
    • SVG or PDF for large-format print. Infinitely scalable without quality loss.

    Never enlarge a small PNG to fill a large poster. Scaling up a raster image blurs the module boundaries. Always generate the code at, or above, the final printed size. If you need a poster-size code, use the largest export resolution available or request a vector format.

    Sizing for screens

    On screen, the concern shifts from DPI to pixels and viewing distance. A code shown on a slide or shop screen should be large enough that a phone a few metres away can capture it clearly, following the same 10-to-1 idea.

    • For a code displayed on a phone screen for someone to scan nearby: at least 240 × 240 pixels at screen resolution.
    • For a code on a laptop or desktop screen at about 1 to 2 m: at least 400 × 400 pixels.
    • For a code projected on a presentation screen at 3 to 5 m: at least half the slide width, which on a standard 1920 × 1080 presentation is around 400 to 500 pixels in the slide layout.
    • For a full-room screen or digital signage at 5 to 10 m: as large as feasible, often full-screen for the moment the code appears.

    Avoid displaying codes on reflective or dim screens where glare defeats the camera. Matte screens and good ambient lighting improve scan rates significantly.

    How to test before printing

    Skipping the test is the most expensive mistake in QR code deployment. A failed code on 5,000 printed menus means a reprint. Here is a reliable pre-print checklist:

    • Export or print the code at the exact final size, not a preview on screen.
    • Scan it with at least two different phones: ideally one current iPhone and one mid-range Android.
    • Test in the real lighting of the location, including any glare, shadows, or lamp flicker.
    • Scan from the closest and the farthest realistic distance.
    • Confirm the destination opens correctly, not just that the code is detected.
    • Check the destination is mobile-friendly: loads quickly, text is readable, no pinch-zoom required.
    • If the code is outdoors, check it also in direct sunlight and in overcast conditions.

    Only after a code passes every check should you commit to a large print run. For a deeper fault-finding list when something goes wrong, see why a QR code is not working.

    Common mistakes

    • Sizing for the design, not the distance. A tiny code on a big poster will not scan from across a room.
    • Removing the quiet zone to fit a layout. Keep the margin clear; shrink the design element instead.
    • Upscaling a low-resolution image. Generate at the final size, or use a vector format.
    • Saving as JPEG. Compression artifacts blur module edges. Use PNG or SVG.
    • Skipping the real-world test. A screen preview is not proof it will scan in print and real lighting.
    • Placing a code on a busy background without a white box. Contrast is as important as size.
    • Using a very long URL without shortening it first. More data means a denser pattern; shorter URLs produce simpler, more scannable codes.

    Frequently asked questions

    Related reading: what is a QR code, static vs dynamic codes, why a QR code is not working, and our URL QR code generator.

  • Static vs Dynamic QR Codes: What Is the Difference?

    Summary: An honest comparison of static and dynamic QR codes across editability, tracking, cost, and privacy, so you can pick the right one for your project.

    Q: Which type does QRVelto make?

    A: QRVelto creates static QR codes. The destination is encoded directly in the pattern and generated in your browser, so the code is free, private, and permanent, but the target cannot be edited after it is made.

    Q: Can I convert a static code into a dynamic one later?

    A: No. The two are structurally different. A static code holds the destination itself, while a dynamic code holds a redirect link tied to a hosting service. Switching means generating a new code and reprinting.

    Q: Is a dynamic code better than a static one?

    A: Neither is universally better. Dynamic codes add editability and tracking at the cost of a subscription and third-party dependency. Static codes are free and permanent but fixed. The right choice depends on whether your destination will change.

    Q: Do static codes work forever?

    A: The code itself scans indefinitely because the data never changes. What can break is the destination behind it, such as a web page that is later deleted. Keep the target link live and the code keeps working.

    Q: Can I track scans on a static QR code?

    A: Not natively. However, you can approximate tracking by pointing the code at a URL with UTM parameters (e.g. ?utm_source=print&utm_medium=flyer) and reviewing your website analytics. You will see traffic sources but not individual scan counts.

    Q: What happens to dynamic codes if I stop paying?

    A: Most dynamic QR code providers will disable or delete your redirect links if the subscription lapses. This means every printed code that relied on that redirect stops working, which can be a serious problem if they are on physical materials you cannot easily replace.

    “Static” and “dynamic” are the two families of QR code, and choosing the wrong one before you print can be an expensive mistake. This article compares them objectively, point by point, so you can decide with clear eyes rather than marketing hype. We will cover editability, tracking, cost, privacy, real-world examples, and why QRVelto focuses on static codes for most users.

    The quick answer

    A static QR code stores the destination directly inside the pattern. It is free, private, and permanent, but fixed once created. A dynamic QR code stores a short redirect link managed by a hosting service, which lets you edit the destination and record scans, in exchange for an ongoing subscription and reliance on that service.

    For most individuals, small businesses, and one-time use cases, a static QR code is the right choice. Dynamic codes earn their cost when the content genuinely needs to change after printing, or when detailed scan analytics are essential to a paid campaign.

    Can you change the content?

    This is the defining difference. With a static code, the data is baked into the squares, so the destination cannot be changed afterward. If you print a static code that points to example.com/spring-menu and later rename that page, the code breaks.

    A dynamic code points at a redirect owned by the provider. Because the redirect target lives on a server, you can repoint it to a new URL any time without reprinting. That flexibility is the main reason businesses pay for dynamic codes.

    The practical workaround for static codes is to point the code at a stable URL and update the content behind that URL. For example, a restaurant can link a static code to /menu and update the menu page whenever dishes change. The code never changes; only the page content does. This approach works for most real-world needs and eliminates the need for a dynamic code service entirely.

    Scan tracking and analytics

    Static codes carry no built-in analytics. The data goes straight from the pattern to the destination, with nothing in between to count scans. You can approximate tracking by pointing a static code at a URL that already has its own analytics, such as a link with UTM parameters, but there is no scan dashboard.

    For example, a static code pointing to https://example.com/menu?utm_source=table-qr&utm_medium=print will show up in your Google Analytics as traffic from that source. You get channel-level insight without needing a dynamic code service.

    Dynamic codes route each scan through the provider first, so they can log the number of scans, rough location, device type, and time. If measurable campaign performance is a hard requirement and UTM tracking is not granular enough, a dynamic code from a reputable paid provider may be justified. But understand that you are sharing every scan event with that provider.

    Cost

    Static codes are typically free to generate and free forever, because there is no service to maintain. Dynamic codes almost always require a paid subscription, since someone has to keep the redirect infrastructure running. If that subscription lapses, dynamic codes usually stop resolving.

    Paid dynamic QR services typically charge between $5 and $30 per month depending on the number of codes, scan volume, and analytics features. For a small business that simply needs a menu code or a Wi-Fi code, this is a recurring cost with no real benefit over a free static code pointing to a well-maintained URL.

    Privacy

    Static codes generated locally are the more private option. With QRVelto’s generator, the code is built in your browser and nothing is sent to a server, so no third party records who scans it or what you encoded.

    Dynamic codes, by design, route scans through a provider that logs them. That is useful for analytics but means a third party sees scan activity, including when, where, and on what device every scan happened. Depending on your users’ privacy expectations and applicable laws (such as GDPR in Europe), this logging may require disclosure.

    Neither approach is wrong; it depends on whether you value analytics or minimal data collection. For codes that handle sensitive information, such as medical paperwork links or employee-facing tools, static codes with no third-party logging are generally the safer default.

    Pros and cons of each type

    Static QR codes: pros

    • Free to generate, free to use forever.
    • No third-party service dependency; works even if the generator goes offline.
    • Private by default: no scan data sent to any server.
    • Permanent: the code never expires or breaks due to a lapsed subscription.
    • Simpler: no account, no dashboard, no management overhead.
    • Works offline for types like plain text, Wi-Fi credentials, and vCard contacts.

    Static QR codes: cons

    • Cannot be edited after creation. A changed URL means a new code and a reprint.
    • No native scan tracking or analytics.
    • Longer content (like a long URL) produces a denser, harder-to-scan code.

    Dynamic QR codes: pros

    • Editable destination without reprinting the code.
    • Built-in scan analytics: count, location, device, and time.
    • Shorter encoded URL means a simpler, less dense code pattern.
    • Useful for campaigns where the target changes over the life of the print run.

    Dynamic QR codes: cons

    • Requires an ongoing paid subscription to keep the redirect active.
    • If the provider shuts down or you cancel, all printed codes stop working.
    • Every scan is logged by the provider, raising privacy considerations.
    • More setup and management: accounts, dashboards, link management.

    Side-by-side comparison

    FactorStatic QR codeDynamic QR code
    Editable after printingNoYes
    Built-in scan trackingNo (UTM workaround available)Yes
    Ongoing costNoneMonthly/annual subscription
    Works if service endsYes (code is self-contained)No (redirect stops)
    Third-party scan loggingNoneYes (by the provider)
    PrivacyHighLower
    Works offlineYes (for text, Wi-Fi, vCard)No (requires internet)
    Code pattern densityDepends on content lengthUsually simpler (short redirect)
    Setup complexityNoneAccount and dashboard required
    Made by QRVeltoYesNo

    Which one to use

    Choose a static code when:

    • The destination is stable, such as a permanent website or a Wi-Fi network.
    • You want a free, permanent code with no subscription.
    • Privacy matters and you would rather no third party log scans.
    • The code is for personal use, a one-time event, or a small business with a stable URL.
    • The content type works offline: vCard contacts, Wi-Fi credentials, or plain text notes.

    Consider a dynamic code (from a paid provider) when:

    • The destination will genuinely change over time and reprinting is not practical.
    • You need detailed scan analytics to measure and report on a campaign.
    • The same printed code must serve different targets across a campaign lifecycle.
    • You are running a large-scale print campaign with a dedicated marketing budget.

    CTA: Make a static Wi-Fi code

    Real-world examples

    When static is clearly the right choice

    • Restaurant Wi-Fi: A café prints a Wi-Fi QR code at each table. The password never changes, so a static code is free, permanent, and requires no service. See the Wi-Fi QR code generator.
    • Business cards: A consultant prints a vCard QR code on their card. Their contact details are stable, so a static code is ideal. Even if the phone number changes, only the next batch of cards needs a new code. Read about QR codes for business cards.
    • Restaurant menu: A restaurant links a static code to /menu. When dishes change, the page is updated but the code stays the same. Full guide here.
    • Product packaging: A producer links product codes to their ingredient page. The URL is stable, so a static code on the printed label works permanently.

    When dynamic codes make sense

    • Rotating marketing campaigns: A retailer prints window decals with a QR code that must link to different promotions each month. Reprinting decals each month is prohibitive, so a dynamic code with a manageable redirect makes sense.
    • Event tickets: A large venue needs to verify which ticket was scanned and when. Dynamic codes with scan logging are the right tool here.

    Why QRVelto creates static codes

    QRVelto is built on a simple principle: your data stays in your browser. When you generate a QR code with QRVelto, the entire process happens locally, no server upload, no account, no subscription. The code is generated instantly, the image is yours to download, and no third party ever sees what you encoded.

    This approach works well because the vast majority of QR code use cases, sharing a website link, connecting guests to Wi-Fi, handing out a contact card, linking to a PDF, do not require editing after printing. A stable URL paired with a well-maintained web page solves the “editable content” problem without any cost or privacy trade-off.

    For tools that need dynamic editing and scan tracking, a dedicated paid service is the honest answer. QRVelto does not try to compete with those tools; it provides the best possible static code generator for the majority of users who do not need them.

    Limitations to know

    The biggest limitation of a static code is that it cannot be edited. Plan the destination carefully and keep that page live. For content that changes often, such as a restaurant menu, point a static code at a stable URL (like /menu) and update the page behind it rather than the code.

    The limitation of a dynamic code is dependency: if the provider changes pricing, shuts down, or you stop paying, printed codes can fail. Before committing to a large print run with a dynamic service, verify the provider’s track record and read the service terms carefully, especially the data-retention policy after cancellation.

    Common mistakes

    • Printing a static code to a URL you plan to rename. Use a stable link or route instead.
    • Paying for dynamic codes you do not need. If nothing will change and you do not need analytics, static is enough.
    • Assuming a static code tracks scans. It does not; use UTM links if you need rough measurement.
    • Forgetting that dynamic codes break when you stop paying. Budget for the full lifecycle of the campaign, not just the launch.
    • Using a dynamic provider with poor uptime. Every minute of downtime means failed scans for everyone holding your printed materials.

    Frequently asked questions

    New to the topic? Start with what a QR code is and how it works, or see the size guide before you print. To create your first static code right now, try the URL QR code generator.

  • What Is a QR Code and How Does It Work?

    QR codes are everywhere now, from restaurant tables to parcel labels to museum walls, yet most people have never been told how the little squares actually work. This guide explains what a QR code is, how it was invented, how the pattern encodes information, the practical difference between static and dynamic codes, and how to use and scan them safely. By the end you will understand not only what a QR code is but why it has become one of the most versatile communication tools in modern business.

    What a QR code actually is

    QR stands for Quick Response. It is a two-dimensional barcode invented in 1994 by the Japanese company Denso Wave to track automotive parts. Unlike a traditional barcode, which stores data in a single horizontal row of lines, a QR code stores data across both dimensions of the square. That is why it holds far more information and can be read from any angle.

    You can spot the structure once you know where to look. The three large squares in the corners are finder patterns that tell a scanner where the code is and how it is rotated. Smaller alignment patterns help the reader correct for distortion when the code is on a curved surface or photographed at an angle. The rest of the grid is the encoded data plus error-correction information.

    In essence, a QR code is a machine-readable label that bridges the physical and digital worlds. You print it on paper, a product, or a sign, and any smartphone can decode it instantly without needing any special hardware beyond the built-in camera.

    History and evolution of QR codes

    The story of QR codes begins on the factory floor, not in a marketing department. In 1994, Masahiro Hara and his team at Denso Wave, a subsidiary of the Toyota Group, were frustrated by the limitations of standard barcodes. A barcode could hold only 20 characters, and the automotive supply chain needed to track parts with much more detail, including part numbers, manufacturing lots, and supplier codes, all in a single scan.

    Hara drew inspiration from the game of Go, whose black-and-white stones on a grid suggested a matrix-based approach. After two years of development, the team published the QR code standard in 1994 and released it royalty-free. That decision to open the standard to the world is largely why QR codes are everywhere today.

    Adoption milestones

    • 1994 — Denso Wave invents and publishes the QR code standard.
    • 1999 — QR codes adopted across Japanese manufacturing and logistics.
    • 2002 — First QR-enabled mobile phones released in Japan, bringing consumer adoption.
    • 2010s — Smartphones go mainstream globally; QR codes appear on posters, magazines, and packaging worldwide.
    • 2017 — Apple adds native QR code scanning to the iOS camera app, removing the last major barrier for iPhone users.
    • 2020 — COVID-19 pandemic drives an explosion in contactless menu, check-in, and payment QR codes globally.
    • 2024 — QR codes appear on billions of product packages, transit systems, payment terminals, and marketing materials worldwide.

    The pandemic accelerated adoption by years. Restaurants replaced laminated menus overnight. Event venues switched to digital tickets. Governments used QR codes for health passports. What had been a niche marketing tool became everyday infrastructure almost overnight, and the habit has stuck.

    How a QR code stores and reads data

    Every black or white square in the grid, called a module, represents part of a binary value. When you scan a code, your camera captures the pattern, the software locates the finder patterns, straightens the image, and then translates the modules back into the original text, such as a web address or a block of contact details.

    The process takes a fraction of a second on a modern phone. The camera does not need to be perfectly aligned: the finder patterns let the software rotate and correct the image automatically, which is why you can scan a QR code held at an angle or even slightly curved around a bottle or mug.

    Error correction is the clever part

    QR codes include built-in error correction based on Reed-Solomon mathematics, the same algorithm used in CDs, DVDs, and space communication. This is why a code can still scan even if part of it is smudged, torn, or covered by a logo. There are four correction levels:

    • Level L — recovers about 7% of damaged data. Produces the smallest, simplest code.
    • Level M — recovers about 15%. A reasonable default for most uses.
    • Level Q — recovers about 25%. Good choice when a logo will be overlaid.
    • Level H — recovers about 30%. Best for codes with a large logo or high-wear environments.

    Higher correction adds more modules, making the code denser and therefore slightly harder to scan from a distance. This is the trade-off you will encounter again when you add a logo.

    QR code structure explained

    A QR code is more than a random grid of squares. Every zone has a specific job:

    • Finder patterns — The three large squares in the top-left, top-right, and bottom-left corners. They let any scanner locate and orient the code regardless of rotation.
    • Timing patterns — Alternating black-and-white stripes running between the finder patterns, used to determine the size of each module.
    • Alignment patterns — Smaller square patterns that appear in larger QR codes to help correct for curved surfaces or camera distortion.
    • Format information — Strips adjacent to the finder patterns that store the error-correction level and the masking pattern applied to the data.
    • Data and error-correction modules — The bulk of the code. Data is encoded here, interleaved with the error-correction blocks.
    • Quiet zone — The blank white margin surrounding the code. Scanners need this to identify where the pattern begins and ends.

    QR code versions

    QR codes come in 40 versions, from Version 1 (a 21×21 grid that holds 41 numeric characters) to Version 40 (a 177×177 grid that holds up to 7,089 numeric characters). The version is chosen automatically based on how much data you want to encode: a short URL might generate a Version 3 or 4 code, while a full vCard with name, address, and phone number might require Version 10 or higher. In practical terms, encode only the information you need, because a smaller, simpler code scans more reliably than a large, dense one.

    Static vs dynamic QR codes

    This is the single most useful distinction to understand before you make a code.

    Static QR codes

    A static code encodes the destination directly in the pattern. Scan it and the data, for example https://example.com/menu, comes straight out of the squares. Because the data lives in the image, it is fixed. You cannot change where it points after printing, and there is no built-in scan tracking. Static codes are free, private, and permanent, which makes them ideal when the destination will not change.

    Dynamic QR codes

    A dynamic code encodes a short redirect link that runs through a hosting service. When someone scans it, they hit that service first and are then forwarded to the real destination. Because the redirect can be edited on the server, you can change the target later and record scan statistics. The trade-off is an ongoing subscription and reliance on that third party staying online.

    Common types of QR codes

    The term “type” usually refers to what the encoded text tells the phone to do:

    • URL — opens a website, the most common use by far. Use our URL QR code generator.
    • Wi-Fi — connects a phone to a network without typing the password. Try the Wi-Fi QR code generator.
    • vCard — saves a full contact card to the address book. See the vCard QR code generator.
    • Menu — a URL pointing to a digital restaurant menu. Use the menu QR code generator.
    • Email — pre-fills an email with a recipient address and subject line.
    • WhatsApp — opens a WhatsApp chat with a pre-filled message.
    • PDF — links directly to a hosted PDF document.
    • Plain text — shows a short message on screen without requiring an internet connection.

    Whatever the type, the mechanics are identical: the phone reads the text and recognizes a prefix (like WIFI: or BEGIN:VCARD or mailto:) that tells it how to respond. The QR code format itself is universal; only the content changes.

    Real-world uses and examples

    QR codes have found their way into almost every industry. Here are concrete examples that show just how versatile the format has become:

    Restaurants and hospitality

    A café prints a code on each table that opens its digital menu, using our menu QR code generator. Customers scan, browse, and order without waiting for a physical menu. A hotel places a Wi-Fi QR code at the front desk and in each room so guests connect instantly without calling reception. For a complete restaurant use-case guide, see QR codes for restaurants.

    Business networking

    A consultant or salesperson adds a vCard QR code to their business card. When a new contact scans it, their phone automatically adds the full contact record, including name, company, phone, email, and website, to their address book. No manual typing required. See how QR codes transform business cards.

    Retail and product packaging

    A food producer prints a QR code on a jar that links to an ingredient breakdown, allergen information, and recipe suggestions. A clothing brand links to a care guide and sustainability report. QR codes on packaging can hold far more information than the label itself. Learn more about QR codes for product packaging.

    Events and entertainment

    A conference organiser includes QR codes on lanyards that link to speaker bios and session schedules. A museum places codes beside exhibits that open audio guides or extended video content. At events, QR codes replace printed tickets entirely. Read about QR codes for events.

    Real estate

    A property agent adds a QR code to a for-sale sign. Passers-by scan it to view a full photo gallery, floor plans, and contact details without calling the office. See the complete guide to QR codes for real estate.

    Marketing and advertising

    Brands embed QR codes in print ads, billboards, and direct mail to bridge physical and digital campaigns. A code on a flyer can open a landing page, a discount voucher, or a product video. Read QR code best practices for marketing.

    Benefits and advantages of QR codes

    QR codes have displaced paper forms, printed directories, and spoken instructions in many settings because they offer several genuine advantages:

    • Instant access. A scan takes less than two seconds. There is no typing, no searching, no memorizing. The user goes directly to the content.
    • No special hardware required. Any modern smartphone with a camera can read a QR code. No dedicated scanner, no app installation in most cases.
    • Bridges print and digital. Physical materials can link to content that would be impossible to print, like videos, live inventory, or interactive maps.
    • Low cost to produce. Static QR codes are free to generate. Printing them costs the same as printing any other design element.
    • Large data capacity. A single code can store thousands of characters, far more than any barcode.
    • Error tolerance. Built-in Reed-Solomon error correction means codes keep working even with minor damage, smudging, or a brand logo overlay.
    • Works offline. A QR code that encodes plain text, a Wi-Fi credential, or a vCard works without an internet connection. The data is in the image itself.
    • Reduces contact. During the COVID-19 pandemic, contactless menus, check-ins, and payments via QR code became essential and remain preferred by many customers.

    Security considerations

    Because a QR code hides its destination behind a pattern, the main risk is not knowing where a scan will take you. Attackers sometimes paste fake codes over real ones, a technique called “quishing” (QR phishing), to redirect people to phishing pages designed to steal passwords or payment details. The FBI and consumer protection agencies have published guidance on tampered QR codes because the threat is real.

    Sensible habits that reduce the risk:

    • Always preview the URL your phone shows before opening it.
    • Be wary of QR codes on stickers placed over an existing sign, especially in public places.
    • Never enter passwords or payment details on a page reached only by an unexpected code.
    • If a code sends you to an unfamiliar domain, close it rather than proceeding.
    • For business codes you create, use a stable, recognizable URL so customers can verify where they are going.

    For a deeper dive into this topic, read our full guide on QR code security and privacy.

    Common mistakes

    • Assuming any code can be edited. Static codes cannot. Choose the type before printing.
    • Printing too small. Dense codes need room to be read reliably. Follow the size guide before committing to a print run.
    • Skipping the scan test. Always test with more than one phone before publishing.
    • Linking to a page that is not mobile-friendly. If users scan with a phone, the destination must work well on a phone.
    • Forgetting the quiet zone. The white margin around the code is not optional; removing it causes scan failures.
    • Using low-contrast colors. Light grey on white or dark blue on black both defeat most scanners.

    If a code refuses to scan, our guide on why a QR code is not working walks through every likely cause with specific fixes for each one.

    Frequently asked questions

    Do QR codes expire?

    A static QR code never expires on its own because the data is fixed in the pattern. What can stop working is the destination behind it. If a static code points to a web page and that page is deleted, the code still scans but the link fails.

    Do I need an app to scan a QR code?

    On most modern phones, no. The built-in camera app on current iPhone and Android devices detects QR codes automatically. Older phones may need a separate scanner app.

    Can a QR code contain a virus?

    The code itself is only data, so it cannot hold executable malware. The risk comes from where it sends you. A code can open a malicious website or a fake login page, so always preview the destination before acting on it.

    How much information can a QR code hold?

    A single QR code can store up to roughly 4,296 alphanumeric characters or 7,089 numeric digits at its largest version, though smaller, simpler codes scan far more reliably in the real world.

    Who invented QR codes?

    QR codes were invented in 1994 by Masahiro Hara and a team at Denso Wave, a subsidiary of the Toyota Group in Japan. They were originally designed to track automotive parts during manufacturing.

    Are QR codes free to use?

    Yes. The QR code standard was made freely available by Denso Wave, who hold the patent but chose not to enforce it. Creating static QR codes is free. Some dynamic QR code services charge a subscription for tracking and editing features.

    Ready to create your first code? Start with the URL QR code generator, explore all industry solutions, or browse the QRVelto blog for more in-depth guides.