Printer Test Guide
A reference for the desktest.net Printer Test. Browsers cannot query printer state, ink, paper, or queue status, so this tool is a guided print-and-inspect wizard, not an auto-detect. It sends a measured test sheet through your OS print dialog and asks you four yes/no questions about the result.
What does the Printer Test check?
The browser print pipeline is one-way. window.print() opens the OS dialog and returns nothing. There is no API for the target printer name, ink levels, paper state, queue depth, or whether the job reached a physical device. The test runs three steps:
- Browser print pipeline is available. Feature-detects
window.print,onbeforeprint,onafterprint, and the@media printmatch-media API. Also flags sandboxed iframes and mobile Safari, both of which can silently swallow the dialog. - Test pattern sent to the print dialog. The tool renders a print-only layout (hidden on screen, revealed by
@media print) and callswindow.print(). It listens forbeforeprintto confirm the dialog opened andafterprintto detect close.afterprintfires on Cancel too, so the browser cannot tell Print from Cancel. - Printed page passes a visual checklist. You walk to the printer and answer four yes/no questions about the physical sheet. The verdict is built from those answers.
What is on the test sheet
US Letter at 0.5 inch margins via @page. Every element is positioned in physical units (in, pt) so a print at Scale = 100% produces deterministic output:
- Registration marks at all four corners. Black plus signs (24pt, 0.5pt strokes) in each corner. Clipped or shifted means scaling is off or paper is feeding skewed.
- A 1-inch ruler. Boxed bar exactly 1.00 inch wide with major ticks at 0, 1/4, 1/2, 3/4, 1in and minor ticks at every 1/16 inch. Measure with a real ruler.
- CMYK and RGB swatches. Seven 42pt squares: C, M, Y, K, R, G, B. Background Graphics must be on or these print as white rectangles.
- A grayscale wedge. Five steps at 10%, 25%, 50%, 75%, 90% black. Each should be visibly different from its neighbors.
- Text ladder. Lowercase a to z at 6pt, 8pt, 10pt, 12pt, 18pt, 36pt in Times. The 6pt row is the resolution test.
- Thin line tests. Black bars at 0.25pt, 0.5pt, 1pt, 2pt. 0.25pt may print dotted on cheap inkjets; that is expected.
- Footer. UTC timestamp on the left,
desktest.net/printer-teston the right.
How to run the test
- Click Run Printer Test. Step 1 runs in under a second.
- The browser opens its print dialog. Three settings matter:
- Destination: pick the physical printer. Not "Save as PDF" and not "Microsoft Print to PDF" (those produce a file, not paper, and the tool cannot tell the difference).
- Scale: set to 100% or "Actual Size". Any other setting shrinks the 1-inch ruler and breaks the geometry test.
- Background Graphics: on. Chrome and Edge: expand More settings. Firefox: "Print backgrounds". Off, and the color swatches print as white rectangles.
- Click Print, walk to the printer, pick up the sheet.
- Answer the four checklist questions: did paper print, are the corner marks visible, are the swatches all distinct, is the 6pt text readable. The verdict appears at the top.
Reading the results
The verdict panel resolves to one of three states:
- Pass. All four answers were Yes. Printer is working.
- Partial. Paper printed, but at least one other check failed. Specific cause maps in the table below.
- Fail. Browser could not open the dialog, or you reported no paper came out.
| Question | If No, this means |
|---|---|
| Did paper physically print? | Dialog accepted the job but nothing reached the device. Usually "Save as PDF" was selected, printer is offline, or queue has a stalled job. |
| Are corner marks visible? | Margin or scaling issue. Paper size mismatch (Letter against an A4 tray), Scale not at 100%, or paper feeding skewed. Some inkjets have hardware margins over 0.5 inch and clip the marks. |
| Are color swatches distinct? | Color mode wrong. Most common: Background Graphics off (swatches blank). Next: dialog set to Grayscale, or printer is monochrome-only. A single missing channel (no C, M, or Y) means an empty cartridge or clogged nozzle. |
| Is the 6pt text readable? | Low effective DPI. Low ink or toner, driver downsampling, or a dirty drum or fuser on a laser. If Scale was not 100%, the text shrank below the printer's optical resolution. |
Common failures and fixes
no-print-api: print pipeline unavailable
Rare. window.print is missing. Older browsers, kiosk shells that strip the API, or an embedded WebView with a restricted JavaScript context. Open the page in a real Chrome, Firefox, Edge, or Safari tab.
Dialog blocked: print call returned silently
Neither beforeprint nor afterprint fired within 600ms. Three causes:
- The page is inside a sandboxed iframe lacking
allow-modals. Open in a top-level tab. - A pop-up blocker is treating
window.print()as a pop-up. Allow pop-ups for the origin. - Group policy on a managed workstation disables printing. Contact whoever runs the image.
Dialog opened but no paper came out
The "Save as PDF" gotcha. The user clicked Print without changing Destination from the default, which on fresh Chrome and Edge is "Save as PDF". A file landed in Downloads. Rerun and pick the actual printer. Also check the OS print queue (Windows: Settings, Printers and scanners. macOS: System Settings, Printers and Scanners. Linux: http://localhost:631 for CUPS) for stalled jobs.
Wrong paper size
Letter selected against an A4-loaded tray (or reverse) shifts the layout. Match the dialog's Paper Size to the tray.
Driver outdated
Symptoms: blank pages, gibberish, or wrong colors. Update from the manufacturer site. Windows Update drivers are often years behind. For HP, Brother, and Canon, the vendor's full driver bundle beats the Microsoft IPP class driver.
Default printer wrong
The dialog defaults to the OS default. Windows 10 and 11 silently set the default to the last-used device if "Let Windows manage my default printer" is on. Turn that off, set the default manually.
For IT admins
Pre-rollout checklist:
- Drivers up to date. Push vendor packages, not the Microsoft IPP class driver, for printers used for forms or checks.
- Default printer set per workstation. GPO (Computer Configuration, Preferences, Control Panel Settings, Printers) or Intune. Disable "Let Windows manage my default printer".
- Paper size standardised. A4 in one tray and Letter in another is a known source of margin complaints. Pick one, set it as default in driver and dialog.
- Browser print policies sane. For Chrome and Edge:
PrintingEnabled,PrintingAllowedBackgroundGraphicsModes,PrintingBackgroundGraphicsDefault. Set background graphics default to enabled; the color swatch test depends on it. - Pop-up blocker not interfering. Add desktest.net (or internal app origins) to the allow-list.
- "Print to PDF" deprioritised. On fresh Windows images, push "Microsoft Print to PDF" off the top of the destination list so a real device is the first choice.
The Copy Diagnostic Report button dumps a plain-text report with browser, platform, per-step pass/fail, and user answers. Have staff paste it into the ticket.
Behind the scenes
The print-only sheet is a single #print-area block, display:none on screen. Inside @media print, every other top-level body child is hidden and #print-area becomes display:block. An @page rule pins paper to letter and margins to 0.5in, so the printable area is fixed regardless of the browser's default margin setting.
Elements use physical units (pt, in) rather than pixels, so geometry is independent of the screen CSS pixel ratio. The ruler is literally width:1in. Swatches and grayscale bar use -webkit-print-color-adjust:exact and print-color-adjust:exact so the browser does not strip backgrounds.
The questions are subjective because they have to be. The browser cannot read ink, toner, paper, jams, queue, drivers, destination printer name, or whether the dialog ended in Print or Cancel. The Y/N checklist puts the one capable sensor (your eyes) in the loop.
Related
- Printer Test - the diagnostic itself
- PDF Test Guide - the equivalent for PDF rendering and printing
- Deployment notes - rollout notes for IT teams
- About desktest.net
- desktest.net home