Free ZPL viewer, editor and validator
Write Zebra ZPL, see the label render instantly, and catch mistakes before you print. A free online tool from Gem Logic for anyone who works with label printers.
What is ZPL?
ZPL (Zebra Programming Language) is the text based language that Zebra and compatible label printers use to describe a label. Instead of a document, the printer reads a short block of commands that say what to print and where: a line of text here, a price there, a barcode or QR code in the corner.
Every command starts with a caret (^) and a label always begins with ^XA and ends with ^XZ. This tool renders your ZPL exactly as a 203, 300 or 600 dpi printer would, so you can design and fix labels without wasting a single roll.
How to use the ZPL designer
- Set the print density (8 dpmm equals a 203 dpi printer) and your label size in mm, inches or dots.
- Type or paste your ZPL, or load a starter template and adjust it.
- Use the insert element buttons to drop in text, a barcode, a QR code, a box or a line.
- Watch the live preview update and read the validation panel to fix any warnings.
- Copy the finished ZPL, or download the label as a PNG.
Common ZPL commands
| Command | What it does |
|---|---|
| ^XA / ^XZ | Start and end of a label. Everything lives between them. |
| ^FO x,y | Field origin: position the next element at x,y (in dots). |
| ^FD ... ^FS | Field data: the content to print, closed by a field separator. |
| ^CF0,h / ^A0N,h,w | Set the font and character height for the text that follows. |
| ^BCN,h,... | Code 128 barcode; h is the height in dots. |
| ^BQN,2,m | QR code; the last number is the size. Data starts with QA,. |
| ^GB w,h,t | Draw a box or line (width, height, thickness in dots). |
| ^PW / ^LL | Print width and label length, in dots. |
| ^FX ... ^FS | A comment. The printer ignores it. |
Tip: ZPL has no line comments. A semicolon (;) is not a comment marker. Anything after it is read as part of the command, which causes errors like "not a valid number" or "ignored unrecognized content". To leave a note, use ^FX your note ^FS instead.
Printing labels the easy way
Writing ZPL by hand is powerful, but you should not have to. Gem Logic designs your jewelry label printing for you and prints product tags, barcodes and RFID labels straight from your stock, with no drivers to install thanks to our smart printing controller.
Building your own workflow? You can also send labels to Zebra printers through our API integrations.
Frequently asked questions
Yes. The ZPL viewer, editor and validator are completely free, with no sign up required.
Match the size to your label stock and the density to your printer. Most desktop Zebra printers are 203 dpi, which is 8 dpmm. Set the same values here to see an accurate preview.
The live preview is rendered in your browser and is not stored on our servers. Validation sends your ZPL to a rendering service only to check it for errors.
Yes. Gem Logic generates and prints your jewelry product labels automatically from your stock, including barcodes and RFID tags.
Label printing, done for you
Gem Logic is jewelry management software that prints product tags, receipts and certificates for you, so you never have to touch ZPL again.
Book a demo