Drop screenshots here
Each file is matched to a platform by its pixel dimensions.
Glossary — what every number means
- px — pixel
- One dot of the image. Every height the tool measures is in pixels of the screenshot, and Valve's rule is written in pixels at 1280×800. A px is not a size by itself: the same 9 px is bigger on a 7″ Deck than on a 6″ phone.
- em — font size
- The size you type into the engine (“font size 18 px”). It is the design grid the letters are drawn on, not the height of any letter — no glyph is actually a full em tall. Typical UI sans: capitals ≈ 0.72 em, lowercase ≈ 0.52 em.
- pt — point
- A physical unit, 1/72 inch. pt in this tool always means the em (font size) in points on the target panel. It depends on the panel's density, so px ↔ pt differs per platform: on the Deck LCD 1 px = 0.33 pt.
- x-height
- Height of a lowercase
x— the body of lowercase letters, without ascenders or descenders. In mixed-case text these are the smallest letters on screen, so this is what the Steam Deck rule measures. - cap height
- Height of a flat capital such as
H. In ALL-CAPS text there is no lowercase, so the capitals are the smallest letters — the rule is then applied to the cap height. - ascender / descender
- The parts of
b d h k labove the x-height, and ofg j p q ybelow the baseline. - body height
- Top of the tallest ascender to bottom of the lowest descender. Xbox's XAG 101 is written in this; the tool takes it as ascender + 0.21 em.
- baseline
- The line the letters sit on.
- ppi
- Pixels per inch of a panel. Deck LCD 216, Deck OLED 204.
- arcmin — visual angle
- How big the letter looks from where you sit (1/60 of a degree). Used to carry one rule from a 12 in handheld to an 8 ft TV.
- rendered vs design size
- Hinting snaps letters to whole pixels, so a glyph drawn 9 px tall may be designed at 8.5 px. The colour uses what is drawn (that is what Valve and XAG count); the pt column is the design size.
- floor / target
- Red under the floor, yellow at or over the floor, green at or over the target.
What we expect on Steam Deck
| Red | Yellow | Green | |
|---|---|---|---|
| Smallest letters drawn (x-height; cap height if ALL-CAPS) | under 9 px | 9 – 11.9 px | 12 px + |
| Mixed-case font size (em) that gives that, generic sans | under 17.3 px | 17.3 – 23 px | 23.1 px + |
| ALL-CAPS font size (em) that gives that, generic sans | under 12.6 px | 12.6 – 16.7 px | 16.8 px + |
| Same, as pt on the Deck LCD panel (mixed case) | under 5.8 pt | 5.8 – 7.7 pt | 7.7 pt + |
Pixels are at 1280×800 on either Deck model. Font-size rows assume the Font metrics ratios (x-height 0.519, cap 0.716); pick your face there for exact figures. Mixed-case text is judged on its lowercase — its capitals being bigger doesn't help — so an ALL-CAPS label can pass at a smaller font size than a mixed-case one.
x-height ÷ em
em is the nominal font size — “14 pt Arial” means a 14 pt em. Nothing in the word is actually 14 pt tall; the em is the design grid the glyphs are drawn on.
x-height is how tall a lowercase x actually is: the
body of the letter, with no ascender or descender. It is what your eye reads,
and it is what the tool can measure from a screenshot.
The ratio between them varies by typeface. Futura sets x-height at 0.46 of the em; Inter at 0.55. So two fonts at the same “14 pt” can differ by nearly 20% in the size that actually matters. The tool measures x-height in pixels and divides by this ratio to recover the point size — which is why picking the right font in Font metrics matters more than anything else in the pipeline.
pt and px are not interchangeable here. On the Deck's 216 ppi panel, 11 pt of em is 33 px — but 11 px of lowercase is only 7.08 pt of em. Valve's spec is in pixels of lowercase height, which is why the standard defaults to that form.
OCR boxes
The Boxes toggle draws a rectangle around every run of text the OCR found — one per line of text, not per letter. Green means the run meets the platform's target, yellow that it clears the floor but not the target, red that it is under the floor. Click any row in Measurements to highlight its box.
The boxes are the OCR's own idea of where the text is, and they are loose — they include antialias haze and a little padding. They are for locating text on screen, not what gets measured. The actual measurement re-finds each glyph's true edges in the source pixels.
When OCR misses or misreads text
Missed text → ✚ Mark text. Tick it in the toolbar and drag a box around the text, with a little background showing. That region is read again on its own: enlarged 3–8× (the full frame gets 2×), light/dark decided by the box's own brightness rather than the whole screen's, no confidence cut-off, and each page mode tried in turn. If OCR still can't read it, the ink is measured directly: the letters are split at blank columns and each one's height measured. Two clear heights = mixed case (the lower one is the x-height); one height = capitals. Marked rows are dashed on the image and tagged marked or ink in the table.
Wrong detections → delete them. Click a box on the image (or a row) to select it, then press Delete — or use the ✕ at the start of the row. Deleted detections stay gone when you re-analyze; Restore hidden brings them back.
Getting more from the automatic pass, before marking by hand:
· Upscale for OCR 3–4× — the biggest win for text under ~10 px.
· Min confidence 30–40 — keeps faint or stylised words the default 55
drops (at the cost of more junk to delete).
· Invert: Always / Never — Auto decides from the whole screen, which
goes wrong on mixed light and dark panels.
· Page segmentation — Sparse suits HUDs; Uniform block suits
menus and lists.
· Capture without motion blur, bloom or film grain where the game
allows; letter-spaced caps and outlined fonts are the hardest for OCR.
Where the minimum comes from
A point is a physical unit — 1/72 inch — so the same pt is comfortable on a handheld and unreadable across a room. What stays constant is visual angle: how much of your retina the letter covers.
Valve writes the Steam Deck rule in pixels, not points: “Interface text must be easily readable at a distance of 12 inches/30 cm from the screen. In other words, the smallest on-screen font character should never fall below 9 pixels in height at 1280×800.” 9 px is the Deck Verified floor; Valve recommends 12 px. “Smallest character” is the lowercase body — the x-height — in mixed-case text, and the capitals in ALL-CAPS text, which has no lowercase to measure.
The rule is the same for both Deck models. The OLED's panel is bigger (7.4″ at 204 ppi against the LCD's 7.0″ at 216), so its pixels are about 6% larger — but it renders the same 1280×800 frame and Valve's review draws no distinction, so 9 px is 9 px on either.
You pick one such rule; the tool applies it in pixels on that platform family, turns it into an angular threshold and derives every other platform's minimum from that platform's own viewing distance. A handheld is held at 12 in, a TV sits 8 ft away — so the TV needs roughly eight times the physical size for the same legibility.
Reading a verdict
Every platform has two lines: a floor and a target. On Steam Deck (LCD and OLED) they are Valve's own: 9 px floor, 12 px target.
✓ on target — Steam Deck — at or over the target (12 px or more on Deck).
floor only — 1.5 px under target — at or over the floor but under the target (9 to under 12 px on Deck). Passes Deck Verified, but under Valve's recommendation.
2.0 px under floor — Steam Deck — under the floor (under 9 px on Deck), and can fail review. Hover any verdict to see the pixel height that would move it up a colour.
Colour is judged on the height the text actually occupies on screen — what Valve and XAG both measure. The pt column is the font's design size; for hinted text snapped to whole pixels it reads half a pixel smaller than what is drawn.
Other platforms. Where the platform holder publishes a figure, it is used: Xbox Series X|S floor 26 px at 1080p / 52 px at 4K and PC floor 18 px at 1080p / 36 px at 4K (Xbox Accessibility Guideline 101, measured ascender-to-descender); iPhone floor 11 pt and target 17 pt (Apple HIG). XAG has no target, so theirs comes from the standard. PlayStation and Switch guidance is under NDA, so those — and every other platform — use the standard ported by visual angle.
Cross-platform check re-scores this screenshot as if it were shown full-screen on every platform (scaled to fit, bars where the shape differs). Each row: a green / yellow / red bar with counts, and needs A / B px — the height the smallest letters must reach in this screenshot's pixels for yellow / green, so you can compare it straight against the x px / cap px columns. The row marked ▸ is this image's platform and always matches the Measurements table.
A 1280×800 capture shown on Switch 2 is enlarged 1.35×, so it needs only 8.6 / 11.5 px of its own pixels even though Switch 2 itself needs 11.6 / 15.5 px of native pixels. Tags say where the lines come from — Valve, XAG, Apple or ported. * marks a whole-font rule (XAG, Apple): ALL-CAPS text has to reach about 1.38× that number in cap height.