Glossary Term

Branded QR Code

glossary branded qr code featured

A branded QR code is a QR code customized with a company’s visual identity, such as a logo, brand colors, styled modules, a frame, or a branded short domain. It encodes data exactly like a standard black-and-white code. The branding changes how the code looks and who people think it belongs to, not how it works.

Elements of a Branded QR Code

A branded QR code combines any of five design layers. Each one carries a different scanning risk.

  • Logo. A brand mark placed in the center, usually on a white knockout. It covers real data, so it depends on error correction.
  • Colors. Dark modules in a brand color instead of black, on a light background.
  • Module and eye shapes. Rounded dots instead of squares, and styled corner “eyes” (the three finder patterns).
  • Frame and call to action. A border with a label such as “Scan for the menu”.
  • Branded domain. The encoded URL uses the brand’s own short domain (for example go.acme.com/menu) instead of a generic shortener. It is invisible on the code itself but appears in the phone’s preview before the visitor taps.

Custom QR code design usually means the first four. The branded domain is the least visible layer and the one that builds the most trust at the moment of the scan, because it shows the destination belongs to the brand.

How Big Can a Logo on a QR Code Be?

At the highest error correction level, keep a centered logo at or below 15% of the code’s area. That is half of what the “30% recovery” figure for level H suggests.

A logo works because QR codes store redundant data. The QR code error correction level sets how much: roughly 7% (L), 15% (M), 25% (Q), and 30% (H) of codewords can be recovered. Those percentages count damaged codewords, not covered area. A square logo breaks every codeword it touches, even partly, so the usable area is smaller.

A reproducible test (Version 3 code, a white knockout logo of growing size, 40 simulated camera captures per setting, zxing-cpp 3.1.1 and OpenCV 5.0) produced these results:

Logo area Level L Level M Level Q Level H
0% 40/40 40/40 40/40 40/40
5% 0/40 40/40 40/40 40/40
10% 0/40 40/40 40/40 40/40
12% 0/40 3/40 33/40 40/40
15% 0/40 0/40 0/40 40/40
20% 0/40 0/40 0/40 0/40

Scores are zxing-cpp. OpenCV failed earlier at level M (19/40 at 10%). A follow-up run that left the alignment pattern intact still failed at 18%, so the limit is data loss, not a covered pattern. This is a directional lab result, not a phone benchmark.

Brand Colors and Contrast

Dark modules on a light background scan reliably in almost any brand color, as long as the contrast stays high. The same Version 3 code at level H, with no logo, gave these results:

Module color Contrast vs white zxing-cpp OpenCV
Navy 13.5:1 40/40 40/40
Dark green 7.3:1 40/40 40/40
Brand red 5.7:1 40/40 40/40
Mid blue 4.4:1 40/40 40/40
Orange 2.6:1 40/40 40/40
Yellow 1.5:1 24/40 40/40

The clean digital images flatter low-contrast colors. Print, glare, and dim light all cut contrast further, so orange that passed here can fail on a glossy menu. A practical floor is 4.5:1 (the WCAG text contrast ratio), which keeps headroom for real conditions.

Inverted codes (light modules on a dark background) split the decoders: zxing-cpp read 40 of 40 and OpenCV read 0 of 40. Some scanner apps behave the same way. Test an inverted design on several phones before printing it, or keep the code dark on light.

Branded QR Code Best Practices

  1. Pick level H when you add a logo, and keep the logo at or under 15% of the code area.
  2. Leave the corners alone. Styled eyes are fine. Covering or merging them is not, because scanners use them to find the code.
  3. Keep dark modules on a light background, at a contrast of 4.5:1 or higher.
  4. Keep the four-module quiet zone clear of color, texture, and frame artwork.
  5. Encode a short URL. A shorter link produces a lower version with bigger modules, which tolerates styling better.
  6. Test before printing. Scan the final file with at least two phones and two apps, at the real print size.

Frequently Asked Questions

Can you put a logo in a QR code?

Yes. A logo can sit in the center of a QR code because error correction rebuilds the data it covers. Set the error correction level to H and keep the logo at or under about 15% of the code area. In testing, a 20% logo failed every scan even at level H.

Do branded QR codes get more scans than plain ones?

Possibly, but no independent study confirms the large uplift figures that QR vendors often quote. Branding plausibly helps because people hesitate to scan anonymous codes after reports of QR phishing (“quishing”). Measure it yourself: run a plain and a branded code on matched placements and compare scans.

Can a QR code be any color?

A QR code can use almost any color if the dark modules stay clearly darker than the background. Navy, deep red, and dark green on white all scanned perfectly in testing. Yellow on white failed 16 of 40 scans on one decoder. Light-on-dark inverted codes are not read by every scanner.

Is a custom QR code the same as a dynamic QR code?

No. Custom design describes how the code looks, while dynamic describes what it encodes: a short redirect link that can be edited and tracked. A branded code can be static or dynamic. Dynamic is usually the better choice, because a printed design stays useful after the destination changes.

Do branded QR codes expire?

The QR code itself never expires, branded or not. A static code works as long as its destination URL works. A dynamic code stops working if the redirect service is cancelled, so check the plan terms before printing at scale.

Create one with the free QR code generator with logo, then scan-test the file before it goes to print.