/ developer & network toolbox
← all tools

$ qr

runs locally

QR Code

Turn any text or URL into a QR code with selectable error correction. Download PNG or SVG.

qr — invoker.tools

Rendered locally — the contents never leave your browser.

About the QR Code

A QR code is a two dimensional barcode that packs text, a link, a Wi-Fi login or a contact card into a grid of black and white modules a phone camera can read in under a second. This generator builds that grid from whatever you type and renders it instantly as scalable vector graphics, so the preview you see is the exact code you download.

People reach for a QR code generator when a URL is too long to read aloud, when guests need Wi-Fi access without typing a password character by character, or when a printed flyer, menu or business card needs a fast path from paper to a phone screen. Beyond a plain link, this tool understands the standard payload formats for phone numbers, email addresses, SMS messages, geographic coordinates and full vCard contact records, so the result opens the right app on the scanning device instead of just a block of text.

What sets it apart from most quick online generators is that nothing you type is sent anywhere. The encoding, the rendering and the color and error correction choices all happen in your browser's own JavaScript engine. A poster with a Wi-Fi password, an internal-only URL or a phone number never touches a server, which matters for anything you would not want sitting in someone else's request logs.

The tool also protects you from the most common way a QR code fails in the wild: bad contrast. It checks the luminance of your chosen foreground and background colors and warns you before you print a code that scanners will struggle to read, rather than letting you find out after a thousand flyers are at the printer.

How to use it

  1. Type your text or URL into the input, or click a quick-fill pill for a Wi-Fi, phone, email, SMS, geo or vCard payload.
  2. Choose an error correction level: L, M, Q or H, trading a denser code for more damage tolerance.
  3. Optionally set custom foreground and background colors using the color pickers.
  4. Watch for the contrast warning; if it appears, adjust colors before you rely on the code.
  5. Drag the size slider to set the PNG export resolution, from 128 to 512 pixels.
  6. Scan the on-screen code with a phone camera to confirm it resolves correctly.
  7. Download the result as PNG for screens and quick sharing, or SVG for crisp print at any size.

Examples

  • Encode https://invoker.tools as a plain URL QR code for a conference slide or slide deck footer.
  • Use the Wi-Fi quick-fill (WIFI:T:WPA;S:MyNetwork;P:s3cret-pass;;) so guests join by scanning instead of typing a password.
  • Build a vCard payload with a name, phone number and email so a scanned business card adds a contact directly.
  • Encode tel:+31612345678 on a print ad so a tap dials the number instead of requiring manual entry.
  • Use geo:52.3791,4.8980 to drop a pin that opens straight in the scanning phone's maps app.
  • Generate an SMSTO: payload pre-filled with a message so a scan opens the messaging app ready to send.

Error correction levels compared

QR codes carry their own redundancy, so a torn corner, a logo overlay or a smudge of coffee does not necessarily make the code unreadable. The error correction level sets how much of the code can be reconstructed from what remains, at the cost of a denser grid for the same content.

  • L (about 7% recovery): the sparsest grid, best for large codes with a clean printing process and no overlay.
  • M (about 15% recovery): the default here and a sensible middle ground for most posters and cards.
  • Q (about 25% recovery): a good choice once you add a small logo or icon over the center of the code.
  • H (about 30% recovery): the most robust option, useful for codes printed small, on textured materials, or exposed to wear like asset tags.

Supported payload formats

A QR code is only as useful as the app it triggers on the scanning phone. These payloads follow conventions recognized by iOS and Android's native camera scanners, so the right app opens automatically instead of the phone just showing a wall of text.

  • Plain URL: opens directly in the phone's browser.
  • tel:+31612345678: opens the dialer pre-filled with the number.
  • mailto:hello@example.com?subject=Hi: opens the mail app with recipient and subject filled in.
  • SMSTO:+31612345678:message: opens the messaging app with the number and text pre-filled.
  • WIFI:T:WPA;S:name;P:password;;: joins a Wi-Fi network without the user typing the password.
  • geo:52.3791,4.8980: opens the maps app centered on the given coordinates.
  • vCard (BEGIN:VCARD ... END:VCARD): offers to save a full contact record with name, org, phone, email and URL.

Common mistakes that break a scan

Most failed QR scans trace back to a handful of avoidable problems rather than a generator bug.

  • Inverted colors: light modules on a dark background confuse many scanners that assume dark-on-light; this tool warns about it directly.
  • Printing too small: below roughly 2 by 2 centimeters, camera focus distance and print resolution start to matter more than error correction.
  • No quiet zone: cropping the white margin around the code removes the border scanners use to find it; this tool always renders one.
  • Overloading the payload: a very long URL or a full vCard produces a denser grid that is harder to scan at small sizes; a link shortener helps.
  • Skipping a real-device test: always scan the exported file with an actual phone camera before printing at volume.

Frequently asked questions

What is a QR code and how is it different from a barcode?

A QR code is a two dimensional matrix of black and white squares that can hold far more data than a traditional one dimensional barcode, including full URLs, contact cards and Wi-Fi credentials, and it can be read from any angle.

Is this QR code generator really free, and does it need an account?

Yes. There is no signup, no usage limit and no watermark. It runs entirely client-side, so generating and downloading codes costs nothing on either end.

Do I need an internet connection to scan the QR code afterwards?

No. Once a code is generated and printed, scanning it is entirely offline unless the payload itself is a URL that needs to load a page. Wi-Fi, vCard and geo payloads all work without a data connection.

What do the error correction levels L, M, Q and H mean?

They set how much of the code's data can be damaged or obscured and still scan correctly, roughly 7%, 15%, 25% and 30%. Higher levels are more robust but produce a denser grid for the same input text.

Should I download a PNG or an SVG?

Use PNG for screens, slides and quick sharing where a fixed pixel size is fine. Use SVG for anything printed, since it scales to any size without ever going blurry or pixelated.

Why does my QR code show a contrast warning?

The tool measures the luminance of your foreground and background colors. If the modules are lighter than the background, or the contrast ratio is too low, many phone scanners will fail to lock onto the code, so it flags this before you export.

Can I add a logo in the middle of the QR code?

This tool does not overlay a logo automatically. If you add one afterwards in an image editor, raise the error correction level to Q or H first so enough of the code survives the overlay.

Is there a maximum amount of text a QR code can hold?

The QR standard supports up to a few thousand alphanumeric characters, but practically, longer text produces a much denser and harder to scan grid. For long URLs, a shortener keeps the code simple.

Does this generator create dynamic or trackable QR codes?

No, every code here is static: the data is encoded directly into the grid with nothing routed through a redirect or tracking service. If you need scan analytics, you would pair this with your own short-link redirect before encoding the URL.

Is my data uploaded anywhere when I generate a code?

No. Encoding happens with JavaScript in your own browser tab, so whatever you type, including Wi-Fi passwords or personal contact details, never leaves your device.

More generate tools