# FrameQR: a reserved canvas instead of a buried logo

> FrameQR is a Denso Wave format that reserves a canvas area inside the code for a logo or picture at generation time, instead of hiding a logo under error correction as ordinary QR design does. Generation and reliable reading both go through Denso Wave software, which limits it to controlled deployments.

Source: https://useqr.app/docs/basics/frame-qr · Last reviewed 2026-08-21 · UseQR is free forever, no signup.

---

## Two ways to put a picture in a QR code

Every logo-bearing QR code you have seen uses one of two mechanisms, and they are nothing
alike under the surface.

**The standard way: spend error correction.** An ordinary QR code with a logo is a
*damaged* code that still works. The logo overwrites real data modules, and
[Reed-Solomon error correction](/glossary/reed-solomon) reconstructs what was lost,
which is why coverage must stay under about **20% with error correction H** (30%
recovery), leaving headroom for real-world damage. The full mechanics are on
[how logos work without breaking a code](/docs/spec/how-logos-work-without-breaking-a-code).

**The FrameQR way: reserve the space.** FrameQR, a proprietary
[Denso Wave](/glossary/denso-wave) format, declares an image area (the "canvas"), as part
of the symbol's structure at generation time. Data and error correction modules are laid
out *around* the canvas, so the picture destroys nothing. The image region can be larger
and more central than any survivable logo overlay, error correction stays fully in reserve
for genuine damage, and the canvas position and shape are flexible design parameters.

As pure engineering, reserving beats overwriting. Then comes the catch.

## The catch: it is not standard QR

A FrameQR symbol is not laid out like an ISO/IEC 18004 code, so a decoder must understand
FrameQR specifically. Generation runs through Denso Wave's licensed tools and SDKs, and
reliable reading through Denso Wave's reader apps and software. A stock camera app pointed
at a FrameQR cannot be assumed to decode it, which, for anything public-facing, is the
entire ballgame. The comparison in brief:

| | Logo over error correction | FrameQR |
|---|---|---|
| Mechanism | Overwrites data; EC repairs it | Canvas reserved; nothing overwritten |
| Image size limit | ~20% coverage at EC H | Larger, by design |
| Damage headroom | Reduced by the logo | Intact |
| Works with every scanner | **Yes** | No, Denso Wave software |
| Licensing | Free, open standard | Proprietary, licensed |

## Which to choose

For the public: menus, packaging, posters, [business cards](/qr-codes-on/business-cards):
universal readability wins by default, so use a standard code with a restrained logo:
[the how-to](/docs/how-to/how-to-make-a-qr-code-with-a-logo) and the
[coverage limits by EC level](/docs/design/logo-size-limits-by-error-correction-level)
give the working numbers, and a [decode check](/validate) before printing confirms the
logo took nothing critical.

FrameQR fits the same habitat as its siblings [SQRC](/docs/basics/sqrc-secure-qr) and
[iQR](/docs/basics/iqr-code): controlled deployments (brand-protection labels, membership
systems, campaigns built on Denso's stack), where the operator supplies the scanning app
and wants imagery beyond what error-correction abuse survives. In that world its design is
genuinely elegant. Outside it, a code most cameras cannot read is a decoration.

## FAQ

### What is a FrameQR code?
FrameQR is a proprietary Denso Wave QR variant that reserves a canvas area inside the symbol for a logo or picture when the code is generated, so the image occupies designed space rather than overwriting data modules.

### How is FrameQR different from a normal QR code with a logo?
A normal logo sits on top of data and survives only because error correction repairs the loss, capping coverage near 20% at level H. FrameQR plans the image area into the layout, allowing larger images with error correction left intact.

### Can any phone scan a FrameQR code?
No. Because the internal layout differs from standard QR, decoding requires Denso Wave reader software or apps built on its SDK. Stock camera apps cannot be relied on to read FrameQR.

### Do I need FrameQR to put a logo in my QR code?
No. A standard QR code at error correction H tolerates a centred logo covering up to roughly 20% of the symbol and remains readable by every scanner, which is the right approach for anything public-facing.

## Try it

- https://useqr.app/url
- https://useqr.app/text
- https://useqr.app/validate
