RunTheTests
/

QR tools

14 tools that run in your browser. Nothing to install, nothing uploaded.

Generate QR codes from any text or URL, entirely in your browser. Unlike the many ad-supported QR services that log every URL you encode, there is no server here to log anything — the code is drawn locally and you download it directly. A plain QR code like this never expires, because it contains your text directly rather than a tracking link that can be switched off.

A QR code generated here contains your data, not a redirect

Many free QR services encode a short link on their own domain that redirects to your destination, which lets them count scans — and means your code stops working the day that service shuts down, changes its pricing, or decides your account has lapsed. Printed on packaging, a menu or a business card, that is a code with an expiry date nobody told you about. The codes here encode your text or URL directly into the symbol. Nothing is logged because there is no server involved, and the result keeps working for as long as QR codes exist, which is also why the destination cannot be changed afterwards.

Error correction, size, and why a code fails to scan

QR symbols carry redundancy at four levels, from about 7% recoverable at level L to about 30% at level H, and higher redundancy means a denser grid for the same data. That trade-off decides most real failures. A code that must survive being printed small, on a curved surface, or with a logo covering the centre needs a high level; a clean on-screen code does not. The other two causes are mundane and just as common: printing the symbol too small for the scanning distance, and cropping away the quiet zone — the blank margin of about four modules that a scanner needs to find the symbol’s edges.

Wi-Fi and contact codes are plain text in a standard format

A Wi-Fi join code encodes the network name, the security type and the password as a short structured string, and a contact code holds a vCard. Both are worth understanding for what they imply: the password in a Wi-Fi code is not encrypted, merely encoded, so anyone who photographs the printed code has your network key. That is exactly right for a guest network sticker and exactly wrong for the main one. Generating these locally at least means the password was never transmitted to anyone while the code was being made, which is not true of most online generators.

Frequently asked questions

Will a QR code made here ever expire?

No. The code contains your text or URL directly, so there is no intermediary that can stop working. Many free generators encode a redirect through their own domain in order to count scans, which means the code dies with that service or with your account — a real problem once it is printed on packaging or a menu. The trade-off is the honest one: because the destination is in the symbol, it cannot be changed afterwards.

How big should I print a QR code?

As a working rule, the printed code should be at least a tenth of the distance it will be scanned from — a code read at a metre wants to be around 10 cm across. Two other things decide it: keep the quiet zone, the blank margin of roughly four modules on every side that scanners need to find the symbol, and raise the error correction level for anything printed small, curved or with a logo over the centre.

Is the password in a Wi-Fi QR code encrypted?

No. A Wi-Fi join code encodes the network name, security type and password as a short structured string that any scanner can read as plain text. That is exactly right for a guest network sticker and exactly wrong for your main network, since anyone who photographs the printed code has the key. Generating it locally at least means the password was never transmitted to a third party while the code was being made.

Why does my branded QR code fail to scan?

Usually one of three things: a logo covering more of the centre than the error correction level can recover, insufficient contrast between the foreground and background, or an inverted colour scheme — most scanners expect dark modules on a light background and struggle with the reverse. Keep the contrast high, raise error correction before adding a logo, and test the printed code with more than one phone before committing to a print run.