QR codes
A QR code you can change after it is printed.
Static QR codes freeze the destination in ink. A gc.mw QR encodes the short link, so the destination stays editable and every scan is counted.
Shorten something now
What you get
One URL, two formats
gc.mw/code.qr is a 512-pixel PNG; gc.mw/code.svg is vector for print. Query parameters set size, foreground and background colours.
Scans counted separately
A visit that arrives through the QR endpoint is recorded as a scan, so you can compare print placements against digital ones.
Short means scannable
A 10-character link produces a QR with fewer modules than a 40-character one — larger squares, more forgiving of bad lighting and small print.
Logo and colours
Paid plans can place a centre logo and pick brand colours; the generator keeps error correction high enough that the logo does not break scanning.
Cached for print runs
QR images are cached for a day at the edge, so a code on 50,000 flyers costs nothing to serve.
Works without an account
The free QR generator on this site renders codes in your browser; nothing is uploaded. Use it for Wi-Fi, text, vCards and plain URLs.
How it works
Shorten the link
Create a gc.mw link for the destination you want to print.
Download the QR
Open gc.mw/code.svg for print or .qr for screens. Choose colours with ?fg= and ?bg=.
Print, then keep editing
Change the destination any time. The printed code keeps working because it points at the short link, not the destination.
Questions people ask
Do gc.mw QR codes expire?
The QR works as long as the link does. Links on a paid plan never expire while the plan is active; free-account links last 12 months and anonymous links 30 days, so buy a lifetime link before you send anything to print.
What size should I print?
At least 2 cm across for arm's-length scanning, larger for posters. Keep a quiet zone of four modules around the code and use the SVG for anything printed.
Can I generate a QR for something that is not a link?
Yes: the free generator on this site handles text, Wi-Fi credentials and vCards entirely in the browser. Those codes are static and cannot be tracked or edited.
Also on gc.mw
Branded links
A gc.mw link is 10 characters. Add your own alias on Pro — gc.mw/launch, gc.mw/menu — and every click shows up in analytics within seconds.
Link in bio
gc.mw/@yourname holds your links, your contact card and a QR code that saves you to a phone. Names from five characters are free; shorter ones are sold.
QR codes you can re-point after they are printed
The QR code on a laminated table card outlives every decision that produced it. The menu moves, the campaign ends, the agency changes, and the code is still there in the plastic. Whether that is an asset or a liability comes down to one question asked at design time: does the code encode the destination, or does it encode a link you control?
The two URLs
Every gc.mw link has its QR at two addresses. gc.mw/k7Rq.qr returns a PNG, 512 pixels by default. gc.mw/k7Rq.svg
returns vector, which is what you send to a printer. Both take size between 96 and 2048, and fg and bg as hex
colours, so gc.mw/k7Rq.svg?fg=1a1a2e&bg=ffffff is a complete print asset produced by typing a URL.
Images are cached for a day at the CDN with a week of stale-while-revalidate. A code on 50,000 flyers costs nothing to serve, because the image never changes — the redirect behind it does.
Why link length shows up in the print
A QR code is a grid of modules. More data means more modules, and at a fixed printed width more modules means each one is physically smaller. Smaller modules are less forgiving of low light, cheap paper, a curved surface, or a camera held at an angle by someone walking past.
A four-character gc.mw code makes https://gc.mw/k7Rq — eighteen characters including the scheme. A typical
campaign URL with UTM tags runs past 150. That difference is one or two version steps in the symbol, which is
visible as chunkier squares on the same card.
This is the one place where our shorter codes are not a rounding error. Everywhere else, four characters versus seven is a talking point. On a bus shelter it is the difference between a scan and a shrug.
A worked example
A conference printed 400 lanyard backs with gc.mw/sched — an alias, not a random code, because attendees also
typed it.
Day one, the schedule page fell over. The destination was re-pointed to a static PDF on another host in about ten seconds; the redirect cache invalidates on save, so the change was live before the next scan. Nobody in the hall knew anything had happened. The lanyards were not the problem, because the lanyards did not contain the answer — they contained a pointer to it.
At the end of the event the split mattered more than the total. Scans on the lanyard code ran ahead of clicks on the same link from the emailed agenda by roughly three to one, which told the organisers where to put their money the following year. One number, and it only exists because scans and clicks are recorded separately.
Error correction, logos and the trade behind them
QR codes carry redundancy so a damaged symbol still reads. More redundancy means more modules, which means smaller squares at the same width — the same trade as link length, arriving from a different direction.
Putting a logo in the centre deliberately damages the symbol and leans on that redundancy to survive. It works, up to a point, and past that point the code scans on your desk and fails on a wall. Our generator caps the logo at a fraction of the symbol and raises the error correction level to match; if you want a bigger logo, print a bigger code rather than a more damaged one.
Codes that have nothing to do with links
QR Code Generator
Open the full toolWi-Fi credentials, a phone number, a vCard, plain text. These render entirely in your browser — nothing is uploaded, which matters when the payload is your guest network password. They are static by definition, so they cannot be tracked or re-pointed, and that is the correct trade for a code taped inside a cupboard door.
For anything that goes in front of customers, shorten first. Make the link on the branded links page, print the SVG, and keep the destination editable for as long as the print survives — which, in our experience, is always longer than anyone planned.