# QR code mirrored by a design tool

> A flip transform somewhere in the design chain mirrored the code. In an upright placement the corner without a finder square belongs bottom-right; if it sits elsewhere and you did not rotate the artwork, it was flipped. Some decoders read mirrored codes, many do not. Remove the transform — the only legitimate mirror is transfer paper for fabric.

Source: https://useqr.app/docs/troubleshooting/qr-code-mirrored-by-a-design-tool · Last reviewed 2026-08-21 · UseQR is free forever, MIT licensed, no signup.

---

## The ten-second check

A QR code's three [finder patterns](/glossary/finder-pattern) — the big squares — occupy the **top-left, top-right and bottom-left** corners. The corner *without* one is always **bottom-right**. So in an upright, unrotated placement:

- Empty corner bottom-right → correct.
- Empty corner anywhere else, and you did not rotate the artwork → **something flipped it**.

(Rotation itself is harmless — decoders read a code at any angle, and rotating moves the empty corner too. The test is against how *you* placed the artwork, which in a layout is almost always upright.)

## How codes get mirrored

- **A flip on a parent group.** A designer mirrors a whole panel for visual symmetry and everything inside — including the code — flips with it. The commonest cause, and invisible unless you check the corners.
- **Transfer-print workflows.** Iron-on transfer paper must be printed **mirrored** so the design reads correctly after pressing onto the garment. Two opposite accidents live here: mirroring the on-screen mockup that should stay normal, and forgetting to mirror the transfer sheet that should flip. Details in [QR codes on fabric](/docs/print/qr-codes-on-fabric).
- **Reverse-application decals.** Window graphics applied to the inside of glass are printed reversed to read from outside — same trap, same discipline.
- **A casual flip in a photo editor** while "straightening" the image.

## Will a mirrored code still scan?

Inconsistently. Some decoders attempt a mirrored interpretation as a fallback; many camera apps do not, and behaviour varies by platform and version. Like an [inverted code](/docs/troubleshooting/qr-code-inverted-and-unreadable), it will scan on someone's phone during checking and fail on a slice of the real audience — so treat any mirrored code as broken. The spec-level detail is at [mirrored QR codes](/docs/spec/mirrored-qr-codes).

## Fixes

1. **Find and remove the transform.** Check the object *and every parent group* — flips inherited from a group are the ones people miss. Then re-verify with the corner check.
2. **Only a flipped raster survives?** A pure horizontal flip is lossless, so flipping it straight back in an editor restores the original exactly — provided nothing resampled it in between. Then decode with our [scanner](/scan) to confirm the payload, and regenerate a clean master for future use.
3. **Transfer workflows:** mirror the *entire print file* exactly once, as the final step before printing — never mirror individual elements mid-design. Proof by scanning the **finished item** (the pressed shirt, the applied decal), not the transfer sheet, which is *supposed* to fail.

Before any production run, put the final artwork through our [validator](/validate) — it decodes what will actually print, which catches a mirror regardless of where in the chain it crept in.

## FAQ

### How can I tell if a QR code is mirrored?
Look at the corners. The three large finder squares belong top-left, top-right and bottom-left, leaving bottom-right empty. If the artwork is upright and the empty corner is anywhere else, the code has been flipped.

### Will a mirrored QR code scan?
Sometimes — a few decoders try a mirrored reading as a fallback, but many camera apps never do, and support varies by platform and version. Because you cannot control the audience's decoder, treat a mirrored code as broken.

### Why does transfer paper mirror my QR code?
Iron-on transfers print the design reversed so it reads correctly once pressed onto the garment. The print file must be mirrored exactly once, at the last step — and verified by scanning the finished item, not the sheet.

### Can I fix a mirrored QR code without the original file?
Usually. A horizontal flip is lossless, so flipping the image back restores it exactly if nothing resampled it in between. Decode the result to recover the payload, then regenerate a clean master from that data.

## Try it

- https://useqr.app/scan
- https://useqr.app/validate
