QRFable
← All guides
Guides6 min read

QR codes on metal tags and equipment that won't scan

Engraved and etched QR codes fail for reasons printed ones never do — glare, low contrast and tiny modules. Here is what actually works on metal.


A QR code laser-etched into a steel asset tag can be geometrically perfect and still refuse to scan. The pattern is correct, the data is valid, and the phone sits there doing nothing. That is because a camera does not read geometry — it reads contrast, and metal is very good at destroying contrast.

1. Glare is the main culprit

A polished or brushed metal surface reflects the overhead light straight back into the lens. The camera sees a white blowout across part of the code and cannot distinguish dark modules from light ones in that region. Error correction recovers some of it, but a band of glare across a corner finder pattern is usually fatal.

The fix is a matte or bead-blasted finish rather than a polished one. Anodised aluminium and powder-coated plates both scan far more reliably than bare stainless. If the substrate is fixed, angle the tag so it does not sit square to the main light source.

2. Etched codes have contrast, not colour

Laser etching does not make a module black. It makes it a slightly different shade of metal, or a shallow recess that reads as a shadow. In good light that is enough; in a dim plant room or under a worklamp at the wrong angle it is not.

Anneal marking on stainless, which oxidises the surface to a genuine dark brown or black, holds up much better than a shallow ablation. On aluminium, a dark anodised layer with the code lasered back to bright metal gives real tonal separation. Both cost a little more per tag and remove an entire class of scanning complaint.

3. The quiet zone gets squeezed first

Asset tags are small and have a lot to carry — an asset number, a company name, sometimes a safety warning. The blank margin around the code is the first thing a designer trims to make it all fit, and it is the one element that cannot be trimmed.

A QR code needs clear space equal to four modules on every side. Text or a border inside that margin merges with the pattern and the scanner never finds the code's edges. If space is tight, shrink the text rather than the margin.

4. Curved surfaces distort the grid

On a pipe, a bottle or a cylindrical motor housing, the code wraps away from the camera and the modules at the edges compress. Scanners tolerate a little of this, but past roughly a fifth of the circumference the geometry stops resolving.

Keep the code on a flat face wherever one exists. On a curve, use a smaller code on a flat plate fixed to the surface rather than a large one wrapped around it.

5. Wear, oil and paint

A tag on a machine lives in a hostile place. Oil films reduce contrast, paint overspray fills a shallow etch, and abrasion rounds the module edges. Error correction at level H tolerates roughly thirty per cent damage, which buys years rather than months.

Specify H for anything mounted on equipment, even though it makes the pattern denser. The alternative is a tag that works for a year and then quietly stops, usually without anyone noticing until an audit.

What to specify

FactorWhat works
FinishMatte, bead-blasted or anodised — never polished
MarkingAnneal or dark anodise, not shallow ablation
Module size0.5mm minimum; 0.8mm on anything that gets dirty
Quiet zoneFour modules clear on all four sides
Error correctionH, so wear and oil do not end its life
PayloadA short link — long text makes a denser, more fragile grid

That last row does more work than it looks. A long URL raises the QR version, which means more modules in the same physical space, which means each one is smaller and less tolerant of everything above. A short link keeps the grid sparse, and if it is a dynamic code you can also repoint it when the manual moves — without touching five hundred tags bolted to machines.

Common questions

Why does my engraved QR code scan on screen but not on the tag?
The artwork has perfect black-on-white contrast; the tag has metal-on-metal contrast plus glare. Those are different problems. Test the physical tag under its real lighting.
What is the smallest QR code that works on an asset tag?
Module size is what matters, not overall width. Keep modules at 0.5mm or larger, and 0.8mm for anything exposed to oil or abrasion. A short payload lets you hit that in a smaller tag.
Does error correction level H make the code harder to scan?
It adds modules, so at a fixed size each one is smaller. On a clean surface M is fine. On equipment, the damage tolerance H provides is worth more than the density it costs.
Can I use a static code on equipment tags?
You can, but a dynamic code is usually better here: the destination for a manual or service record changes over the life of a machine, and repointing a code beats re-tagging a plant.

Make a QR code now

Unlimited static codes, free forever. No watermark, no expiry, and no account needed to try it.

Open the generator

Keep reading