Printer tests · Print-true
Printer alignment test page
Vernier offset ladders for both axes, a registration grid at a 20 mm pitch, and a duplex front-and-back pair for checking that the second side lands where the first one did. Nine rungs, a symmetric series centred on a labelled zero, drawn at true millimeter size in your browser. No watermark, no sign-up, and nothing you do here leaves your device.
Print at 100% or "Actual size" — at any other scale the rung labels are wrong by the same percentage. Steps below 0.1 mm are refused rather than drawn, because the ticks themselves are 0.08 mm wide.
How this alignment test page works
The measurement is a vernier. Each ladder draws nine rungs; every rung is two rows of ticks, the first at the nominal position and the second displaced by that rung's offset, and the offsets form a symmetric arithmetic series centred on zero — at the default 0.2 mm step that is −0.80, −0.60, −0.40, −0.20, 0.00, +0.20, +0.40, +0.60, +0.80 mm, each printed beside its rung. You find the rung where the two rows read as one continuous set of ticks, and its label is the displacement between those two rows as they landed on your paper — which is a smaller claim than it sounds, and the limits paragraph below spends most of its length on the difference. There is always a zero rung and it is always labelled, because a ladder with no zero cannot tell you that nothing is wrong. The left ladder displaces horizontally along the carriage axis; the right one displaces vertically along the paper feed. The registration grid underneath is a lattice of crosses at exactly 20 mm, with corner marks at the grid's own corners, for judging skew and drift against the paper's edges.
Everything is SVG geometry in real millimeters and the page declares your paper size to the browser at print time, so nothing in the pipeline has a reason to rescale. That matters more here than anywhere else on this site: the sheet's output is a number you read off a label, so a dialog silently printing at 94% would hand you a number that is wrong by 6% while looking perfectly correct. Two reference rules print near the foot of every sheet — one exactly 100 mm, one exactly 4 inches — so a ruler settles it before you read anything else. The marks are drawn in sRGB values, not CMYK ink: this sheet is deliberately almost all black, because alignment is a geometry question and adding color to it would only add variables. The "Est. ink" figure is measured from the geometry as it is drawn, which is why the ladder-only mode costs a fraction of the full sheet.
The honest limits, and the largest one first: this ladder cannot separate a correctly aligned head from a misaligned one. Your printer's own alignment utility reads a head offset because it lays the two halves of each rung down in different carriage passes, or from different heads — the thing you judge there is the offset between the passes. This page cannot do that. It hands your driver a single document, both rows of every rung are drawn in the same ink at the same moment, and which pass or head puts them on the paper is firmware's decision, invisible from a browser. So on a sheet laid down in one pass the 0.00 rung is the one that reads continuous whatever the head is doing, and a rung label is what it says it is — the displacement between two printed rows — not a number to enter in a driver. That number comes from the utility that can control the passes, which is your printer's, not this page's. What this sheet is good for is the part it does control: a fixed set of known displacements at true size, so you can see the finest one your printer resolves at all, so a rung other than 0.00 reading continuous tells you something is moving the marks even though the sheet cannot say what, and so the sheet you print after an adjustment is genuinely comparable with the one you printed before it. It also refuses rather than pretending: an offset step below 0.1 mm would displace a 0.08 mm tick by less than its own width, so the page declines and draws nothing instead of an unreadable ladder, and a step above 2 mm is clamped with a note. On color the limit is absolute — the page cannot measure what reached the paper, because a browser has no instrument on the output side and reading a printed mark means putting a colorimeter or a spectrophotometer on it. And all of it rests on the actual-size precondition: at anything other than 100% ("Actual size") the printed offsets are not the labelled offsets.