Review Link QR Builder

A code that scans, on a card that prints.

  • Decoded before export
  • Logo safe by design
  • Print-ready cards
A small folded table tent card with a blank square panel standing on a cafe table beside a cup in soft daylight.

The guide

A logo in a QR code is a planned injury, so plan it like one

How a QR code survives damage, how much of that survival a centre logo spends, and why the link should also be printed in words.

  • 7 to 30 percent of a code that can be restored, depending on the level chosen
  • 4 modules of clear margin a code needs on every side
  • 20 mm smallest printed code in Welsh Government guidance
  • 6 of 13 repairable codewords the worked example lets a logo use in one block
Read the full guide Fold the guide 8 min · 12 sources

A QR code on a cafe table has a hard life. It gets coffee rings, a thumb over one corner, sunlight bouncing off the laminate, and a phone held at a slant by someone who is also holding a cup. It works anyway. That is not luck. The symbol was built to be read while part of it is missing, and the amount it can lose is a number you choose when you make it.

That number is the whole story of putting a logo in the middle. A logo does not sit on top of spare space. It covers modules that carry the message, and the code survives only because it was already prepared to lose some. Treat the logo as an injury you are scheduling in advance, and the right questions follow: how much damage can this code take, how much of that will the logo use, and how much is left for the coffee.

How a code survives being damaged

The QR code was invented in 1994 at Denso Wave in Japan, and its requirements are set out in an international standard, ISO/IEC 18004, whose scope covers the symbol formats, the error correction rules and a reference decoding method. A symbol comes in forty sizes, called versions, from 21 modules on a side to 177. Every one of them spends a share of its modules on something other than your message.

That something is a Reed-Solomon code, a method I. S. Reed and G. Solomon published in 1960. The message is cut into eight-bit units called codewords. Extra codewords are then computed from them, so that the whole set obeys a mathematical pattern. A reader that finds the pattern broken can work out which codewords are wrong and what they should have been. The price is exact: repairing one wrong codeword takes two check codewords, so a block with twenty-six of them can repair thirteen.

You pick how many check codewords to buy by picking a level. There are four, named L, M, Q and H, and they restore roughly 7, 15, 25 and 30 percent of the codewords. A higher level means more check codewords and less room for the message, so the same link needs a bigger, denser symbol. That trade is the only real decision in making a code, and most generators hide it.

Two details make the scheme tougher than the percentages suggest. Larger symbols split the message into several blocks, each with its own check codewords, and then deal the codewords out in turn, so that a stain covering one patch of the symbol is shared between blocks instead of destroying one. And the few bits that say which level and which mask pattern were used are protected separately, by a code that survives up to three wrong bits out of fifteen.

What the method cannot do is care where the damage came from. A scratch, a fold, a glare spot and a logo are all the same thing to the reader: codewords that do not fit the pattern.

What a logo really costs

So a logo spends from the same budget as accidents do. A code with a logo that uses up every repairable codeword will scan perfectly on your screen and fail on the first table with a water mark. The honest way to add one is to count what it covers, leave a stated share of the budget untouched, and refuse a logo that does not fit.

Here is a worked case you can reproduce in the tool above. Take the link https://reviews.example.org/harbour-cafe/write, which is 46 bytes long. At level M it fits a version 4 symbol, 33 modules on a side, holding 100 codewords in two blocks. Each block has 18 check codewords and can therefore repair 9. Now ask for a centre logo one fifth of the width. That is a square of 7 by 7 modules, 49 modules in all, which is 4.5 percent of the symbol.

Four and a half percent sounds harmless next to a level that restores 15. But the count that matters is codewords per block, not area. Those 49 modules belong to 10 different codewords, because a codeword that loses even one module is suspect. Four of them fall in the first block and six in the second. Six out of a possible nine leaves three for everything the real world will do. That is too thin.

The tool applies a plain rule, which is its own and not the standard’s: a logo may use at most half of what each block can repair, counting every codeword it touches as lost. At level M that limit is 4, and the logo needs 6, so M is refused. At level Q the same 33 by 33 symbol still holds the 46 bytes exactly, but each block now has 26 check codewords, can repair 13, and allows the logo 6. It needs 6 of 13. The level is raised from M to Q and the logo stays.

Push the logo to two fifths of the width and no level saves it. Even at H the count runs past the half, and the logo is refused outright. The largest that fits this link is a little under a third of the width, and getting there means stepping up to a larger, denser version 6 symbol at level H. Bigger logos are possible in the sense that some phone will read them some of the time. That is not a property worth printing five hundred times.

Counting every touched codeword as lost is deliberately pessimistic. A covered module is light, and about half the modules underneath were light anyway, so some codewords survive by accident. Planning for the worst case means the estimate is checked the simple way: flip every covered module to the wrong colour, read the symbol back, and confirm that the number of repairs equals the number predicted.

Margins, contrast and size on paper

A reader has to find the symbol before it can decode it, and it finds it by its edges. That is what the quiet zone is for: a clear band around the code in the same light colour as the code’s own background. Welsh Government guidance for its own printed material puts it at four times the size of a single module, on every side. Text, borders and photographs that creep into that band are a common way to make a correct code unreadable.

The same guidance gives a floor for print: a code should be at least 2 by 2 cm, and it adds that larger codes may be necessary for greater scanning distances. It gives no formula for distance, and neither does this page, because none of the sources read for it does. A 20 mm code on a table tent is read from a forearm away. A code on a window is a different job, and the fair advice is to print one and walk back with a phone.

Size interacts with the level you chose. The 33 module example printed 55 mm wide has modules of about 1.67 mm, comfortable for any office printer. A long link at level H might need 57 modules or more, and at 20 mm wide those modules shrink to a third of a millimetre. Shortening the link is often the better fix than shrinking the print.

Colour is the last way to lose a scan. Readers separate dark from light by brightness, so two colours that look different can be nearly the same to a camera. The web accessibility guidelines define a contrast ratio between two colours that runs from 1 to 21 and ask for 4.5 to 1 for body text. That figure was written for text, not for barcodes, and using it for a code is this tool’s choice, stated as such. A code with light modules on a dark ground is riskier still: in testing for this page, an independent decoder that read every dark-on-light sample refused the reversed one.

A QR code is a link nobody can read. The United Kingdom’s National Cyber Security Centre notes that criminals put codes in phishing emails because a code disguises where a link goes, and that most code fraud happens in open spaces such as stations and car parks. It also says the codes in pubs and restaurants are probably safe. A customer cannot tell which kind yours is unless you help.

The help is cheap: print the address under the code, in full. The Welsh guidance recommends a short written link beside a code for the person who cannot scan it. It serves the person who will not scan it just as well. A link that names your business on a site they recognise is its own reassurance.

For the same reason the link should be boring. The internet standard for addresses allows a user name before an @ sign ahead of the real site name, and warns that this part can be used to mislead a reader about where a link leads. The tool refuses such links, along with invisible characters and anything that is not plain http or https. It parses the text by the same rules browsers follow, so the words printed under the code are what a phone will open.

Asking fairly

The code only carries a link. What you ask for with it is a separate matter, and one with rules. In the United States, the Federal Trade Commission’s 2024 rule on consumer reviews makes it a violation to give an incentive that is conditioned on a review expressing a particular sentiment. The same notice describes review gating, where a business asks customers for feedback and invites only the pleased ones to post publicly, and says it can break the law even though that section of the rule does not cover it.

That is why the tool makes one code for one link and offers no sorting step. Every customer gets the same card. Other countries and the review sites themselves set their own rules, and none of this is legal advice.

There are limits to what any generator can promise. Reading its own picture back proves the code holds the right link; it does not prove that your printer, your paper and your lighting will cooperate. Print one card at full size. Scan it with two different phones. Then print the rest.

Sources

Every source consulted for this guide. Links checked October 11, 2026.

  1. QR code Wikipedia
  2. ISO/IEC 18004:2015 - Information technology - Automatic identification and data capture techniques - QR Code bar code symbology specification International Organization for Standardization (catalogue page, Internet Archive copy)
  3. Reed-Solomon codes for coders Wikiversity
  4. Polynomial Codes Over Certain Finite Fields I. S. Reed and G. Solomon, 1960 (OpenAlex record)
  5. zxing/zxing ZXing authors (Apache License 2.0), file qrcode/decoder/Version.java
  6. Create and use a QR code Welsh Government
  7. QR Codes - what's the real risk? National Cyber Security Centre (United Kingdom)
  8. Trade Regulation Rule on the Use of Consumer Reviews and Testimonials Federal Trade Commission, Federal Register volume 89, number 163 (United States)
  9. Web Content Accessibility Guidelines (WCAG) 2.2 World Wide Web Consortium
  10. Uniform Resource Identifier (URI): Generic Syntax Internet Engineering Task Force, RFC 3986
  11. URL Standard WHATWG
  12. CSS Paged Media Module Level 3 World Wide Web Consortium