Skip to main content
EZQR

URL QR Code

Free URL QR Code Generator

Encode any https:// link into a QR any phone camera scans to open the page: no app, no signup, no watermark, never expires.

Quick answer

A URL QR code encodes any HTTPS link into a pattern that every phone camera opens directly in the default browser, no app or decoder needed. To make one, paste your link, brand it with your colors and logo, and download a free PNG, with SVG and PDF on the paid plans. No watermark, never expires.

Free static QR codes. Sign up to unlock dynamic codes & analytics.

Your QR code will appear here

About URL QR Codes

The URL QR is the backbone of every print-to-digital campaign that's ever worked. Someone scans it, the OS sees a web URL, the default browser opens the page. There's no platform layer in between, no decoder app to install, no proprietary scheme. It's the single most reliable QR type and the one that runs unchanged on a 2015 Galaxy S6 or a 2026 iPhone 17.

EZQR generates URL QRs free. Paste your HTTPS link, brand the code with your colors and logo, download PNG, SVG, or PDF. No watermark on any plan including the free tier, no signup wall, no expiration. The QR encodes the URL directly into the pattern, so the link works whether EZQR exists tomorrow or not, that's how static QR codes work everywhere, not a feature we built.

For links that need to change after printing, a landing page that'll get redesigned, a campaign URL that'll rotate, a destination you might move to a new domain. Use a dynamic QR on the $5/mo Lite plan. The printed code stays the same; you repoint the destination from the dashboard. One reprint avoided pays for the year.

Looking for a code for a specific platform?

Almost every "QR code for X" is a URL code underneath. There is no separate format for a Facebook code or a Spotify code. You encode the platform's own web address and the phone does the rest, opening the app if it is installed and the web view if it is not.

What trips people up is which address to encode. The one in the browser bar is often not the one you want, and a few platforms hand you a proprietary code that only reads inside their own app.

PlatformEncode thisThe mistake to avoid
Instagraminstagram.com/yourhandleA post permalink when you meant the profile
Facebookfacebook.com/yourpageA link containing a session or tracking parameter
TikToktiktok.com/@yourhandleThe in-app code is fine on screen but is a fixed PNG for print
LinkedInlinkedin.com/in/yournameThe logged-in feed URL rather than your public profile
YouTubeyoutube.com/@handle or youtu.be/IDA URL with a &t= timestamp you did not intend
Spotifyopen.spotify.com/...A Spotify Code. It only reads inside the Spotify app
Snapchatsnapchat.com/add/usernameA Snapcode. It only reads inside Snapchat
Telegramt.me/yourchanneltg:// deep links fail on devices without Telegram
DiscordA permanent invite linkA default invite, which expires after 7 days
Google FormThe Send → link URLThe /edit URL, which lets anyone change your form
Zoom / Meet / TeamsThe full join URLStripping the embedded passcode from the link

Two of these are worth repeating. A Discord invite expires by default. Generate one set to never expire before printing it, or the code dies in a week. And a Google Form /edit link hands over edit rights to anyone who scans it; the shareable response link is the one behind the Send button.

  • Paste the link into a private browser window before encoding it. If it still loads the right thing while logged out, it is safe to print; if it redirects to a sign-in page, the code will too.
  • Strip the tracking a platform put on the link before you encode it. Parameters from a Share button are for that platform's analytics, not yours, they rarely survive the platform rewriting the URL, and every character makes the printed code denser. Your own campaign tracking is a different question, and the section below measures what it costs.
  • If the destination might change (a campaign video, a seasonal form) encode a dynamic code so the printed square can be repointed later without a reprint.

If you came to log in by scanning a code, no generator can make that one

A sizeable share of people searching for a platform QR code are not trying to make one at all. They are trying to sign in by scanning. That flow runs the opposite way round. The service puts a short-lived, single-use code on the screen in front of you, and the app already signed in on your phone reads it and approves the session. The code is a token the service issued and will check against its own records seconds later. Nothing a generator produces can stand in for it, which is why there is no tool here, or anywhere, that makes one.

It also matters that the flow does not exist everywhere people look for it. Two of the platforms most often searched alongside "log in with QR" do not offer it at all.

PlatformSign in by scanning?How it actually works
DiscordYesPhone must already be signed in. Settings, then Scan QR Code. The code on screen is good for about two minutes
Teams, personal accountYesOn desktop, the ... menu, then Sign in on your phone
Teams, work or schoolOnly if enabledAn administrator turns QR sign-in on through Entra ID; needs Authenticator and a PIN after the scan
SnapchatNoSnapchat for Web signs in with your credentials. A Snapcode adds friends and unlocks Lenses. It is not a login
Spotify web playerNot documentedSpotify's QR flows are family-plan address verification in the mobile app, and in-car sign-in

Read from each vendor's own documentation in November 2026. Treat the two "no" rows as the useful answer rather than a gap: if a page offers to sign you into one of those by QR, that is a reason to stop.

  • Because scanning approves a session, a login code is one of the few QR codes that can cost you an account outright. Discord's own guidance says that someone you do not know asking you to log in with a QR code is likely trying to phish you.
  • Only scan a login code off a screen you opened yourself. A code in an email, a message, a poster or a shared screenshot is somebody else's sign-in waiting for your approval.
  • If a code was handed to you and you want to know where it leads before anything happens, decode it instead of scanning it with a signed-in app, the online QR code scanner reads the contents in your browser without acting on them.

What happens between the scan and the page

A URL code looks like the simplest thing on this site, and the part worth understanding is what the phone does with it.

The camera decodes the text, sees it begins https://, and hands it to the operating system. The OS checks whether an installed app has claimed that domain (Apple calls this a Universal Link, Android an App Link) and if one has, the app opens directly at that content. If not, the default browser opens the page. You do not choose between those two outcomes; the platform does, based on what the scanner has installed.

Three consequences that matter before you print:

  • Always include https://. Without a scheme the code is plain text, so the phone displays the characters and opens nothing. This is the single most common broken URL code.
  • The link must work logged out. A scanner is a stranger with no session on your site. Anything behind a login, a paywall or an internal network resolves to a sign-in screen for them.
  • Shorter is physically smaller. The encoded string sets the grid size, so a long URL with tracking parameters produces a denser code that has to be printed wider. The QR code examples page shows the module counts for each length.

What campaign tracking costs you in millimetres

Strip the platform's parameters, then decide about your own. UTMs are worth having, without them every scan lands in your analytics as direct traffic and the campaign reads as a failure. But they are characters, and characters are modules. We encoded the same landing page with each layer added, at error correction M, and measured the grid.

What you encodeCharactersGrid at MMinimum printed widthWider per side
Bare URL3129x2914.7 mmNone
utm_source and utm_medium6233x3316.2 mm14%
Adding utm_campaign8537x3717.8 mm28%
Adding utm_content per placement11045x4521.0 mm55%
A dynamic short link carrying the UTMs2625x2513.1 mm14% narrower

Widths use the GS1 minimum printed module of 0.396 mm and include the quiet zone. They are floors, not targets. At error correction Q, which you want if a logo sits over the centre, the same four rows become 29, 41, 45 and 53 modules.

  • Per-placement tracking is where this stops being free. A separate utm_content for every poster means the longest variant sets the printed size for the whole run, and 55% wider per side is a different poster design.
  • A dynamic code inverts the trade. The printed square encodes a short redirect, so it stays the smallest option on this table no matter how many parameters you hang off the destination, and you can add or change them after the run is printed.
  • If the code has to stay static and you want attribution anyway, keep one utm_campaign and drop the rest. Two parameters cost you 14%; four cost you 55%.

Walkthrough

How to Create a URL QR Code

  1. Paste the full URL including `https://`

    Type the complete address. example.com won't work. The QR needs the protocol. Naked domains without https:// confuse some phone cameras and open in unexpected apps. Always include the protocol.

  2. Add UTM parameters for attribution

    Append ?utm_source=print&utm_medium=qr&utm_campaign=fall-2026 to track which campaign drove the scan in Google Analytics or your CDP. Without UTMs, QR-driven traffic shows as direct and the campaign looks like it did nothing. Those three parameters widen the grid by 28%, so either print the code bigger or put the UTMs on a dynamic code and keep the printed square small.

  3. Customize the design

    Brand the code with your colors. Add your logo in the center. Keep it under 20% of the code area so error correction can recover. High contrast between modules and background (4:1 minimum) is what scanners need under poor lighting.

  4. Download PNG, SVG, or PDF

    PNG for digital. Email signatures, slide decks, social. SVG for print at scale: packaging, signage, business cards, anywhere the code gets resized. PDF for the print shop. EZQR exports unwatermarked on every plan including free.

  5. Test on iPhone and Android before printing 5,000

    Scan from at least two real phones. Verify the URL opens cleanly, the destination loads in under 3 seconds, and any redirects don't loop. A 30-second pre-flight beats a 5,000-piece reprint after one missing slash.

URL QR Code FAQ

Common questions about generating, printing, and deploying these codes.

Can I change the URL after I print the QR code?

Static QRs encode the URL permanently, once it's printed, the destination is fixed. To change the destination without reprinting, use a dynamic QR on the $5/mo Lite plan. The printed code points to an EZQR redirect URL we resolve to whatever destination you set in the dashboard. Update the dashboard, the next scan goes to the new place, no reprint required. This is the single biggest reason teams upgrade off the free plan.

Is there a character limit for the URL?

The QR standard supports up to 4,296 alphanumeric characters, but URLs over ~100 characters produce dense codes that scan poorly at small print sizes. For long URLs with multiple UTM parameters, either use a URL shortener (Bitly, your own short domain, or EZQR's built-in shortener on the Pro plan) or use a dynamic QR. The encoded URL stays short, and the dashboard handles the long destination URL on the server side.

Do URL QR codes expire?

Static URL QR codes never expire. They work forever as long as the destination URL stays live. The QR encodes the URL directly into the pattern; there's no expiration date stored anywhere, no subscription required, no clock running. If a generator tells you the static code "expires after 14 days" or "expires when your trial ends", they're using a deceptive bait-and-switch dynamic code disguised as static. EZQR static codes keep working through a lapse, a downgrade and account closure, because nothing about them touches our servers.

Does the QR work without an internet connection?

The scan itself works offline. The QR pattern is decoded by the phone camera locally with no network needed. The destination URL needs a connection to load, of course. For offline-friendly destinations (a PDF cached in the phone's download folder, an in-app deep link, an intent:// Android scheme), the QR routes there without a network round-trip. But typically the encoded URL is a web page and the phone needs cellular or WiFi to open it.

How do I track scans and conversions from the QR?

Three layers. Layer 1: UTM parameters on the URL itself, captured by Google Analytics, Plausible, Mixpanel, or your CDP. Free; works on static codes. Layer 2: dynamic QR scan analytics in the EZQR dashboard ($5/mo Lite plan): timestamp, device type, city-level location, scan count per code. Layer 3: server-side conversion tracking on the destination page, joining QR scans to signups, purchases, or any custom event. Combine all three for the full funnel.

Written by Tasnim Ahmed, Founder · Last updated

Related Industries

Related Guides

Related Tools

Make a URL QR code

Static codes are free and carry no watermark. Dynamic codes, which you can repoint after printing, start at $5 a month.

Generate Free QR Code