All processing happens in your browser.
A QR symbol is a measured grid
The square is not a picture of your text. It is a grid of dark and light modules that carries encoded bits, plus fixed finder patterns and a clear border. For a standard QR Code, the grid width is S = 17 + 4v modules, where v is the version number from 1 to 40. Version 1 is 21 modules wide; version 3 is 29. A longer payload or a stronger error-correction setting can require a larger version, so the same 60 mm label can produce either broad, forgiving modules or a much finer pattern.
The formula describes geometry, not a promise that any payload fits a particular version. Character encoding, correction level, the required functional patterns, and the generator's choice of mask all affect capacity. It also says nothing about a camera finding the mark through glare or a printer holding square edges. Its value is practical: it lets you count whether a proposed physical size gives the modules room to exist.
Worked label calculation: a 60 mm equipment tag
Suppose a label has a 60 mm square reserved for the complete symbol, and the printer can reliably make 1.5 mm modules. A scanner needs a quiet zone of four modules on each side, so only 60 / 1.5 - 8 = 32 modules remain for the encoded grid. Version 3 needs 29 modules; with its border it occupies 29 + 8 = 37 modules, or 55.5 mm. It fits with 4.5 mm of spare space. Version 4 needs 33 + 8 = 41 modules, or 61.5 mm, so it does not fit at that pitch.
That result assumes the 60 mm area is truly square, the 1.5 mm pitch survives the selected stock, and no logo intrudes into the grid. It is a layout decision, not a capacity test for an arbitrary contact card or calendar record. If the finished payload selects version 4 or above, enlarge the allocated area, shorten the payload, or use a process that can reproduce smaller modules before approving the label.
What the export contains
Choose a tab according to the action after the scan: a link opens an address, a phone value opens a dialler, an event offers calendar details, and a WiFi record offers network settings. The downloaded PNG or SVG stores that payload directly. There is no redirect controlled by this site between the scanner and a link, and no account record that has to remain active for the pixels to decode.
Direct storage has a consequence that matters on a printed sign: the image cannot be edited later. A revised address, password, meeting time, or contact number needs a newly generated file and a replacement print. For a destination that changes often, encode an address you control and maintain the page behind it; the QR image itself remains static.
Local generation has a concrete privacy boundary
The form values, generated matrix, logo processing, and decoder check run in this browser tab. A WiFi password or contact field is not sent to a QR Decode service to make the image. The useful boundary is the generation process itself: it protects the value you enter from this tool, but it cannot make a linked website private after somebody scans it, and it cannot protect a file once you attach it to an email or publish it.
Static also means there are no scan statistics here. The tool cannot report where, when, or how often a printed symbol was read because nothing contacts a tracking endpoint. That is appropriate for a private guest network, a one-off event card, or an asset tag; it is not evidence that a campaign was seen.
Test the physical object that people will scan
The preview checks whether the rendered design decodes from clean screen pixels. That catches an over-large centre image or a contrast change that has already destroyed the matrix. It cannot reproduce a curved bottle, an absorbent label, a glossy laminate, an out-of-focus camera, or a person approaching at an angle. Use the preview as an export check, then scan a proof made with the real printer and material at the distance and lighting of use.
A failed proof should be diagnosed as a reproduction problem before changing the payload: retain a plain dark-on-light control of the same data, compare it with the branded print, and alter one condition at a time. The sizing calculation above stops being useful when the symbol is distorted, cropped, hidden by artwork, or viewed under conditions where the camera cannot resolve its module boundaries.
Frequently asked questions
Can I generate a QR code for free?
Yes — every generator on this site is free, with no account, watermark, code limit, or trial period. Static codes cost nothing to keep alive, so there is nothing to charge for later.
Is there a 100% free QR code generator without a catch?
The usual catch is a dynamic code that redirects through the provider and dies when the free plan ends. Codes made here are static: the data is in the image itself, so no subscription can switch it off.
Can I change a static QR code after I print it?
No. The data is encoded in the image. Generate a replacement when a phone number, password, event detail, or direct destination changes.
Does a static QR code expire?
No. The bytes in the image do not expire. A linked website can still move or shut down, which is a property of the destination, not of the code.
Do you see what I type into the form?
No. Encoding, design changes, and logo processing happen locally in your browser, and the page verifies that these actions send no request containing your data.