Premium apps Part of Printshop

QR Code Generator (print-ready)

QR codes for links, text, Wi-Fi, contacts and more — as vector PDF, SVG and PNG.

The address, text, e-mail address, phone number or "latitude, longitude". Not used for Wi-Fi.

More options

Only used for the code; it is not shown in the result or stored in the share link.

Leaves an empty square in the centre for a logo and checks it against the error correction.

Try an example: Link to a website · Wi-Fi guest cards · Sheet of small codes with a logo-safe centre

More about this tool

How it works

Encode a link, text, Wi-Fi login, contact card, e-mail, phone, SMS or map location as a QR code following ISO/IEC 18004 (versions 1–40, error correction L/M/Q/H, optimal mode switching, all eight masks scored). Get a print page with a test square, the code alone as SVG and PNG, a sheet of copies or Wi-Fi guest cards.

  • Data is split into numeric, alphanumeric and byte (UTF-8) segments with the fewest bits (dynamic programming over the bit costs of ISO/IEC 18004 §7.4); the smallest version 1–40 that holds it at the chosen error-correction level is used.
  • Reed–Solomon error correction over GF(256) (polynomial 0x11D), block interleaving after Table 9, all eight masks scored with the four penalty rules and the lowest chosen; format and version information use the BCH codes of §7.9–7.10.
  • The logo-safe area clears the centre modules (never finder, timing or alignment patterns) and counts, per Reed–Solomon block, how many codewords it touches; the area is reported safe only when that stays within half of the block’s error-correction codewords.
  • Wi-Fi codes use the WIFI:T:…;S:…;P:…;; format read by phone cameras (special characters escaped). Pages print at true size with a 20 mm (or 1 in) test square.

“QR Code” is a registered trademark of DENSO WAVE INCORPORATED. Test a printed code with the phones of your audience before printing many copies.

Sources

Part of Printshop

  • Printshop Printables studio

    QR codes, calendars, labels, graph paper and posters — print-perfect PDFs in seconds.

    Open Printshop

Related tools

How to use the QR Code Generator (print-ready)

Make a QR code for a link, text, Wi-Fi login, phone or map location as a true-size PDF, SVG and PNG, with error correction and a logo-safe centre.

What it is for

You need a code that people scan from paper: a link on a flyer, a Wi-Fi login on a café table, a phone number on a shop window. This tool turns the content into a QR code that follows ISO/IEC 18004 and lays it out on a page that prints at exactly the size you asked for, with a test square to check your printer.

It covers web addresses, plain text, Wi-Fi logins, e-mail, phone, SMS and map locations. It does not make Micro QR, Kanji mode or GS1 QR codes, and it does not put a logo into the code — it only clears the centre for one and checks the risk.

Worked example

A link to https://usefulweb.site/ at error correction M and a Code width of 60 mm gives version 2: 25 × 25 modules, mask 4. The text needs 196 of the 224 available data bits, and one module comes out at 1.818 mm — easy to scan from a metre away.

For a restaurant table sign we tried https://example.com/menu at level Q, 50 mm wide, with a Logo-safe area of 20 % and the caption "Our menu". The tool chose version 3 (29 × 29 modules, 1.351 mm per module). The logo check says the area is safe — the worst Reed–Solomon block loses 6 codewords and can repair 9 — but adds a warning that the logo uses most of the error correction, so a scratched print may fail. Raising the level to H gives more room.

The Wi-Fi guest cards example (network "Guest network", WPA) produces version 4 with an alphanumeric and a byte segment and four cards on an A4 page.

How to read the result

  • Version and Modules per side: the size of the grid. Longer content or a higher level means a larger version.
  • Mask pattern: which of the eight masks scored best; it only matters for checking against other generators.
  • Data bits used and Data capacity: how full the code is.
  • Module size: the width of one small square on paper. This is the number to watch.
  • Segments: which encoding modes were used — digits, upper-case letters and URLs-in-capitals pack tighter than lower-case text.
  • Files: the print page as PDF, SVG and PNG, and the code alone as SVG and as a PNG with whole pixels per module. Open in the app loads the settings into Printshop; the Wi-Fi password is left out of that link.

Tips and common mistakes

  • Keep the Quiet zone at 4 modules. Cropping the white border is the most common reason a printed code fails.
  • Keep modules above about 0.33 mm for phone scanning at arm's length; scale the code up for posters read from a distance.
  • Use dark on light. Inverted or low-contrast colours trigger a warning because many scanners refuse them.
  • Upper-case URLs (HTTPS://EXAMPLE.COM/MENU) fit alphanumeric mode and can drop a version.
  • With a logo, use level Q or H and test the printed code with several phones.
  • Print at 100 % and measure the test square: "fit to page" shrinks everything.

FAQ

Which error-correction level should I choose?

M suits most printed codes. Choose Q for codes that get handled or dirty and H if you place a logo in the centre. Each step makes the code denser.

Is my Wi-Fi password stored anywhere?

The tool uses it only to build the code. It is not shown in the result, and the "Open in the app" link leaves it out.

Why is my code bigger than another generator's?

Generators may pick a different level or mode. Compare version and level; the same settings give the same version.

Can I use the codes commercially?

Yes. "QR Code" is a registered trademark of DENSO WAVE INCORPORATED; the codes themselves are free to use.

Guide last updated:

For scripts and AI agents

  • JSON API: POST https://printshopqrcode.usefulweb.app/api/v1/calculate (same calculation as this page)
  • Interface description: OpenAPI 3.1 · AI guide: llms.txt
  • MCP server (Streamable HTTP): https://printshopqrcode.usefulweb.app/mcp · tool name printshop_qr_code
Example request
curl -s -X POST https://printshopqrcode.usefulweb.app/api/v1/calculate \
  -H 'content-type: application/json' \
  -d '{"content":"url","text":"https://usefulweb.site/","ecc":"M","size":60}'
Feedback · ideas & bug reports welcome