QR Codes for Marketing: Practical Tactics That Actually Work
QR Codes for Marketing: Practical Tactics That Actually Work

QR codes are one of the cheapest, most measurable ways to move someone from a physical surface to a digital action. Use dynamic QR codes tied to tracked short links, add UTM parameters, and place them where people can act immediately. That is the whole formula. According to a 2025 Forbes survey, 95% of business leaders use QR codes for first-party data collection, and QR-linked destinations see an average click-through rate of 37%.
Your 48-hour pilot checklist:
- Pick a single placement (a product insert, a flyer, or a counter card) and define one conversion goal.
- Build a tracked short link using a tool like Rdyrct, append UTM parameters for source, medium, and campaign, then generate a dynamic QR code tied to that link.
- Print a small test batch, scan from multiple devices and distances, confirm the landing page loads correctly, and launch.
That is it. Three steps, two days, one data point that tells you whether the placement and CTA work before you commit to a full print run.
Table of Contents
- How QR codes work, and why static vs. dynamic matters
- Where to place QR codes for maximum scan rates
- Static, dynamic, and branded: which type do you actually need?
- How to create a QR code campaign from scratch
- Design rules that keep codes scannable and on-brand
- How to measure QR code campaigns and attribute conversions
- QR code campaign ideas you can run this week
- When QR codes are the wrong tool
- U.S. legal and accessibility requirements for QR code campaigns
- End-to-end workflow: privacy-first QR campaigns with Rdyrct
- Key Takeaways
- The gap between what QR codes promise and what most campaigns deliver
- Rdyrct makes QR campaign tracking straightforward
- Useful sources
How QR codes work, and why static vs. dynamic matters
A QR code is a two-dimensional barcode that encodes a string of data, almost always a URL, into a grid of black and white squares. When a smartphone camera reads it, the device decodes the grid and opens the destination in a browser. The whole process takes under two seconds.

The critical decision is whether that destination is baked into the code itself (static) or stored in a redirect layer (dynamic).
Static QR codes encode the final URL directly. Once printed, you cannot change the destination without generating and reprinting the code. They work fine for permanent links: a company homepage, a Wi-Fi password, a vCard. For any campaign where the destination might change, or where you need scan analytics, they are the wrong choice.

Dynamic QR codes encode a short redirect URL. The redirect service holds the actual destination, so you can update it anytime without touching the printed code. That redirect layer is also where analytics live. Every scan hits the redirect server, which logs device type, referrer, location (at city or region level), and timestamp before forwarding the user.
The scan-to-analytics flow looks like this: smartphone scans code → redirect service (e.g., Rdyrct) logs the event → user lands on destination page → web analytics records the session via UTM parameters.
Common QR payload types beyond URL include vCard contacts, Wi-Fi credentials, and payment links. For marketing, URL is almost always the right choice because it gives you full control over the destination and the analytics stack.
Where to place QR codes for maximum scan rates
Placement is the variable most marketers underestimate. A well-designed code in the wrong spot gets zero scans. The rule is simple: place codes where the viewer has a reason to act right now and a phone already in hand.
Print materials (brochures, business cards, direct mail) work well for acquisition and retention. A business card QR code linking to a booking page or a portfolio converts at the moment of handoff. Direct mail pieces with a “Scan for your exclusive offer” code give recipients an immediate next step.

Product packaging and inserts are underused. A code on the inside of a box lid linking to an assembly video, a recipe, or a loyalty signup captures customers at peak engagement, right after purchase.
In-store signage suits awareness and upsell. A shelf talker with “Scan to see how it’s made” or a checkout counter card with “Scan to join our rewards program” catches customers during dwell time.
Out-of-home (OOH) and event booths require larger codes and shorter CTAs. A billboard QR code needs to be scannable from a car or a sidewalk, which means minimum 4 inches at typical viewing distances. Event booth codes work best for lead capture: “Scan to claim your speaker notes” or “Scan to enter the giveaway.”
TV and digital OOH are trickier. They work when the code is on screen long enough to scan (at least 5–7 seconds) and the CTA is compelling enough to make someone pick up their phone mid-viewing.
| Placement | Objective | QR Type | Best-Practice CTA |
|---|---|---|---|
| Product packaging | Retention / support | Dynamic | “Scan for setup guide” |
| Direct mail | Acquisition | Dynamic | “Scan for your offer” |
| In-store signage | Awareness / upsell | Dynamic | “Scan to join rewards” |
| Business card | Acquisition | Static or dynamic | “Scan to book a call” |
| Event booth | Lead capture | Dynamic | “Scan to claim notes” |
| OOH / billboard | Awareness | Dynamic | “Scan for limited deal” |
| TV / digital OOH | Awareness | Dynamic | “Scan now for details” |
A clear call-to-action near the code is not optional. Codes without a CTA consistently underperform because people do not know what they will get. Keep it to five words or fewer and lead with the benefit.
Static, dynamic, and branded: which type do you actually need?
Most marketers only need to understand three code types and one pairing rule.
Static codes are free, simple, and permanent. Use them only when the destination will never change and you do not need scan data: a personal website, a Wi-Fi login, a permanent event page.
Dynamic codes cost a small monthly fee through most platforms but pay for themselves immediately. You can swap the destination after printing, run A/B tests by pointing the same code at two different landing pages on alternating days, and pull scan analytics without touching the physical asset.
Branded QR codes add your logo, brand colors, or a custom frame to the code design. They increase recognition and scan rates because they look intentional rather than generic. Most dynamic code platforms, including Rdyrct, offer branded QR codes on paid tiers.
Short branded links are the redirect URLs that power dynamic codes. Instead of a generic redirect domain, you get a link like go.yourbrand.com/summer-sale. That link is what gets encoded into the QR code, and it is also what you share in email or social when you want consistent attribution across channels.
The pairing that works for almost every print campaign: dynamic QR code + branded short link + UTM parameters. The dynamic layer gives you flexibility, the branded link builds trust, and the UTMs feed your web analytics with clean campaign data.
- Static only: permanent links, no analytics needed, zero budget
- Dynamic: any printed asset that might change, any campaign you want to measure
- Dynamic + branded short link: mass-distributed print, OOH, packaging, event materials
- Dynamic + branded + UTMs: any campaign where you need attribution in Google Analytics or a similar platform
Pro Tip: Never print static codes on mass-distributed assets like product packaging or trade show materials. If the destination changes or the page breaks, every printed piece becomes a dead end with no way to fix it.
How to create a QR code campaign from scratch
Follow this sequence and you will avoid the two most common launch mistakes: printing before testing and forgetting UTMs.
- Define the objective. What should the scanner do? Buy, sign up, watch, download? One goal per code.
- Build the destination page. Make sure it loads fast on mobile, has a single clear CTA, and matches the promise on the printed piece.
- Create a branded short link. In Rdyrct, connect a custom domain, create the short link, and set the destination to your landing page URL.
- Append UTM parameters. Add them to the destination URL before generating the code. A clean example:
?utm_source=flyer&utm_medium=qr&utm_campaign=summer-launch. This tags every scan as a distinct session in your analytics platform. - Generate the dynamic QR code. Tie it to the branded short link. Choose error-correction Level M for standard print. Use Level H if you plan to overlay a logo or use the code on outdoor signage that may get dirty or worn.
- Export in the right format. SVG for print production (scales without quality loss). 300 DPI PNG when the printer requires raster. Never use a low-resolution PNG for large-format print.
- Test before you print. Scan from an iPhone and an Android device. Test at the actual viewing distance. Confirm the UTM parameters appear correctly in your analytics. Check the landing page on a slow mobile connection.
Testing checklist before any print run:
- Scan on at least two different devices (iOS and Android)
- Test at the minimum expected viewing distance
- Confirm the landing page loads in under 3 seconds on mobile
- Verify UTM parameters fire correctly in your analytics platform
- Check that the code still scans after printing a test sheet (ink bleed can reduce contrast)
- Confirm the failover: if the destination page goes down, where does the redirect go?
Design rules that keep codes scannable and on-brand
The most common design mistake is making the code too small. A QR code needs to be at least 2 × 2 cm for reliable close-range scanning. For posters or signage, scale proportionally to viewing distance: roughly 1 cm of code size per 10 cm of expected scanning distance.
Contrast is non-negotiable. The code modules (the dark squares) must have at least a 4:1 contrast ratio against the background. Dark modules on a light background is the standard. Reversing to light modules on a dark background can work but requires testing across multiple scanner apps. Never put the code on a busy photographic background.
Clear space matters. Keep a quiet zone of at least four module widths around the entire code. Crowding the code with text or design elements right up to its edge causes scan failures.
Logo overlays are fine when done correctly. Use error-correction Level H, keep the logo to no more than 30% of the code’s total area, and test the final design on multiple devices before committing to print. A logo that covers too much of the data modules will cause scan failures even with high error correction.
CTA copy placement: put the CTA above or below the code, not inside it. Use a short benefit-led line (“Scan for 20% off”) and, for audiences less familiar with QR codes, add a small “Open your camera app to scan” instruction.
Do’s:
- Use high-contrast color pairs (dark navy on white, black on cream)
- Include a short human-readable URL below the code as a fallback
- Add a frame or border to visually separate the code from surrounding design
- Test the printed output, not just the screen preview
Don’ts:
- Use gradient backgrounds behind the code
- Rotate the code (some scanners handle it, many do not)
- Use a QR code smaller than 2 × 2 cm on any print piece
- Leave out the CTA and expect people to scan out of curiosity
Pro Tip: Always print a physical proof and scan it under the actual lighting conditions of the placement environment. A code that scans perfectly on a monitor can fail on a matte-laminated flyer under fluorescent store lighting.
How to measure QR code campaigns and attribute conversions
Scan counts alone tell you almost nothing. The metrics that matter are the ones that connect a physical impression to a business outcome.
Key metrics to track:
- Total scans: raw volume, useful for comparing placements
- Unique scanners: filters out repeat scans from the same device
- Scan rate: scans divided by estimated impressions (useful for OOH and event placements)
- Device type: iOS vs. Android split informs landing page optimization
- Location: city or region-level data shows which markets are responding
- Time of scan: reveals peak engagement windows by hour and day
- CTR from scan to conversion: what percentage of scanners complete the goal action
- Revenue per scan: for e-commerce campaigns, the ultimate efficiency metric
Analytics setup:
Dynamic short links capture device type, referrer, and location at the redirect layer. UTM parameters carry campaign attribution into your web analytics platform (Google Analytics 4, for example). Set up a goal or conversion event on the landing page so you can track the full funnel: scan → session → conversion.
| Metric | Where to find it | Review cadence |
|---|---|---|
| Total and unique scans | Short-link dashboard (e.g., Rdyrct) | Weekly |
| Device type split | Short-link dashboard | Weekly |
| Location breakdown | Short-link dashboard | Weekly |
| UTM-tagged sessions | Google Analytics 4 | Weekly |
| Conversion rate | GA4 goal/event report | Weekly |
| Revenue per scan | GA4 e-commerce report | Monthly |
One common discrepancy: scan counts in your short-link dashboard will usually be higher than sessions in GA4. Reasons include users scanning but not waiting for the page to load, bot traffic, and browser pre-fetching. Treat the short-link dashboard as your top-of-funnel signal and GA4 as your conversion source of truth.
QR codes are increasingly valuable for first-party data collection as third-party cookies phase out. Scan-level signals give you device, location, and timing data that you own, without relying on platform-level tracking.
QR code campaign ideas you can run this week
These templates are built around the objective → placement → CTA → metric structure. Adapt the copy to your brand.
Product packaging: support and retention Objective: reduce support calls and increase product satisfaction. Place a dynamic QR code on the inside of the box lid. CTA: “Scan for setup in 60 seconds.” Link to a short video walkthrough. Metric to optimize: scan rate and support ticket volume.
Event booth: lead capture Objective: collect qualified leads without paper forms. Place a large-format code on the booth backdrop and a smaller version on the table card. CTA: “Scan to claim your free resource.” Link to a lead capture form with a gated PDF or tool. Metric: form completions per scan.
Direct mail: acquisition Objective: drive trial signups from a cold audience. Place the code prominently on the front panel. CTA: “Scan for your exclusive 30-day trial.” Link to a dedicated landing page (not the homepage). Metric: trial signups per mailing unit.
OOH / poster: awareness and coupon redemption Objective: drive foot traffic or online orders. Place a 4-inch minimum code at eye level. CTA: “Scan for this week’s deal.” Link to a time-limited offer page. Metric: scan-to-redemption rate.
Restaurant or retail receipt: repeat purchase Objective: drive loyalty program signups. Print the code at the bottom of the receipt. CTA: “Scan to earn points on today’s purchase.” Link to the loyalty enrollment page. Metric: enrollment rate per transaction.
Each of these works because the value exchange is immediate and obvious. The customer knows exactly what they get before they scan.
When QR codes are the wrong tool
QR codes fail predictably in a few situations, and recognizing them early saves budget and embarrassment.
Red flags that suggest skipping QR codes:
- Your audience skews older and has low smartphone adoption or comfort with camera scanning
- The placement environment has poor lighting (dim bars, dark event spaces) where cameras struggle to focus
- The viewing distance makes a scannable code impractically large (a highway billboard at 200 feet)
- The transaction involves sensitive data (banking, medical records) where scanning an unknown code creates legitimate security concerns for users
- You cannot deliver immediate value after the scan. A code that leads to a homepage or a “coming soon” page destroys trust fast.
Common mistakes that kill campaigns:
- Printing static codes on mass-distributed assets (packaging, trade show banners) with no ability to update the destination
- Skipping the CTA entirely and assuming people will scan out of curiosity
- Not testing the printed output before the full run
- Forgetting UTMs, so scans show up as direct traffic in analytics with no campaign attribution
- Using a code so small it cannot be scanned at the natural viewing distance of the placement
Quick decision checklist:
- Does the audience have smartphones and comfort using the camera to scan? If no, skip.
- Is there enough light and physical space to scan comfortably? If no, skip.
- Can you deliver clear, immediate value within two seconds of scanning? If no, redesign the offer first.
- Do you have a dynamic link and UTMs set up? If no, set those up before printing anything.
U.S. legal and accessibility requirements for QR code campaigns
Two areas catch marketers off guard: advertising disclosure rules and accessibility.
Legal considerations:
The FTC’s guidelines on advertising disclosures apply to QR-linked destinations the same way they apply to any ad. If the landing page contains a sponsored claim, an affiliate relationship, or a material connection, that disclosure must be clear and prominent on the page itself, not buried in a footer. Do not use a QR code to route users to a destination that obscures what they are agreeing to or signing up for.
Data collection disclosure is equally important. If the redirect service or the landing page collects personal data (email, location, device identifiers), your privacy notice must say so. This applies whether you are using a third-party analytics platform or a first-party tool. Preferring a privacy-first analytics approach, such as one that does not store IP addresses, reduces your exposure and simplifies your privacy notice language.
Accessibility checklist:
- Always include a short, human-readable URL near the code (e.g.,
go.yourbrand.com/offer). Not every user can or will scan. - Ensure the landing page is screen-reader friendly: proper heading structure, alt text on images, and keyboard-navigable forms.
- Maintain at least a 4:1 contrast ratio between the QR code modules and the background.
- If the code appears in a digital format (email, PDF, social post), add alt text describing the destination.
- Test the landing page with a screen reader before launch.
This article is general marketing guidance, not legal advice. Confirm current FTC disclosure requirements and applicable state privacy laws with a qualified attorney for your specific campaigns.
End-to-end workflow: privacy-first QR campaigns with Rdyrct
Here is a complete workflow using Rdyrct’s branded short link and dynamic QR code features. It covers the full path from campaign setup to scan reporting.
Step-by-step:
- Build your landing page and confirm it is mobile-optimized and loads quickly.
- In Rdyrct, connect your custom domain (e.g.,
go.yourbrand.com) and create a new short link pointing to the landing page URL with UTM parameters appended:?utm_source=packaging&utm_medium=qr&utm_campaign=q3-launch. - Generate a dynamic QR code tied to that short link. Customize the code with your brand colors and logo using Rdyrct’s branded QR options.
- Export as SVG for print production or 300 DPI PNG for digital use.
- After launch, monitor the Rdyrct analytics dashboard for scan volume, device type, referrer, and location. Pull UTM-tagged session data from your web analytics platform to track conversions.
Sample UTM naming convention:
| Parameter | Example value |
|---|---|
| utm_source | packaging, flyer, event-booth, billboard |
| utm_medium | qr |
| utm_campaign | q3-launch, summer-sale, product-insert |
| utm_content | front-panel, receipt, table-card |
Privacy callout: Rdyrct does not store IP addresses. Analytics reports device type, referrer, and city/region-level location without retaining personally identifiable network data. For campaigns where your audience is privacy-sensitive, or where your privacy notice commits to minimal data collection, this matters. You still get the campaign-level signals you need for optimization; you just do not carry the compliance burden of IP retention.
Pro Tip: Use the utm_content parameter to distinguish between multiple placements in the same campaign. A single product launch might have codes on the box lid, the insert card, and the shipping label. Without utm_content, all three look identical in your analytics.
Key Takeaways
Dynamic QR codes paired with branded short links and UTM parameters are the minimum viable setup for any QR campaign worth measuring.
| Point | Details |
|---|---|
| Always use dynamic codes for print | Dynamic codes let you update destinations and pull analytics without reprinting. |
| UTMs are non-negotiable | Append UTM parameters before generating the code so every scan is attributed correctly in your analytics platform. |
| Design for the viewing distance | Minimum 2 × 2 cm for close-range print; scale up proportionally for posters, OOH, and signage. |
| Include a CTA and a fallback URL | A benefit-led CTA increases scan rates; a human-readable URL keeps the campaign accessible to non-scanners. |
| Rdyrct for privacy-first campaigns | Rdyrct provides branded short links, dynamic QR codes, a UTM builder, and analytics without storing IP addresses. |
The gap between what QR codes promise and what most campaigns deliver
Most QR code campaigns fail for one reason: the code is an afterthought. It gets added to a design after the copy and layout are finalized, dropped into a corner with no CTA, linked to the homepage, and never tested in print. Then the marketer concludes QR codes do not work.
What actually works is treating the QR code as the conversion mechanism, not the decoration. That means the destination page is built specifically for the scan, the CTA tells the user exactly what they get, and the analytics are set up before a single sheet is printed. The 37% average click-through rate cited in the Forbes survey is what aligned placement, offer, and destination can achieve.
The privacy angle is also underappreciated. Marketers who collect scan data through platforms that retain IP addresses are accumulating compliance risk they often do not account for. As state-level privacy laws expand across the U.S., the question of what your analytics stack stores is becoming a real operational concern, not just a philosophical one. A tool that gives you device, referrer, and location data without IP retention is not a compromise. It is a smarter default.
Rdyrct makes QR campaign tracking straightforward
If you have been running QR codes without clean attribution, Rdyrct fixes that in one setup. You get branded short links on your own domain, dynamic QR codes you can update without reprinting, a built-in UTM parameter builder, and real-time analytics covering device type, referrer, and location — all without storing IP addresses.

For small business owners and marketing teams, the practical benefit is this: one platform handles the short link, the QR code, and the scan analytics. No stitching together three separate tools. No IP retention creating privacy notice headaches. The free plan covers basic use, and paid tiers unlock custom domains, branded QR codes, and longer analytics history.
Start your first tracked QR campaign on Rdyrct’s free plan today.
Useful sources
- The Role Of QR Codes In Marketing And Tips For Making Them A Success — Forbes Business Council, 2025. Source for the 95% first-party data adoption figure, weekly scan engagement rates, and the 37% average click-through rate cited in the BLUF and measurement sections.
- After 100+ Scans, I Found the 6 Best QR Code Generators — G2. Covers QR code generator types, pricing tiers, and the distinction between static and dynamic code support. Used in the types and creation sections.
- Rdyrct — Short links that carry your brand — Rdyrct product page. Source for privacy-first analytics capabilities (no IP storage), branded QR code features, UTM builder, and custom domain support. Used in the case study and promo sections. (Brand E-E-A-T signal)
- Free QR Code Generator for Print — GridStripe — GridStripe. Source for error-correction level guidance (Level M for standard print, Level H for outdoor or logo overlays) and SVG export recommendations.
- Free QR Code Generator — Adobe Express — Adobe. Source for minimum size guidance (2 × 2 cm for close-range scanning), static vs. dynamic code definitions, and logo overlay design notes.
- Free QR Code Generator — Canva — Canva. Background on dynamic QR code mechanics and the ability to update destination URLs without reprinting designs.