Builds a campaign link with UTM parameters and turns it into a static QR code you can download as PNG or SVG. Scans of a flyer, a poster or a package then show up in your analytics under the source, medium and campaign you chose. For founders who put a link in print and want to know whether it worked.
How to use it
Everything is made in your browser. Nothing you enter is uploaded or stored.
- Enter the page address, then the source, medium and campaign, for example
flyer,printandspring_sale. - Check the tagged link above the code and the findings under it.
- Choose the error correction level and the colors. Keep the modules dark on a light background.
- Pick PNG or SVG and download the code. Scan it with a phone before you print.
How Reavlo tests this
The tool runs two engines one after the other: utm-build makes the tagged link, then qr-utm encodes that link.
The link. The tags are added the same way as in the UTM builder: the page must be an http:// or https:// address, the rest of the query string and the fragment are kept as written, and values are lowercased with spaces turned into underscores. A link with a missing source, medium or campaign is not built and gets no code.
The code. The link is encoded in byte mode as UTF-8, so Hebrew letters and emoji in a path are kept, at the smallest symbol version (1 to 40) that holds it at the chosen error correction level, as defined in ISO/IEC 18004. Level M is the default. The code always has a quiet zone of four light modules on every side, as the standard asks. The encoder is the open-source qrcode-generator library, run in your browser.
The checks. QR-01 (critical): the link is longer than the largest symbol holds at the chosen level, for example 1273 bytes at level H or 2953 bytes at level L. No code is drawn. QR-02 (warning): the contrast ratio of the two colors is below 4.5:1 (the WCAG 2.2 ratio, used here as a simple measure of how far apart dark and light are), or the modules are lighter than the background.
The files. The SVG is one square and one path, so it stays sharp at any size. The PNG is drawn on whole pixels per module at the width you pick, so its edges stay sharp; it can be a few pixels narrower than that width.
Limits. The code is static: it holds the link itself, so it never expires and needs no account, but it cannot be changed after printing. The tool does not open the page or follow redirects, and it cannot tell how a particular camera app reads a code. Test a printed sample before a large run.
Questions
Does the QR code expire or carry a watermark?
No. The code holds your link directly, with no redirect through Reavlo, so it works as long as your page does. There is no watermark and no sign-up.
Why add UTM parameters to a QR code?
A scan opens the page without a referrer, so analytics often counts it as direct traffic. The UTM tags say where the visit came from, so a poster and a flyer show up as separate rows.
Which error correction level should I choose?
Medium suits most print. Choose quartile or high if the code may get scratched or you place a small logo over it. A higher level makes the code denser, so print it larger.
Should I download PNG or SVG?
SVG for print and design tools, because it stays sharp at any size. PNG for documents, slides and places that don't accept SVG.
Is my link sent anywhere?
No. The link and the code are made in your browser and nothing is stored. If Google Analytics is enabled on this site, it only records that the tool ran, never the link.