Free tools

Free QR code generator

Type a link or any text and the code appears as you type. Download it as a PNG or an SVG. It holds your link directly, with no redirect in between, so it never expires and nobody counts your scans.

Runs in your browser. Nothing you type or open on this page is uploaded; it works with your connection switched off once the page has loaded.

Colours and options

How to use it

  1. Paste the link, or type the text, that the code should hold. The code updates as you type.
  2. If you want, open “Colours and options” to change the colours, the error-correction level or the PNG size.
  3. Scan the preview with your phone camera and check it opens the right thing.
  4. Download a PNG for documents and web pages, or an SVG for print (it stays sharp at any size).

Need this in bulk, or from code?

The same job is one HTTP call to our API: GET /v1/qr. 100 calls a day free with no key; paid plans from $9 a month. One key works for every API.

Read the API docs for this See the API plans

Questions

Do these QR codes expire?

No. The code holds your link or text itself, not a short link through our servers, so it keeps working for as long as the page it points to does. There is no account or subscription behind it that could lapse.

Can I change where the code points after I print it?

No. To point somewhere else, make a new code. Services that let you edit a printed code do it by sending every scan through their own redirect, which is also how those codes stop working when the subscription ends.

Do you track who scans it?

No. There is no redirect, so nothing sits between the scanner and your link to count scans, us included. The code is made in your browser and we never see what you encode.

Which error-correction level should I pick?

M suits most uses. Higher levels (Q, H) let the code survive more scratches, dirt or a curved surface, at the cost of a denser pattern; L gives the smallest pattern for a long link on a small label.

How much can one code hold?

Up to 2,953 bytes of text at level L, fewer at higher levels. Long codes get dense and harder for phones to read from a distance, so keep links short where you can.

Why does it warn me about my colours?

Scanners look for dark marks on a light background with good contrast. A light code on a dark background, or two colours close in brightness, may not scan on every phone.

Related free tools