Loading...

Free QR code generator

URL
Text
WiFi
vCard
Email
    Skip to content
    L2QLink2QR
    GeneratorGuidesBlogAPI
    1. Home
    2. Link to QR Code
    Last Updated: September 2026

    Link to QR Code: Turn Any URL into a QR Code That Keeps Working

    Quick Answer

    Paste your link, check it, and download the code as SVG for print or PNG for screens. The code is static: it encodes your URL directly, with no redirect through Link2QR and no expiry date. If you need the destination to change later, point the code at a short path on a domain you control instead of a page you cannot update.

    Error correction

    Enter a link to see its QR code, analysis, and download options.

    Choose the right link before you encode it

    A QR code is only as good as the link inside it. Three choices matter more than anything about how the code looks.

    • Use the final destination URL. Not a link that redirects through a tracking layer first, not a staging URL, and not a page you plan to remove. Every extra hop is one more place the link can break.
    • Use https, not http. The Link Checker above flags plain http automatically. Browsers increasingly warn visitors away from unencrypted pages, and anything typed on that page can be read in transit.
    • Avoid third-party shorteners. A shortener sits between your code and your page. If the shortener shuts down, gets sold, or changes its redirect policy, every code you already printed and handed out stops working, and you have no way to fix it. Prefer a short path on a domain you control, such as example.com/menu.

    This is the honest answer to a common question: can a static QR code be edited after printing? No, the pattern is fixed once it is generated. But you can control where your own URL points, by using a short path on your own domain and changing that path's destination on your own server whenever you need to. That gives you the flexibility people usually want from a dynamic QR service, without paying for one or depending on it staying in business.

    Advertisements

    Longer links make denser codes

    A QR code stores your link as a grid of black and white squares called modules. More characters need more modules, so a longer URL produces a higher QR version and a bigger grid. Here is the actual relationship, measured directly from the encoder this page uses, at error correction level M:

    Link lengthQR versionGrid size
    20 charactersv225 x 25
    40 charactersv329 x 29
    60 charactersv433 x 33
    80 charactersv537 x 37
    100 charactersv641 x 41
    150 charactersv849 x 49
    200 charactersv1057 x 57
    300 charactersv1369 x 69

    A denser grid needs more physical size to stay scannable, because each module has to stay above a minimum printable size no matter how many modules there are. It also loses reliability at distance or at small size faster than a simple code does, since a camera has to resolve more, smaller squares. Use the print size calculator to work out the right physical size once you know your scan distance.

    Error correction level changes the grid too, for the same link. A 60-character URL comes out as:

    Error correctionQR versionGrid size
    Lv433 x 33
    Mv433 x 33
    Qv537 x 37
    Hv745 x 45

    Higher error correction lets the code survive more damage, dirt, or a logo placed on top of it, at the cost of a bigger grid for the same link. Use Q or H when you plan to add a logo, and check the result with the reliability audit before you commit to a print run.

    Track scans without a paid dynamic QR service

    A static code has no scan counter built in. It cannot, since there is no server involved between the camera and your page. What it can do is carry UTM parameters, which your own analytics tool already knows how to count. Turn on "Add UTM tags" in the tool above, fill in a source, medium, and campaign, and every visit that arrives through the tagged link shows up in your analytics as a scan from that specific code.

    The cost is a longer link, and a longer link means a denser code. As an example, measured directly: https://example.com/menu is 24 characters and comes out as version 2, a 25 x 25 grid. Add ?utm_source=qr&utm_medium=print&utm_campaign=spring_menu and the same link is 80 characters, jumping to version 5, a 37 x 37 grid. Keep tag values short, reuse the same source and medium across codes, and put anything variable in the campaign field only. If you want scan counts without any density cost at all, a dynamic QR service is the tradeoff; see static vs dynamic QR codes for an honest comparison of what that gets you and what it costs.

    The uppercase trick, and why most people should skip it

    QR codes have an alphanumeric encoding mode that only covers the digits 0 to 9, capital letters A to Z, space, and the symbols $ % * + - . / and :. A link written entirely in that set encodes more efficiently than the general-purpose byte mode used for ordinary text. Since the scheme and domain of a web address are not case-sensitive, writing them in capitals can shrink the code. Measured directly: HTTPS://LINK2QR.COM encodes as version 1, a 21 x 21 grid, while the same address lowercase, https://link2qr.com, encodes as version 2, a 25 x 25 grid.

    The catch: paths and query strings are often case-sensitive on the server, and the characters ? = & and _ used by query parameters are not in the alphanumeric set at all, so as soon as a link has a path or a query string, this trick stops helping and byte mode takes over anyway. It only does anything useful for a short link with no query string, such as a domain-only address. Most people building a real QR code for a real page should ignore this and just use the link as it normally appears.

    Test before you print

    A code that scans on your phone can still fail for someone else. Before a print run:

    • Scan with at least two phones, including an iPhone camera and an Android camera, not just one app.
    • Scan from the real distance and at the real printed size, not a code on your laptop screen.
    • Confirm the destination page loads on mobile data, not just on office WiFi.

    If a code fails, the decode tool reads back exactly what a code contains, which is useful for checking a printed proof matches what you intended. If scans are inconsistent, read why a QR code is not scanning for the common causes: low contrast, a missing quiet zone, glare on glossy stock, or a code printed smaller than its density allows.

    Keep people safe

    Print the destination URL in plain text near the code, not just the code on its own. Anyone who wants to check before they scan can read it directly, and it gives people a way to reach the page even if the code itself is damaged. It also makes a swapped-in malicious sticker easier to notice, because the printed text will not match the code underneath it. For more on what a QR code can and cannot do to a phone, see are QR codes safe, and if you are checking a code someone else made rather than one you are creating, use is this QR code safe to see what it actually contains before opening it.

    Frequently Asked Questions

    Does a link QR code expire?

    No. The code built here encodes your URL directly, so it works for as long as the destination page works, with no expiry date and no dependency on Link2QR. See /do-qr-codes-expire for the cases where a code does stop working, such as a dynamic service shutting down.

    Can I change the link after I print the code?

    Not the code itself. A static QR code has the URL baked into its pattern, so editing it is not possible. What you can change is the destination: point the code at a short path on a domain you control, such as example.com/menu, and update where that path redirects on your own server whenever you need to.

    Can I see how many people scanned it?

    Not from the code itself, since a static QR code has no built-in counter. Add UTM tags with the builder above and your own analytics (Google Analytics, Plausible, server logs, and similar) will count visits that arrive through the tagged link, which is a scan count in practice.

    Why is my code so dense?

    Density comes from the number of characters encoded, not from the tool that made it. Long URLs with tracking parameters produce a higher QR version and a larger grid. Shorten the link or drop unnecessary query parameters to bring the density back down.

    Should I use a URL shortener to make the code simpler?

    It will make the code less dense, but it adds a service you do not control between the code and your page. If that shortener shuts down or changes its rules, every code you already printed breaks at once. A short path on your own domain gets the same size benefit without that risk.

    PNG or SVG, which should I download?

    SVG for anything printed, since it is vector and stays sharp at any size. PNG for screens, slides, and apps that do not accept SVG. If you are not sure, download both; the tool above builds them from the same encoded link.

    Does Link2QR see the link I type into this tool?

    No. Everything on this page runs in your browser: the QR code, the analysis, and the UTM tagging. The link is never sent to a server, logged, or stored, and there is no network request involved in generating or checking your code.

    What is the difference between this and the homepage generator?

    The homepage generator supports many code types (WiFi, vCard, payments, and more) with styling options. This page is focused on one job: taking a link, checking it for the mistakes that break printed codes, and producing a clean static PNG or SVG with no extra steps.

    Advertisements

    Related Guides

    • QR Print Size Calculator →
    • Static vs Dynamic QR Codes →
    • Is This QR Code Safe? →
    • Do QR Codes Expire? →
    • Add a Logo to a QR Code →
    • Why a QR Code Is Not Scanning →
    • Browse all guides →
    © 2026 Link2QR
    AboutContactGuidesSEPA QRLink to QRBlogPrivacyTermsEspañol中文