ZPL Designer Features
A free, modern web-based IDE for designing and previewing Zebra ZPL labels — no install required.
Editor
Intelligent ZPL Code Editor
Built on Monaco Editor (the engine behind VS Code), the editor provides a professional coding experience tailored for ZPL.
- Syntax highlighting — Commands, parameters, field data, comments and variables are color-coded for instant readability
- IntelliSense — Auto-completion for all 80+ ZPL commands with parameter documentation
- Parameter assistance — Context-aware parameter hints with valid values
- Command Assistant — Visual form with all parameters, live preview, and one-click insertion
- Contextual help panel — Real-time documentation showing the current command's description, usage syntax, and parameter table
- Auto-uppercase — Typing ^by automatically converts to ^BY
- Code folding — Collapse ^XA...^XZ label blocks for easier navigation
- Field hex support — ^FH hex escape sequences are properly recognized and decoded
File Management
File Operations
- Open / Save .zpl files with native Save As dialog (Chrome/Edge) or download fallback
- Drag & drop — Drop a .zpl or .txt file directly onto the editor
- Auto-save — Your code is preserved across browser sessions
- PWA file association — When installed, ZPL Designer opens .zpl files directly from your file manager
Preview
Three Render Engines
- Internal (default) — Real-time local rendering using Canvas 2D, updates as you type, no network needed
- Labelary — Cloud rendering via the Labelary API for pixel-perfect output. Manual refresh (F5)
- Zebra printer — Render directly on your Zebra printer's embedded web server
Preview Interactions
- Zoom — Mouse wheel or toolbar buttons, from 10% to 300%
- Rotate — 90° left/right rotation
- Pan — Ctrl+drag or middle-click drag
- Crosshair — Hover to see ZPL dot coordinates in real-time
- Shift+click — Insert ^FO{x},{y} at your cursor position
- Copy / Save — Copy label image to clipboard or save as PNG
Editor-Preview Linking
Internal render only
- Hover over a rendered element to highlight the corresponding code in the editor
- Move the cursor in the editor to highlight the corresponding element on the canvas
- Click on a rendered element to jump to its source code
Multi-label Support
ZPL code with multiple ^XA...^XZ blocks renders each label separately with prev/next navigation.
Template Variables
Variable System
Define variables in your ZPL code using configurable delimiters (default {{name}}), and set their values in the side panel.
- Auto-detection — Variables are automatically found in your code
- CSV import — Import variable values from a CSV file (comma, semicolon or tab separated)
- Click to insert — Click a variable name to insert it at the cursor
- Custom delimiters — Configure the opening/closing delimiters to match your workflow
Label Configuration
Label Formats
- 15 predefined formats — Common label sizes (4"x6", 102x51mm, A6, etc.)
- Custom formats — Add your own label dimensions in mm, cm or inches
- DPI selection — 152, 203, 300 or 600 dpi to match your printer
Multi-printer Management
Add multiple Zebra printers by IP address. Each printer appears as a preview source with auto-detected model name and resolution. Online status is checked automatically.
Custom Fonts
Map Zebra Fonts to System Fonts
ZPL Designer lets you map Zebra font names to fonts installed on your computer, so your labels render with the correct typography.
- ^A@ support — Use ^A@N,30,30,R:MYFONT.FNT in your ZPL and ZPL Designer will render it with the mapped system font
- Font alias (^CW) — Map a single-letter shortcut to a named font (e.g. ^CWA,R:ARIAL.FNT then use ^AAN,30,30)
- System font browser — On Chrome/Edge, the font picker lists all fonts installed on your system. Other browsers show a curated list of common fonts
- Live preview — See how the selected font looks before confirming
- Persistent mappings — Font configurations are saved to your browser and restored on next visit
How it works
- Go to the Config tab in the side panel
- Under Custom Fonts, click Add
- Enter the Zebra font name (e.g. MYFONT) and select the system font to use (e.g. Arial)
- Use ^A@ or ^CW in your ZPL code — the internal renderer will display the mapped font
ZPL Rendering Support
The internal renderer supports a wide range of ZPL commands:
Text
- Bitmap fonts A-H
- Scalable font 0
- Custom font mapping (^A@) — map Zebra font names to your system fonts
- Font aliases (^CW)
- Character encoding (^CI)
- Field blocks (^FB) with word wrap, alignment and rotation
- Text blocks (^TB)
- Field hex (^FH)
Barcodes 1D
- Code 128 / GS1-128 (^BC)
- Code 39 (^B3) / LOGMARS (^BL)
- Code 93 (^BA), Code 11 (^B1)
- Interleaved 2 of 5 (^B2)
- Codabar (^BK)
- EAN-8 (^B8), EAN-13 (^BE)
- UPC-A (^BU), UPC-E (^B9)
- Code 49 (^B4), Planet (^B5)
- GS1 DataBar (^BR) — all 12 variants
Barcodes 2D
- QR Code (^BQ) with error correction levels
- Data Matrix (^BX)
- Aztec (^B0 / ^BO) with compact/full-range layers
- PDF417 (^B7)
- MaxiCode (^BD)
Graphics
- Graphic box, circle, ellipse, diagonal line (^GB, ^GC, ^GE, ^GD)
- Graphic field / embedded bitmaps (^GF) — Z64, B64 and type A compression
- Graphic symbols (^GS) — registered trademark, copyright, etc.
- Download graphics (~DG) and image recall (^IM, ^XG)
Formatting & Control
- Field origin (^FO) and field typeset (^FT) with orientation-aware anchoring
- Print orientation (^PO), label reverse (^LR), field reverse (^FR)
- Field orientation (^FW)
- Map clear (^MC) for overlay rendering
- Field numbers (^FN) for format templates
- Download/recall formats (^DF / ^XF)
Keyboard Shortcuts
| Shortcut | Action |
|---|---|
| Ctrl+S | Save file |
| Ctrl+O | Open file |
| Ctrl+N | New file |
| Ctrl+K | Search commands |
| Ctrl+Space | IntelliSense |
| F5 | Refresh preview |
| F6 | Print label |
| Shift+Scroll | Adjust numeric parameter |
| Shift+Click (preview) | Insert ^FO at position |
| Scroll (preview) | Zoom |
| Ctrl+Drag (preview) | Pan |
Printing
Print Options
- F6 to print from any source
- Internal / Labelary source opens the browser print dialog
- Zebra printer source sends ZPL directly via HTTP
Customization
Themes
- Dark and light themes
- Configurable accent color with preset palette
- Editor minimap toggle
Installable PWA
Install ZPL Designer as a desktop application for quick access and offline use. Opens .zpl files directly from your file manager.
Technical
Privacy & Freedom
- 100% client-side — Your ZPL code never leaves your browser (except when using Labelary or Zebra preview)
- No account required — No sign-up, no login
- Free to use — No trial, no limitations
- Works offline — The internal renderer works without an internet connection (PWA mode)
- CORS proxy companion — A lightweight binary (zero dependencies) enables direct communication with Zebra printers on your local network
Report a Problem
Built-in Feedback Form
Found a bug or have a suggestion? Use the built-in report form to send feedback directly from the app.
- Quick access — Available from the status bar or the About dialog
- Optional email — Leave your email if you'd like a follow-up
- Include ZPL context — Optionally attach your current ZPL code, label format, DPI and renderer to help reproduce the issue
- No account needed — Just describe the issue and hit Send