Methodology · Print-true

How the millimeters stay true.

The generators describe their geometry in millimeters. This page explains how browser print settings can change the physical result, and shows a ruler check to run before you print a batch.

SVG unitsreal mm Rescalingnone at 100% Uploads0 Watermarksnone

The sections below show where each of those numbers comes from, and how to check the result on paper.

The geometry: real millimeters, whole cells

Every sheet on this site is an SVG whose coordinate system is declared in physical units: a line drawn at coordinate 50 sits 50 millimeters from the paper's edge. When you pick a spacing, the page computes the printable area (your sheet minus your margin), works out how many whole cells fit, and centers the pattern so the edges never end in sliced partial squares. On US Letter at the default 5 mm spacing and 12.7 mm margin, 38 columns and 50 rows fit, and the few spare millimeters are split evenly between opposite edges. The counts in the Details panel come from that same arithmetic, so they recompute as soon as you change the spacing. At print time the page also tells your browser that the paper size is exactly the sheet you chose, which leaves the print pipeline nothing to resize.

The fit-to-page trap

Set the print dialog's scale to 100% (sometimes labeled "Actual size") and leave it there. Most print dialogs default to "Fit to page" or "Shrink to fit", which rescales the whole document, typically down a few percent, so its content clears the printer's margins. A 5 mm grid printed at 94% is a 4.7 mm grid, and it looks completely normal. These sheets keep their pattern inside a print-safe margin, so at 100% nothing is clipped and the dialog has no reason to shrink the page. Check the setting once and the sheets you print after it come out at true size.

Verify it with a ruler

Print one sheet of graph paper at the default 5 mm spacing, then measure across ten cells: the span should read 50.0 mm. A ten-cell span divides your reading error by ten. A half-millimeter misread on a single cell would look like a 10% error; across ten cells the same misread is 1%, so a real scaling fault is easy to see. Working in inches? Ten cells of 0.25 in spacing should span 63.5 mm, or exactly 2.5 inches. If the span comes up short, your print dialog is scaling, so set it to 100% and print again. This one test checks the whole chain: the geometry, the page sizing, and your printer.

Local generation, ready-made sheets and caching

Customized sheets are generated inside your tab; the site does not upload your generator settings or text. Some pages also provide pre-generated default SVGs and previews, served like other static site assets. The offline cache keeps a small core of site pages and code, plus eligible resources requested online, but not your customized settings or output. Not every resource is preloaded, and a preview PNG used only as a link preview for social sites is not cached; the same file is cached once it is shown on the page itself. Test the generator or ready-made sheet you need with the network off before relying on offline use. Saving a PDF, downloading a sheet and printing can leave files or records on your device; closing a tab does not erase them or browser history. There are no accounts or sign-ups. See the privacy page for the distinction between site caching and your own saved files.

Margins, line weights and paper

Consumer printers can't print to the paper's edge: every model has a mechanical dead zone of a few millimeters where the rollers grip. The default margin on most sheets is 12.7 mm (half an inch), which clears that dead zone on essentially every consumer printer. Line weights below about 0.2 mm print unevenly on consumer hardware, which is why the default is 0.3 mm.

The margin control stops at 5 mm, so the site makes no borderless sheets; borderless modes on some printers rescale the page, which would change the measurements. The geometry handed to your browser is exact, but paper itself can drift a fraction of a percent with humidity, which is one more reason the ruler test on your printout is the measurement that counts.

Try it