QR Code Generator

Create a QR code from a link or text and download it as a PNG, made in your browser.

Advertisement

How to use QR Code Generator

1. Type or paste a URL or any text into the URL / Text box. The live preview under the form redraws the code as you type.
2. Choose a QR Code Resolution: Standard (300 x 300 px), High-Res (500 x 500 px) or Print Quality (800 x 800 px). Then click Generate QR Code.
3. The finished code appears on the result card. Click Download File to save qrcode.png. The message shows the exact pixel size of the image.

Key features of QR Code Generator

🔒 Encoded on your device

The symbol is built by the qrcode-generator library and painted onto a canvas in your browser. The text you type is not sent to any server or web service.

🧩 Smallest symbol that fits

The library picks the smallest QR version that holds your text, at error correction level M (about 15% of the symbol can be damaged and still scan). If the text is too long for M it falls back to level L, and beyond that you get a message asking for shorter text.

🖼️ Sharp PNG output

Each module is drawn as a whole number of pixels, with a four-module white quiet zone around the code, so the PNG stays crisp and scannable. Because of that rounding the final size can differ from the resolution you picked, by up to about 85 px for long text; the line under the preview shows the exact size before you save.

About QR Code Generator

QR Code Generator encodes whatever you type as UTF-8 with the qrcode-generator library, so accented characters and symbols survive, then draws the modules in black on white onto a canvas and exports it as a PNG. Nothing is uploaded; the page works with your text in memory and hands you the finished image.

It is useful for putting a link on a printed flyer, adding a contact card or Wi-Fi string as text to a sign, or sharing a URL on a slide. The output is black on white only, with no logo, colour or SVG option, and long text will not fit in any QR version.

When to use QR Code Generator

A link that has to go into a printed PDF, such as the registration page in an event programme or a feedback form on an invoice: generate the PNG here, then place it on the page with Add Image to PDF, which accepts PNG files. Pick Print Quality (800 px) so the code stays sharp on paper.

A URL for a business card or a name badge needs far less. Standard (300 px) fits the small space, and at 300 dots per inch it prints one inch square.

A long URL full of tracking parameters makes a dense code: more characters mean more modules, and at a fixed pixel size each module gets fewer pixels, which a phone camera finds harder to read from a distance. Watch the module count under the live preview; if it climbs, shorten the URL or move up a size.

Plain text works the same way: a serial number, a booking reference or a Wi-Fi string, and whoever scans it gets the text to copy. For a code that has to sit on a poster built from an image, save the PNG and make the page with PNG to PDF.

Tips and troubleshooting

  • Generate QR Code is greyed out while the text box is empty (the preview reads "Type something to see the code") and while the text is too long to encode, in which case the preview turns red and shows the reason.
  • The line under the preview, for example "25 x 25 modules, 495 x 495 px when saved", gives the density of the symbol and the exact size of the PNG before you click: 25 modules plus a 4-module quiet zone on each side is 33, and High-Res gives 15 px per module, or 495 px.
  • Spaces at the start and end of the text are removed before encoding. Text is encoded as UTF-8, so an accented character or a symbol takes more than one byte and the limit is reached sooner than with plain letters and digits.
  • The file is always called qrcode.png. Process Another File returns you to the form with your text and size still in place, so change one thing and generate again; rename the downloads if you make several.
  • The white border in the PNG is the quiet zone the QR standard requires, four modules on every side. Do not crop it when you place the code on a page, and leave a plain background around it.
  • "The QR encoder did not load" means the qrcode-generator library could not be fetched from the CDN. Check your connection and reload the page; once loaded, generating needs no network at all.

How QR Code Generator works in your browser

The page loads one library, qrcode-generator, from cdnjs. When you type, a 120 millisecond timer waits for you to pause, then the text is converted to UTF-8 bytes and passed to the encoder with type 0, meaning the smallest symbol version that fits, at error correction level M. If the data does not fit at M, the tool tries once more at level L before giving up with the too-long message. The tool takes the module count of the result, adds four on each side for the quiet zone, divides your chosen size by that total and rounds to get the pixels per module, then fills a canvas white and paints a black square for every dark module. The preview canvas is drawn at the full output size and scaled to 220 px by CSS, so it is the same picture you will download.

Generate QR Code repeats the encoding on a fresh canvas and calls canvas.toBlob to produce a PNG. The Blob is shown on the result card through an object URL and offered by Download File. The text, the grid and the PNG exist only in this tab; no request is made with your text, and reloading the page clears everything.

Frequently asked questions

Is the text I enter sent anywhere?

No. The code is generated by a JavaScript library in your browser and drawn onto a canvas. No request carrying your text is made to any server.

What size is the PNG?

You choose 300, 500 or 800 px. The tool rounds to a whole number of pixels per module so the code stays sharp, so the saved size can be up to about 85 px larger or smaller than the option you picked when the text is long (370 px for Standard, for example). The line under the preview and the result message show the exact size.

Why does it say my text is too long?

A QR code holds a limited amount of data, and the limit is lower at higher error correction. The tool tries level M first and then level L; if the text still does not fit, shorten the URL or text and try again.

Can I make a QR code for a Wi-Fi network or a contact card?

Yes, if you already have the text in the format phone cameras expect, such as a WIFI: string or a vCard. The tool encodes exactly what you paste; it does not build those formats for you, so check the text before you print.

Why is my code hard to scan?

Usually because it is dense or printed small. Every extra character adds modules, and at the same pixel size each module gets fewer pixels. Shorten the text, choose a larger resolution, keep the white border and print it black on white.

Does the code expire or stop working?

No. The PNG is a plain encoding of your text with no redirect service in between, so nothing on this site is involved when someone scans it. A code containing a URL works for as long as that URL does.

Last reviewed