Static vs. Dynamic QR Code: The Difference

A “dynamic” QR code depends on a redirect service, often a paid one; a static QR code contains your content directly and works forever. Here is how to choose, plus a free static code generator.

  • Free
  • No sign-up
  • Never expires
  • No scan tracking

Static QR codes: the content is written into the code itself, with no redirection through our servers. It will always work, unlike “dynamic” QR codes that stop working at the end of a free trial. Static vs. dynamic: the difference

What should your QR code open?
Content: Link

Website, social media page, form, online menu…

    Customization

    Style presets
    Colors
    Shapes
    Modules
    Corner finder pattern outline
    Corner finder pattern center
    Logo in the center

    PNG, JPG, WebP or SVG, 2 MB at most. The image stays on your device. The error correction level switches to H to make up for the covered area.

    Frame and call to action
    Frame

    32 characters at most. A short prompt works best.

    Error correction M

    Share of the code that can be damaged, dirty or covered without preventing reading. The higher it is, the more modules the code has.

    100% local processing, nothing is uploaded

    How does it work?

    A static QR code contains your content directly: your website address, the Wi-Fi password, your contact card. The phone reads it and opens it without going through anyone. It cannot be changed once printed, but it will work as long as the content exists, with no fees or expiry date.

    A “dynamic” QR code only contains a short address at the service that made it (for example qrco.de/abc123). On every scan, that service redirects the visitor to your real page. That is what lets you change the destination after printing and count scans. But the code then depends on that service: at the end of the free trial, if the subscription is not paid or if the company closes, the redirect stops and all your printed materials become useless. Every scan also goes through its servers, which record the time, device and approximate location of your visitors.

    Why we do not offer scan statistics. Counting scans requires sending every visitor through a redirect server: that is exactly what makes a code fragile and what allows people to be tracked. Our codes are static, computed in your browser, and we do not even know what you encode. If you want to measure the reach of a campaign, add UTM parameters to your link (?utm_source=poster): your own analytics tool will count the visits, with no middleman.

    To be able to change the destination later without reprinting, point the code to a page on your website (for example your-site.com/menu) whose content you change yourself.

    Examples

    A 14-day free trial

    A bakery prints 500 flyers with a “dynamic” code created during a free trial. On day 15, the $15 a month subscription has not been taken out: the code shows a page from the service and the 500 flyers are wasted. A static code to the same page would have worked indefinitely.

    Changing the menu without reprinting

    A restaurant points its 40 table tents to marios-diner.com/menu, a page on its own website. Every season, it replaces the menu there: the table tents stay valid, with a $0 subscription, and no customer data passes through a third party.

    Frequently asked questions

    Can a static QR code be changed after printing?
    No: the content is written into the pattern. However, if the code opens a page on your website, you can change that page whenever you like. That is the safest way to get an “editable” code without depending on a subscription.
    Is a dynamic QR code more convenient?
    It lets you change the destination and count scans, but at the cost of a dependency: an often monthly subscription, a service that may close, and visitors tracked by a third party. For printed material that must last (packaging, plaques, books, business cards), a static code is the most durable choice.
    How can I measure scans without a dynamic code?
    Add campaign parameters to your link, for example https://your-site.com/?utm_source=flyer&utm_campaign=spring, then check your usual analytics tool. You count the visits that came from the code, with no redirect or middleman.
    How can I tell if an existing QR code is dynamic?
    Scan it with our scanner with link checking: it shows the full address contained in the code. A short address at a third-party service (qrco.de, bit.ly, l.ead.me…) indicates a redirect, and therefore a dynamic code.
    Will my QR code expire?
    No. The QR codes created here are static: your link, text or credentials are written into the pattern of the code itself. There is no server between the phone and your content, so there is nothing to renew or pay for: the code will work as long as the content (your website, for example) exists.