Launch

30% off your first month of Pro30% off month one$9.90 → $6.93

See plans
ZPL em PDF

Guide · Formats

ZPL vs EPL: which language is your label in?

Zebra printers speak two languages, and a label file is written in one of them. ZPL is the one almost everything emits today; EPL is the older one from Eltron, the company Zebra bought in 1998, and it is still what some carrier APIs and older desktop printers default to. A file in one language sent to a printer expecting the other prints garbage or nothing at all, so the first question when a label misbehaves is which one you are holding.

Checked on November 4, 2026

Two languages, one job

Both describe a label as commands: where each piece of text goes, which font, which barcode. They differ in shape. ZPL marks every command with a caret or a tilde (^FO, ^FD, ~DG) and wraps each label in ^XA … ^XZ. EPL has no prefix at all — one command per line, a letter followed by comma-separated parameters, with the label printed by a P line at the end.

Neither is a better description of a label; ZPL simply won. It has more commands (stored formats, graphics, more symbologies), every modern Zebra speaks it, and it is the thermal format UPS, FedEx, ShipStation and EasyPost all support, and the one marketplaces hand out.

How to tell which one you have

Open the file in any text editor. You do not need to read it, only to look at the first few lines.

  • ZPL: starts with ^XA and is full of carets — ^FO50,50^A0N,40,40^FDText^FS. Each label ends with ^XZ.
  • EPL: usually starts with an empty line and then N (clear the buffer), followed by lines such as q812, Q1218,24, A50,50,0,4,1,1,N,"Text" and B50,120,0,1,3,7,100,B,"12345", and ends with P1.
  • No carets and no N/P lines, but long runs of binary-looking characters: it is probably a raster or a different vendor's language, not either of these.
  • A .prn extension says nothing either way — it only means “something a printer driver wrote to a file”.

Which printers speak which

Most current Zebra desktop printers read both and switch automatically depending on what arrives. The trouble is the older and the specialised models.

  • Current Zebra desktops (the GK, GX and ZD families) accept ZPL and EPL and detect which one a job is written in.
  • The old LP 2844 and TLP 2844 speak EPL only; the variants with a -Z suffix (LP 2844-Z, TLP 2844-Z) are the ZPL ones. The letter matters more than the model number.
  • If in doubt, print the printer's configuration label (on Zebra desktops it is printed from the feed button; the exact sequence is in the manual), which lists the language settings in use.
  • Non-Zebra thermal printers frequently speak neither natively — TSPL, DPL and others — and offer an emulation that has to be switched on.

When the file and the printer disagree

The symptom is the same either way: commands printed as text, a blank label fed through, or the printer doing nothing. There are three ways out, in order of preference.

  • Ask the source for the other language. Carrier APIs take the label format as a request parameter — UPS and FedEx both offer ZPL and EPL among their thermal formats — so the cheapest fix is usually one field in the request.
  • Switch the printer. Dual-language Zebras can be told which language to expect, and some non-Zebra printers have a ZPL or EPL emulation mode in their setup utility.
  • Render it. For ZPL, the converter on this page draws the label and gives you a PDF any printer can print at 100%. It does not read EPL — an EPL file produces no labels here — so for EPL the first two options are the ones that work.

The other label languages you may meet

ZPL and EPL are Zebra's. Every other thermal printer maker has its own, and they are not interchangeable either.

  • DPL — Datamax-O'Neil (now Honeywell).
  • IPL — Intermec (also Honeywell).
  • TSPL — TSC, and many of the low-cost printers sold online that are built on TSC-compatible boards.
  • PPLA and PPLB — Argox, which is why so many entry-level printers in Brazil arrive speaking them.

Drop the file — if it is ZPL, the label appears here

Drag the file in, paste the code, or pick it from your device

.txt · .zpl · .prn · .zip · .pdf · .png · .jpg — 5 labels a day

The conversion happens in your browser: your file never leaves your device.How that works
Free, no signupNo uploadNo watermarkBatches of many filesPDF · PNG · ZIP

Questions

Frequently asked questions

What is the difference between ZPL and EPL?

Both are Zebra printer languages. ZPL marks every command with ^ or ~ and wraps each label in ^XA…^XZ; EPL is the older Eltron language with one prefix-less command per line, ending in P1. ZPL has more commands and is what nearly every modern system emits.

Can a Zebra printer print both ZPL and EPL?

Most current desktop models can, and switch automatically. The old LP 2844 and TLP 2844 are EPL-only; their -Z variants are ZPL. The configuration label tells you what yours is set to.

Can I convert EPL to ZPL?

Not here — this converter reads ZPL only. The practical fix is upstream: carrier APIs such as UPS and FedEx let you request the label in ZPL instead of EPL, which is one parameter in the request.

My file ends in .prn. Is it ZPL or EPL?

The extension does not say. Open it in a text editor: carets and ^XA mean ZPL; a leading N and a closing P1 mean EPL.

Why does my printer print the commands as text?

It received a language it does not speak — ZPL on an EPL-only printer, EPL on a ZPL-only one, or either on a printer that speaks neither. Request the other format, switch the printer's language, or for ZPL convert it to a PDF here.

Other guides