About QRMint

An independent, ad-funded QR code generator built on a simple principle: the person who makes a code should own it outright.

Why this exists

QR codes became genuinely useful in the last few years — for menus, Wi-Fi sharing, event check-in, packaging and contactless payment. But the market that grew around them is largely built on a small trick: many “free QR generators” produce a code that points at their short link rather than your content. The code looks and scans perfectly. Then the trial ends, or the subscription lapses, or the company shuts down, and every poster, menu and business card already printed becomes a dead square of pixels.

That model is not in the user's interest, and it is not necessary. A QR code is a standard: it can carry your destination directly. QRMint exists to do that and nothing else.

The three commitments

1. Your code cannot be taken away

We encode your content into the pattern itself. There is no redirect, no short domain, no database row that could be deleted. Once you have downloaded the file, no one — including us — can change, expire, redirect or revoke it. This is why we never ask you to create an account: there is nothing for an account to manage.

2. Your content is never transmitted

A Wi-Fi code contains the network password. A contact card contains personal details. A payment code can move money. Sending any of that to a third-party server so it can hand the identical string straight back would be indefensible, so the generator runs entirely in your browser. We cannot leak what we never receive. You can verify this in your browser's network inspector.

3. Quality is checked, honestly

The most common failure of a QR generator is producing a beautiful code that no phone can read. Before you download, QRMint measures the luminance contrast of your colours, checks the quiet zone against the four-module minimum in ISO/IEC 18004, calculates how much of the symbol your logo hides against the budget your error-correction level allows, and flags patterns dense enough to need a larger print size. When something is genuinely unsafe, the export buttons lock until you fix it.

How the free model actually works

QRMint is funded by display advertising. That is the whole business model. A small number of clearly-labelled advert slots appear on pages that carry real editorial content, and in return every feature of the generator is free and unlimited: all eleven code types, all design options, all four export formats, no watermark, no trial counter, no premium tier.

Advertising is on this website — never in your codes

This distinction matters, so we will state it plainly: advertising appears on the QRMint website only. It has no effect on any QR code you create here.

Your code is not an advertising surface, and it can never become one. When you press download, the file contains exactly the content you typed — the web address, the Wi-Fi credentials, the contact details — and nothing else. No advert, no tracking pixel, no redirect, no sponsored interstitial. There is no version of this where a code you made yesterday starts showing somebody's advert tomorrow.

This is not a promise we are asking you to take on faith. It is a structural consequence of how the tool is built:

  • There is no redirect service. Your content is encoded directly into the symbol. We run no server in the middle of your code, so there is no point at which anything could be injected, substituted or monetised.
  • Every code is a plain static file. A PNG, SVG, JPG or PDF holds a pattern of squares. It has no mechanism to load a script, display an advert or report a scan.
  • There is nothing for us to switch on later. We never see your code after you download it, and it keeps working whether QRMint is online or not.
  • Your advertising settings change nothing about the tool. Whether adverts are showing or blocked, every code you make is byte-for-byte identical.

So the guarantee is simple: your codes are always free, always ad-free, and always yours. The adverts pay for the website you are standing on; they never ride along inside what you take away. You can verify the first half of that yourself — open a downloaded SVG in a text editor and read every character of it.

Designing around the advertising

We deliberately made the advertising part of the design from the beginning rather than bolted on afterwards. Each slot reserves its exact height before it loads, so a slow or blocked advert never shifts the page under your finger while you are typing a Wi-Fi password.

Advertising on this site is served by Google AdSense, and the controls for it — including turning off personalised advertising — sit with Google and your browser, not with us. None of those choices affect the generator: it produces exactly the same code either way.

What is under the hood

  • Encoding: the MIT-licensed qrcode-generator library, © Kazuhiko Arase, with a UTF-8 byte encoder enforced so accented characters, Japanese, Cyrillic and emoji survive intact.
  • Version selection: we compute the smallest version that fits from the ISO/IEC 18004 capacity tables rather than letting the encoder guess, which eliminates silent truncation of long payloads.
  • Rendering: our own canvas and SVG renderers, so gradients, custom corner shapes and logo embedding are drawn as true vector art or crisp pixels — not screenshots of a template.
  • No build step, no framework, no server. Static files only. The site works offline once loaded.

Deliberate limitations

We do not offer circular “dot” modules. We tested them: circular modules cover only about 78% of each module cell, and independent decoding failed at every export size we tried, including 2048px. Rather than ship a style that phones struggle to read, we left it out and say so here. Rounded and square modules both keep every module inside its cell, which is what makes a code dependable on cheap cameras.

We also do not offer scan analytics or editable destinations, because both require routing your code through a server we control — precisely the dependency this site was built to avoid. If you need to change a destination after printing, a dynamic code from another provider is the right tool, and the FAQ explains the trade-offs honestly.

Corrections and bug reports

QRMint is a small, self-contained tool, so there is no contact form, no support inbox and no ticket queue. If something is genuinely wrong, the most useful thing you can do is confirm it yourself before trusting a code: scan the digital file on screen with two different phones, then scan the printed proof. The FAQ and the guides cover the overwhelming majority of real-world problems — almost all of them turn out to be print size, contrast or a logo that is too large.

Because your code content never reaches our servers, we would have no way to inspect or repair a specific code even if you told us about it. Everything you need to diagnose a failure is on this site, and the generator flags risky settings before you download.