The tool you need, ready to use

QR Code Generator

Enter a web address, text, Wi-Fi details or a contact and the QR code is drawn right away. Choose the error correction level (L, M, Q or H) and colors, then save a PNG (256 to 2,048 px) for the web or an SVG for print. The page shows the version and module count, the data length against capacity, and the size at each level. What you enter is processed only in your browser and is never sent to a server.

Last updated 2026-10-08All math stays in your browser
What to encode
Only http and https addresses work. If the address does not start with https://, it is added for you.
Error correction (damage tolerance)
A higher level still scans when part of the code is covered or dirty, but the pattern gets denser.
Colors
Preview

    Show what the QR code contains
    QR size by error correction level

    Even for the same content, a higher error correction level raises the version (module count). The fewer modules, the easier a small print is to scan.

    Last updated 2026-10-08Your inputs are not stored

    ROBERIN standardThe tool you need,
    ready to use.
    • Clear at a glanceInputs and results sit where you expect them.
    • Result firstThe key number comes first; the working only when you need it.
    • Ask lessNo sign-up and no unnecessary details.

    Make QR codes for web addresses, text, Wi-Fi and contacts, and save them as PNG or SVG

    A QR code is a two-dimensional barcode: a black-and-white pattern that a camera reads and turns back into a string of text. Put in a web address and whoever scans it goes straight to that page. Put in Wi-Fi details and the phone camera reads the network name and password and offers to connect. Put in a contact and it can be saved to the phone's address book. The generator above draws a preview as you type and shows the version (module count), the data length and the error correction level next to it.

    The QR code is built in your browser. What you type is not sent to a server and does not appear in the address bar. Once you print or send the finished image, though, anyone who scans it can read what it contains.

    How to make one

    1. Pick what to encode: choose website, text, Wi-Fi or contact, and only the fields for that type appear.
    2. Enter the values: for an address, https:// is added if it is missing. For Wi-Fi, enter the network name (SSID), the password and the security type. For a contact, enter a name plus a phone number, email or other details.
    3. Choose error correction: the default is M. If the code may get scratched or partly covered, as on printed material, raise it to Q or H. The higher the level, the denser the pattern.
    4. Colors and size: use a dark QR color on a light background. PNG can be saved from 256 to 2,048 px; for print, save an SVG, which stays sharp at any size.
    5. Scan it: before you save, point a phone camera at the preview and check that the address that opens or the text that appears is correct.

    How much fits in each version and error correction level

    QR codes come in versions from 1 (21×21 modules) to 40 (177×177 modules). In the same version, a higher error correction level uses more space for recovery data, so fewer characters fit. The table below gives the maximum number of bytes in byte mode (UTF-8), which stores letters, digits and any other characters as they are. In UTF-8, plain English letters and digits take 1 byte, accented letters such as é take 2 bytes, and an emoji takes 4 bytes.

    VersionModulesLMQH
    121×211714117
    225×2532262014
    329×2953423224
    537×37106846044
    1057×57271213151119
    2097×97858666482382
    30137×13717321370982742
    40177×1772953233116631273

    The generator automatically picks the smallest version that fits your content. The versions needed for different content lengths are below (modules per side in parentheses).

    Content lengthLMQH
    20 bytes (short URL)2 (25)2 (25)2 (25)3 (29)
    50 bytes3 (29)4 (33)5 (37)6 (41)
    100 bytes5 (37)6 (41)8 (49)10 (57)
    300 bytes (a short paragraph)11 (61)13 (69)16 (81)18 (89)
    1000 bytes22 (105)26 (121)31 (141)36 (161)

    Choosing an error correction level

    A QR code carries extra recovery data so it can still be read when part of it is dirty or torn. There are four levels: L, M, Q and H. DENSO WAVE, the company that created the QR code, says M (about 15% recovery) is the most commonly chosen level, and Q restores about 25%. L or M is fine for a code shown only on a screen; Q or H suits floors, packaging and other places where the code gets dirty. DENSO WAVE warns that placing an image over a QR code can leave it unreadable after even minor damage, error correction or not.

    What each type puts into the QR code

    • Website: the address itself, for example https://roberin.com/. Check that it is a complete address with no spaces, and that people have access if it is an internal link.
    • Text: the text exactly as you typed it; scanning shows it as plain text. The longer it is, the denser the pattern, and a small print becomes hard to read.
    • Wi-Fi: the format is WIFI:T:WPA;S:NetworkName;P:Password;;. If the name or password contains a backslash, semicolon, comma, double quote or colon, each of those needs a backslash in front or the string breaks; the generator adds them automatically. A hidden network adds H:true.
    • Contact: a vCard 3.0 record (it starts with BEGIN:VCARD) containing only the items you filled in among name, company, phone, email and address. vCard 3.0 requires a name (N and FN) and a version line, so the code is not made while the name field is empty.

    Open "Show what the QR code contains" under the preview to see the exact string that was encoded (the Wi-Fi password is masked in that view).

    Checklist before you print or share

    • Do not crop the quiet zone: a QR code needs a white margin four modules wide on every side. The saved image already includes it, so do not trim it away when you lay out a design.
    • Keep the contrast: even with brand colors, keep the code dark and the background light. A light code on a dark background (inverted) cannot be read by some apps, and the generator warns you.
    • Print from SVG: in an SVG the modules are shapes, so the edges stay crisp however large you print. Use PNG for web pages and documents.
    • Scan at real size: for business cards, posters and other printed pieces, print at the final size and scan from the real viewing distance. Once the code is out in the world, it is hard to fix.
    • Leave out sensitive values: a staff Wi-Fi password or a private link can be read by anyone who sees the code.

    Common mistakes

    • Using a screenshot of the preview: a screenshot has low resolution and often cuts off the margin. Save a PNG or SVG instead.
    • Spaces or line breaks in the address: a space left at the end of a copied address causes an address error. The generator trims spaces at both ends and tells you when the format is wrong.
    • Wrong Wi-Fi security type: if the router uses WPA2 but you choose "No password", the phone cannot connect. Check the security type in the router settings.
    • Adding more and more content: instead of putting a long notice into the code, encode the address of a page that holds it. The pattern stays simple and scans more reliably.

    Limits and cautions

    • Everything is encoded in byte mode (UTF-8) only. Content made only of digits can come out slightly larger than it would in numeric mode.
    • Logo placement, rounded module shapes and scan counting (dynamic QR codes) are not supported. The code you make is fixed, and its content cannot be changed later.
    • Older camera apps may read hidden networks or some contact fields differently, so test on both iPhone and Android.

    Basis date The version, error correction and quiet zone descriptions in this article, and the Wi-Fi and vCard formats, were checked against each original source on 2026-10-08. QR Code is a registered trademark of DENSO WAVE INCORPORATED.

    Sources

    Frequently asked questions

    How do I make a QR code?

    Choose what to encode (website, text, Wi-Fi or contact) and enter the values; the QR code appears in the preview right away. Pick an error correction level and colors, save it as PNG or SVG, and scan it once with a phone camera before you use it.

    Which error correction level should I choose?

    The default, M, is a good choice. Error correction adds recovery data so the code still reads when part of it is dirty or covered, and DENSO WAVE, the company behind the QR code, says M (about 15% recovery) is the most commonly chosen. For printed material or floors, where the code is easily damaged, raise it to Q or H. The higher the level, the denser the pattern.

    How much content can a QR code hold?

    In the byte mode this generator uses, the largest size, version 40, holds up to 2,953 bytes at L, 2,331 bytes at M, 1,663 bytes at Q and 1,273 bytes at H. Plain English letters take 1 byte each, accented letters 2 bytes and emoji 4 bytes. The longer the content, the denser the pattern, which makes a small print harder to scan.

    Is it safe to put a password in a Wi-Fi QR code?

    It is convenient for a network you are happy to share, such as at home or in a shop. Anyone who sees the code can read the password, though, so do not include staff or admin networks. The password you enter is not sent to a server and is not kept in the address bar.

    Should I use PNG or SVG for printing?

    SVG is better for print. The modules are stored as shapes, so the edges stay sharp however large you print. Use PNG for web pages and documents, and save it larger than the size it will be shown at (512 px or more) to keep it crisp.

    Will the code still scan if I change the colors?

    Yes, as long as the QR color is dark enough and the background is light. An inverted code (light on dark) or a low-contrast pair cannot be read by some apps, and the generator warns you. Always test the result with a real camera after changing colors.

    Does a contact QR code open the same way on every phone?

    The contact is stored in the standard vCard 3.0 format, which most phone contact apps can read. Some apps display the address or company fields differently, so check on both iPhone and Android. A name is required.

    Can I change the content of a QR code later?

    No. The codes this generator makes are static: the content is written directly into the pattern, so it cannot be edited. If the address may change, encode the address of a page you control and update that page instead. A static code has no expiry date.