Back to Blog

How to Make a QR Code for a Link (Free)

You have a URL and you want a QR people can scan. The fast way takes 60 seconds. The smart way makes that same code editable after printing and shows you every scan.

Karan Bhakuni
Karan Bhakuni
Founder, Flyn
GuideJun 26, 202612 min readUpdated Jun 26, 2026
How to Make a QR Code for a Link (Free)

Static vs dynamic: the upgrade that matters

Every QR code you generate is technically static. The word dynamic QR code gets thrown around like it is a different file format. It is not. A dynamic QR is just a static QR that encodes a short link instead of your final destination. The dots never change. The redirect behind the short link does. That one layer of indirection buys you two things you cannot get any other way: the ability to change the destination after printing, and the ability to count scans.

Comparison of a static QR that encodes a raw URL (locked at print, no scan data, reprint to change) versus a dynamic QR that encodes a Flyn short link (editable anytime, every scan logged, geo and device on Pro)
Both are the same square of dots. The difference is whether you encoded a raw URL or a short link you can steer.

Where the dynamism really comes from

Say you encode flyn.to/menu into your QR. The code is permanent. But flyn.to/menu is a Flyn short link, and you control where it redirects. Today it points to your summer menu PDF. In autumn you edit the redirect to the new PDF. Every printed code, every table tent, every sticker now points to the new menu. You reprinted nothing. That is the entire trick, and we break it down further in dynamic QR codes for print and digital.

Side by side

PropertyStatic QR (raw URL baked in)"Dynamic" QR (short link baked in)
Destination after printingLocked foreverEditable anytime via the redirect
Scan trackingNoneEvery scan logged
If the target page movesCode is deadRepoint and keep going
Fix a typo in the URLReprint everythingEdit the link, code unchanged
Cost on FlynFreeFree (scan count + timing); Pro for geo/device/referrer

Notice the QR generation is free either way. The difference is whether you aimed it at a raw URL or at a short link you can steer.

Design a QR code that still scans

A QR code is only useful if a phone reads it on the first try. Beautiful codes that fail to scan are worse than ugly codes that work. Four factors decide whether yours scans reliably: size, quiet zone, contrast, and error correction.

Five checks before printing a QR code: at least 2 by 2 cm, a four-module quiet zone, dark code on a light background, error correction level Q, and a test scan before a large print run
Five checks that decide whether your code scans in the real world.

Size for the viewing distance

The rule of thumb is a 10:1 ratio: for every 10 units of scanning distance, the code needs about 1 unit of width. A code scanned from across a room must be far bigger than one on a business card. Get the exact numbers in the QR code size guide.

Quiet zone and contrast

The quiet zone is the empty margin around the code, and it needs to be roughly four modules wide. Crowd the code with text or a border and scanners choke. For contrast, keep dark dots on a light background. Inverted (light on dark) codes scan poorly, and low-contrast color pairs fail outright.

  • Keep a clear margin on all four sides.
  • Dark code, light background, never the reverse.
  • Avoid placing the code over busy photos.
  • Never stretch the code out of square.

Error correction

Error correction lets a code still scan when part of it is damaged or covered, at the cost of denser dots. Higher levels let you place a small logo in the center. If your code won't read, our QR code not scanning guide walks the fixes in order.

Watch out: A long raw URL packs the code with dots and makes it harder to scan at small sizes. Encoding a short link keeps the pattern sparse and far more reliable, which is one more reason to shorten before you generate.

Track scans on your QR code

If you printed a static QR with a raw URL, you have no idea whether anyone scanned it. If you encoded a Flyn short link, you have data. This is the second reason the short-link layer earns its keep: every scan is a click on the short link, and Flyn logs every click.

What you get for free

On any plan, including free, you see total scan count and timing (when scans happened) on a 30-day window. That alone answers the big question: is this code actually working? You can tell if the table tents outperform the poster, or if scans spike after an event.

What Pro adds

For deeper analysis, Pro unlocks geo, device, and referrer breakdowns: where scans came from, on what kind of phone, and through what path. That's how you learn the campaign skews iOS, or that one city drives most of your scans.

MetricFreePro
Total scan countYesYes
Scan timingYes (30-day window)Yes
Geo breakdownNoYes
Device breakdownNoYes
Referrer breakdownNoYes

The full walkthrough, including how to read the patterns, lives in how to track QR code scans. If you're running a campaign, the tracking layer is what turns a QR from decoration into a measurable channel, which we cover in QR codes marketing strategy.

Common mistakes to avoid

Most QR failures are predictable and preventable. Here are the ones we see most, roughly in order of how much they hurt.

Encoding a raw URL on anything printed

The cardinal sin. You lose editability and tracking, and one moved page kills the whole run. Encode a short link instead. This single change fixes most regrets.

Not testing before printing

A code that decodes wrong, or to a typo'd URL, is invisible until someone scans it in public. Always verify with a real phone and the QR code reader first.

  • Too small for the distance: a poster code sized like a sticker won't scan from the curb.
  • No quiet zone: crowding the code with text breaks it.
  • Low contrast or inverted colors: light dots on dark fail often.
  • No call to action: people need a reason to scan, so add a short line like "Scan for the menu."
  • Stretched or distorted: always keep the code perfectly square.

Trusting a code you didn't make

QR codes can hide malicious links. Before you scan or repost an unknown code, decode it with the QR destination audit to see exactly where it goes.

Tip: Build a tiny pre-print checklist: short link encoded, scanned on two phones, sized for distance, quiet zone clear, call to action present. Five checks, zero reprints.

Printing and placement

A perfect code in the wrong place still fails. Printing and placement are where good codes die in the real world, so treat them as part of the design, not an afterthought.

File format and material

Use SVG for print so the code stays crisp at any size, and PNG only for screens. Print on a matte surface when you can: glossy and laminated finishes throw glare that blinds cameras under bright light. Keep strong contrast between the dots and the material.

Placement that gets scans

  • Reachable: a code on a billboard nobody can get close to is decoration, not a link.
  • Eye level and steady: people scan with two hands, so put it where they can hold a phone comfortably.
  • Lit: dark corners kill scan rates. Make sure the code is well lit.
  • Flat: codes wrapped around curved bottles or mugs distort. Keep the scan area as flat as possible.

Account for the moving target

This is where the editable short link pays off one last time. Printed materials live for months or years. Menus change, sales end, profiles move. Because your code points at a short link, you repoint the destination whenever life changes and the printed code keeps working. Start the whole thing right: shorten the link, create your free account so you can edit it later, then generate the QR from the QR code generator. Three minutes now, no reprints ever.

Frequently Asked Questions

How do I turn a link into a QR code?
Paste your full URL (including https://) into a QR code generator and download the image. With the free Flyn QR code generator you get a clean PNG or SVG in about a minute, with no signup, app, or watermark. The smarter version is to shorten your link first, then generate the QR from that short link. That way you can edit where the code points after it's printed and see how many people scan it. The QR itself is permanent either way; pointing it at a short link is what makes the destination changeable.
Are QR codes free to make?
Yes. Generating a QR code for a link is free on Flyn, with no account required and no expiry on the image you download. The code is yours to use anywhere, including commercial print. Free also covers the useful tracking basics if you encode a Flyn short link: you'll see total scan count and timing on a 30-day window on any plan. The only paid tier, Pro, adds deeper analytics like geo, device, and referrer breakdowns. So the code, the download, and basic scan counting cost nothing.
Can I edit a QR code after printing it?
You cannot edit the QR image itself: the destination is physically baked into the dots and never changes. What you can edit is where the code points, but only if you encoded a short link instead of the raw URL. The QR holds something like flyn.to/menu, and you change the redirect behind that short link anytime. Every printed code instantly points to the new destination with zero reprinting. This is exactly what people mean by a dynamic QR code. If you encoded the raw final URL, you're stuck and must reprint.
How do I make a QR code that I can track?
Encode a short link, not the raw URL, then generate the QR from that short link. On Flyn, every scan registers as a click on the short link, so you automatically see total scans and when they happened on any plan, including free, over a 30-day window. For where scans come from, what devices people use, and referrer paths, upgrade to Pro for geo, device, and referrer breakdowns. The key step is the short link: a raw-URL QR has no tracking layer at all, so the data simply doesn't exist.
What size should a QR code be?
Use the 10:1 rule: the scanning distance should be about ten times the code's width. A code scanned from one meter away needs to be roughly 10 cm wide; a poster read from across a room needs to be much larger. Business-card codes can be small because they're scanned up close. Always leave a quiet-zone margin of about four modules around the code, and keep it square. When in doubt, size up; a code that's slightly too big still scans, while one that's too small fails. See the Flyn QR code size guide for exact measurements by use case.
Do QR codes expire?
The QR code image never expires; it's just an encoded pattern and will scan years from now. What can expire is the page it points to. If you encoded a raw URL and that page goes offline or moves, the code leads nowhere. If you encoded a short link, the code still works and you simply repoint the redirect to a live page. On Flyn, the QR and the short link don't expire on you; note that free scan analytics show a 30-day window, but the link and code keep functioning beyond that.
What's the difference between a static and a dynamic QR code?
Technically every QR code is static: the data is fixed in the dots. A dynamic QR code is just a static QR that encodes a short link rather than the final URL. The dots never change, but the redirect behind the short link does, which lets you change the destination after printing and track every scan. Flyn's generator produces a static code; pointing it at a Flyn short link is what gives you the dynamic behavior. The dynamism always lives in the short-link layer, never in the QR image itself.
Can I put a logo in the middle of my QR code?
Yes, within limits. QR codes include error correction that lets them still scan when part of the pattern is obscured, so a small logo in the center usually works at higher error-correction levels. Keep the logo small (well under 30 percent of the area), maintain strong contrast, and always test the result on a real phone before printing. Encoding a short link helps here too: it keeps the dot pattern sparse, leaving more room for a logo without breaking the scan. If it stops reading, shrink the logo or raise the error-correction level.

Ready to try Flyn?

Free plan includes 25 links/month, full analytics, and access to all 30+ free tools above. No credit card required.

Already a member? Log in

Karan Bhakuni
Karan Bhakuni· Founder, Flyn

Karan Bhakuni is the founder of Flyn. He writes about branded links, click analytics, and the link-management tooling growth teams and creators actually need, drawn from building Flyn and reading a lot of user feedback.