You need a code for a Wi-Fi sign or a box of business cards. One generator wants your email; the next wants a card number for a free trial.
Do you have to pay for a QR code? Usually not. Denso Wave, which created the format, charges nothing to use it, and says commercial use needs no license either: "no licensing contract is required for its use." What generators sell is a service around the code, mostly a redirect you can change after printing.
If the data fits inside the pattern (a Wi-Fi password, a contact, a phone number) or the link points to your own site, paying usually buys nothing. Find your case below before you type in that card number.
Are QR Codes Free? The Code Is, the Redirect Isn't
Are QR codes free? The code itself is: anyone can generate one, print it and use it commercially without paying a cent. So do QR codes cost money? Only when you buy a service that sits between the scan and the page, and only a dynamic code needs a monthly fee to keep working.
A QR code subscription pays for four things:
- A hosted redirect. The vendor's short link sits inside your code, and you can repoint it after printing.
- Scan statistics. Each scan gets counted as it passes through that redirect.
- Hosted content. A contact page, a PDF, a photo gallery, a video or a link-in-bio page on the vendor's servers. Your code then holds a link to them, which makes it dynamic.
- Team management. Several users, with roles, on the same codes.
A code that carries your data or your own address is static; one that carries the vendor's short link is dynamic, and depends on that vendor and on your account. Here's static vs dynamic, side by side.
You rent the forwarding, like a mail-forwarding service after a move; the letters were always yours.
The Cases Where Paying Is Useless
Each case below needs only a free static QR code, unless the condition at the end applies.
- Wi-Fi. Name and password live in the pattern, so the phone offers to join without a server, even offline. Your phone makes one too: on iPhone, Passwords app, Wi-Fi, tap the network, Show Network QR Code; on most Android phones, Settings, Network & internet, Internet, tap the network, Share. It never tips toward paying. A new password means a new code, though, and anyone who photographs it can read the password, so print it for a guest network whose password won't change.
- Contact card (vCard). The contact saves straight into the phone, with nothing hosted. Keep three or four fields (more below). It tips when your details change often and you have no site; then a hosted contact page, a paid dynamic link, is worth paying for.
- Text, email, text message, call. Plain text shows offline; the others pre-fill an email or SMS, or bring up the number to call. A new address or number means reprinting, so print a generic inbox or main line. Keep text short: 310 accented characters already make a 69 x 69 grid, against 25 x 25 for a short link.
- A link to your own site. A static code to a short path like yourcafe.com/menu works as long as you own the domain, and your registrar or DNS provider can forward that path wherever the page moves, so the printed code never changes. Pay only if you lack host access and the page moves often. Point the same code at an Instagram profile and it dies when that profile moves.
- App store link. Official store links don't change while the app exists. Two stores mean two labeled codes, or one page on your domain that sends each phone to its store. One code that detects the phone needs a server, yours or a paid one.
- An invitation or a one-off event. The card won't outlast the party. The only danger is a generator in trial mode that hands you a rented code without saying so. Check the file before printing (next section).
- A small run you can reprint. A second batch usually costs less than twelve months of a plan, unless "reprintable" really means "already handed out", like mailed cards or packaging on shelves.
- A screen or a slide. Moving a link from screen to phone, slide or document? The generator built into Chrome does the job, until the code goes on paper with a link that could change, or has to wear your brand.
Case on the list, condition not met? Close the pricing tab.
Is Your 'Free' QR Code Actually Rented?
A code sold as Wi-Fi or a contact card can still be a rented link that works until somebody else's plan ends. Checking takes 30 seconds.
- Scan it with your phone's own camera and read what it offers before you tap.
- If it offers an action (join the network, save the contact, call, send a message), the data is in the pattern. Nobody can switch it off, and no account stands behind it.
- If it offers a web link instead, the Wi-Fi or contact card is a hosted page behind a rented link, live only as long as the vendor keeps it running.
For ordinary links, a preview that starts with your own domain means static; a short domain you've never heard of means rented. Our expiry guide has the full link check, and what to do if a code already died.

Before printing, test the file you downloaded rather than the generator's on-screen preview. Open it on a screen and scan it with another phone.
Why a Full Contact Card Needs a Bigger QR Code
A full contact card of 375 characters (name, company, job title, two phone numbers, email, website, address, a note) makes a 77 x 77 grid at error-correction level M; a short link of about 25 characters makes 25 x 25. We shrank and blurred both codes and had Apple's barcode reader on a Mac try each size; the full card needed a print roughly 2 to 3 times as wide, in our simulation. An embedded photo doesn't fit in practice: a 4 KB image overflows even the largest QR code, version 40, with 177 x 177 squares. See how small each one can print.
A static code holding a short link to a contact file (.vcf) or a contact page on your own domain solves it. It stays at 25 x 25 or 29 x 29, depending on the link's length, and you update the card without reprinting. A generator's 40-character dynamic link makes 29 x 29 too.

Never Pay for These
A generator that charges for any of these five is charging you for the basics:
- A vector SVG: sharp at any size, and the default file for anything going to press.
- A high-resolution PNG: big enough to print at its final size without the edges going soft.
- Colors: your brand's, with enough contrast for a camera to tell the squares apart.
- A logo: yours, in the middle of the code.
- No watermark: nobody else's name stamped on your code, your menu or your packaging.
When Paying Is Worth It (Try the Free Workaround First)
Four situations can justify a subscription.
- If the destination will move, on a run you can't redo (packaging, signage, thousands of flyers), the free workaround is your own short path and redirect (the own-site case above). It gives out with no domain, no host access and nobody technical, or many codes to repoint often. Paying is then insurance, so first ask what happens to printed codes when you stop paying, since policies vary by vendor.
- For scan counts, the free workaround is to tag the destination and read the visits in your analytics, with the tags in your redirect (inside the code, a 108-character tagged link jumps to 45 x 45). It falls short when you want counts per placement outside your analytics, or every scan, including people who give up before the page appears.
- For files you keep replacing (menus, catalogs, instructions), publish the file at a fixed address on your site and replace it under the same name. That breaks down with no website, or several files or languages.
- With many codes and several people, someone technical can batch-make static codes with a free script if the codes never change. That stops working when a non-technical team edits them every week and needs roles and an edit history, without filing an IT ticket.
With a domain (plus a site for the files case) and a few minutes of setup, paying for the first three mostly buys comfort and delegation. For a big run you can't redo without technical help, or a team editing all day, the subscription is a real service.
Where We Stand (Yes, We Sell QR Codes)
Oh My Code sells QR codes, so weigh everything above with that bias in mind. We told you to ask every vendor what happens to printed codes when the payments stop, so here's our answer.
If you stop paying, our dynamic codes stop redirecting while the account is inactive. Nothing is deleted, and everything comes back when you reactivate. Static codes keep scanning, because nothing of ours sits inside them.
Our free generator encodes your link exactly as you typed it, needs no account and downloads as PNG or SVG. Your own domain still comes before any rented link, ours included, so if you own one, point the code there.
No domain of your own, and you want to change the destination after printing? That takes a dynamic code. Ours come with a 14-day trial, then start from $4.99 a month, and a pay-once option exists too.
Make a free code that's actually yours
QR Code Cost FAQ
Do you have to pay for a QR code?
No, not for the code: Denso Wave, the format's creator, lets anyone use it free, commercial use included. You pay only for a service (an editable redirect, scan statistics, hosted pages, team features), and only a dynamic code needs a monthly fee to keep working. If the data fits in the code or the link points to your own site, a free static code does the job.
How much does a QR code cost?
$0 for a static code, from a free generator, your browser or, for Wi-Fi, your own phone; printing is extra. A dynamic code is usually a subscription after a trial; some vendors also sell a one-off plan, and a few keep a small free tier. France's consumer agency, the DGCCRF, cites a 5-euro personalized QR code with a 50-euro monthly renewal buried in its terms as a hidden subscription. Before you enter a card, check the renewal price.
Can I move a printed QR code to another service?
A static code has nothing to move: it carries your data or your own address, readable by any phone. A dynamic code holds the vendor's short link, so only that vendor can forward it. Switching means a new code, or a sticker over the old one on a small run. Point a code at your own domain and you can forward it anywhere.





