How the ScanScore is calculated
One number, 0 to 100, for how likely a code is to be read by an ordinary phone in the place it will actually live. Every point of it is traceable to a measurement against a threshold on this page. Method version 1.0.
The six factors
Each factor produces a value between zero and one, which is multiplied by its weight. The weights sum to 100.
| Factor | What is measured | Weight |
|---|---|---|
| Decodes | Whether a real decoder reads the finished code, and reads the content that was intended. | 30 |
| Contrast | The ratio between the mean dark colour and the mean light colour inside the symbol. | 20 |
| Printed size | The printed width of the symbol against the width the sizing rule asks for at the stated reading distance. | 20 |
| Blank margin | Modules of clear space on the tightest of the four sides. | 15 |
| Damage tolerance | The error correction level minus the share of the symbol a logo already covers. | 10 |
| Content density | How many modules the symbol is across, which follows from how much content it carries. | 5 |
Decodes 30 points
Everything else is a question about how reliably a code will read. This is the question of whether it reads at all. A logo placed over too much of the pattern is the usual cause, and it fails silently until the code is printed.
Scale: Pass or fail. There is no partial credit.
Contrast 20 points
Below about 4:1 most phone cameras cannot separate the modules from the background on paper. 7:1 is where gloss, dim light and ink spread stop mattering. Above 10:1 nothing further improves, so the scale stops there rather than rewarding pure black needlessly.
Scale: Zero points at 2.5:1 or below, full points at 10:1 or above, straight line between.
Printed size 20 points
This is the factor the physical world actually turns on, and the one a screen can never show you. The recommendation is the reading distance divided by ten, corrected for how dense the symbol is, with a comfort margin on top.
Scale: Zero points at 45 percent of the recommendation, full points at 100 percent.
Blank margin 15 points
Four modules on every side is specified in ISO/IEC 18004. Decoders use that band to locate the symbol's edges. Artwork inside it is the single most common reason a printed code fails.
Scale: Zero points at no margin, full points at four modules.
Damage tolerance 10 points
The level alone tells you nothing, because a logo spends it. What matters is what is left over for the physical world: a crease, a thumb, a scratch, a splash of coffee.
Scale: Full points at 15 percentage points of recovery still spare.
Content density 5 points
A denser symbol has smaller modules at the same physical width, so it is less forgiving of everything else. The weight is deliberately small because printed size already carries most of this: counting it fully would be counting the same fact twice.
Scale: Full points below 33 modules, falling away to 101.
The caps
A weighted mean will average away a disaster. Five good factors outvote one fatal one and return a comfortable number for a code that cannot be read. So after the sum, these ceilings apply. A capped score always says on its face which cap was applied and why.
- 25
- when the code does not decode, or decodes to something other than what was intended
- 55
- when contrast is below 3:1
- 60
- when the blank margin is under two modules
- 65
- when the printed width is under 70 percent of what the distance needs
Evidence, and why a score carries its own confidence
The same six factors can be measured with very different authority. Print artwork in a PDF states its own physical dimensions, so the printed size of a code in it is a measurement. A photograph of a poster states nothing about size at all, and its contrast carries the lighting of the room it was taken in.
So each factor records how its input was obtained, and the score reports a confidence alongside the number. High confidence requires a known printed size, because that is the variable the physical world turns on. A code can be flawless on every other axis and still fail on a wall because it was printed at 15 mm.
Factors that could not be measured are left out of the total rather than scored zero. Not telling us your print size is a question you were not asked, not a defect in your code.
What it cannot tell you
The ScanScore measures what is measurable from a file. It cannot see the gloss laminate that will throw the ceiling lights back at the camera, the curve of the bottle the label wraps around, the lighting in the room, or the press that ran a little heavy that morning. Those are real, and they are why the advice to scan the physical proof has never left this site.
What the score does is settle everything that can be settled before the proof exists, so the only failures left are the ones that genuinely need the physical world to find.
Common questions
- Is the ScanScore produced by AI?
- No. It is a weighted sum of six measurements against published thresholds, computed in your browser. There is no model and no learned weight. The same code with the same inputs returns the same score today and in five years, and the arithmetic is on this page.
- Why can a code score below 100 with nothing apparently wrong?
- Usually because a factor was not measurable. Contrast and margin can be read from an image, but nothing in a photograph says how wide the paper is, and the error correction level of a code is not visible from the outside. Unknown factors are left out of the total rather than scored zero, and the confidence line tells you which.
- Why is there a cap as well as a weighted score?
- Because a weighted mean hides disasters. Five good factors will drown one catastrophic one and return a comfortable number for a code that cannot be read. The caps exist so that a fatal fault always shows up in the headline figure, which is the only figure most people will look at.
- Does a high ScanScore guarantee a code will scan?
- No, and it should not claim to. It measures the properties that are measurable from a file: pattern, contrast, margin, size and redundancy. It cannot see the gloss laminate you are printing on, the curve of the bottle, the lighting in the room, or the state of the press that morning. It tells you whether the code is sound before those things, which is where nearly every failure actually starts.
- Can I compare scores across different codes?
- Yes, when the evidence matches. Two codes measured from PDF artwork at a stated distance are directly comparable. A code scored from a phone photograph is not comparable to one scored from a print file, which is why every score carries its confidence alongside it rather than travelling alone.
See it applied: check print artwork or check a code you already have.