Stripy Horse
Stripy Horse

ZPL viewer

Paste ZPL, see exactly what a Zebra printer would print: real rendering at your label size and density, not an approximation.

Output carries a light watermark. Sign in and create a free API key; then every run here is watermark-free (500 credits a month, no card).

No ZPL handy? Load an anonymized label from a real carrier API:

About the ZPL → PNG

A ZPL viewer renders Zebra Programming Language into the image a printer would produce, so you can check a label without feeding stock through a printhead. Paste anything between ^XA and ^XZ, choose the label size and density, and the preview appears at the printer's exact dot grid.

Pixel-true means the preview is the bitmap, not an approximation: fonts are drawn from the same outlines the firmware uses, barcodes are generated from the same symbology tables, and the result has been compared against real printers and Labelary across thousands of production labels.

Multiple labels in one paste (several ^XA blocks, or ^PQ copies) render as separate pages. Barcodes the renderer cannot encode are marked instead of silently drawn as text, and the warnings tell you which command was ignored and why.

Density and label size in dots

ZPL positions are printer dots, so the same label is a different number of dots at each density. Match the printer.

Printerdpidots / mm4 x 6 in label2 x 1 in label
Most desktop Zebras (GX, GK, ZD, LP)2038812 x 1218406 x 203
Industrial and healthcare (ZT, ZD 300)300121218 x 1827609 x 304
High resolution (ZT 600)600242436 x 36541218 x 609

Your data: Your ZPL is processed in memory and discarded when the response is sent; nothing is stored, logged or read by a person. Anonymous runs carry a small stripyhorse.io logo in the corner; sign in for clean output. Details in the privacy policy.

Questions

Is this ZPL viewer free?

Yes, with no account. Anonymous previews carry a small stripyhorse.io logo in the corner; a free account removes it and gives you an API key for the same renderer.

Which ZPL commands are supported?

The commands real labels use: fields, fonts (including the bitmap and scalable built-ins), ^GFA graphics, boxes and lines, Code 128, Code 39, Codabar, Interleaved 2 of 5, EAN-13, QR, Data Matrix, PDF417, Aztec, ^PQ copies, ^PO and ^PM orientation and mirroring, and the print-setting commands. Symbologies without an encoder are marked on the preview instead of being drawn as text.

Why does my label print differently from the preview?

Usually the density: a label designed for 203 dpi printed on a 300 dpi head comes out smaller. Set the viewer to your printer's density. If a barcode differs, run it through Preflight to see whether the bars land on whole dots.

Can I test ZPL without a printer at all?

Yes: this viewer for the picture, and a virtual printer for the whole pipeline. A virtual printer accepts raw TCP on port 9100 like real hardware, answers ~HS status queries, and shows every job it receives.

The same engine is behind the API and the guides; every tool here is also an API call.