Convert EPL2 to ZPL
Paste or import your EPL2 code and get the equivalent ZPL instantly. Real-time preview, download the ZPL and open it in the visual editor.
Paste or import your EPL2 code and get the equivalent ZPL instantly. Real-time preview, download the ZPL and open it in the visual editor.
EPL2 (Eltron Programming Language 2) is the label programming language developed by Eltron, a company founded in the 1990s specializing in thermal label printers. In 1998, Zebra Technologies acquired Eltron along with a large installed base of printers using EPL and EPL2. For years both languages coexisted: mid-range Zebra printers such as the LP 2844, TLP 2844 and LP 2742 shipped with EPL2 as their native language, while high-end models already used ZPL.
EPL2 was designed to be simple and compact. Its commands are short text lines, easy to understand and generate from any management system. This made it a de facto standard in thousands of small and medium businesses in logistics, retail and manufacturing that printed labels from billing or inventory software. Today, two decades later, there are still production systems generating EPL2, and many users need to migrate those labels to ZPL for modern printers.
Although both languages share the same goal of defining thermal label content, they have different philosophies. EPL2 uses single-letter commands followed by comma-separated parameters: A defines text, B barcodes, L lines and boxes. ZPL uses commands preceded by a caret (^) or tilde (~): ^FO for positioning, ^FD for content, ^BC for Code 128, ^GB for a graphic box.
ZPL is far richer in functionality: it supports scalable fonts, vector graphics, reverse printing, variable data fields, templates stored on the printer and a more granular API. EPL2 is more limited but sufficient for most standard labels: text, linear barcodes, QR codes and basic geometric shapes.
Current Zebra printers — ZD200, ZD400, ZD600, ZT200, ZT400, ZT600 and the entire industrial range — use ZPL as their native language and support EPL2 in compatibility mode, but with limitations. The 300 or 600 DPI resolution available in these models is much better leveraged with ZPL, which allows precise control of every dot. Advanced features like variable data fields or templates stored in memory require ZPL.
Another common reason to migrate is software. Many modern e-commerce, ERP or WMS platforms generate ZPL natively or integrate label generation libraries that work with ZPL. If your legacy system generated EPL2 and you want to integrate with current tools, converting the templates to ZPL is the most direct path.
The converter analyzes the EPL2 code line by line and identifies each command. For each recognized instruction it generates the closest ZPL equivalent: texts become ^FO/^A0/^FD/^FS blocks, barcodes become ^BC or ^B3 depending on type, filled boxes become ^GB with thickness equal to the shorter side, and lines become 1-pixel ^GB elements.
The conversion happens entirely in your browser, without sending data to any server. The generated ZPL includes label dimensions (^PW and ^LL) when the original EPL2 defines them with q and Q. If there are EPL2 commands with no direct ZPL equivalent, the converter omits them and shows a warning so you can complete the conversion manually.
The converter covers the most common EPL2 commands in production labels: N (label start), P (print), q (label width), Q (label height), A (text with font and rotation), B (linear barcodes: Code 128, Code 39, EAN-13, EAN-8, UPC-A), b (2D codes: QR and PDF417), LO (filled box), LE (empty box), LR (reverse box), LS (horizontal line) and LV (vertical line). Printer configuration commands such as speed, darkness or media type are silently omitted, as in ZPL they are managed independently from label design.
EPL2 (Eltron Programming Language 2) is the label printing language used by Eltron printers before Zebra Technologies acquired the company in 1998. Both languages describe thermal label content, but with different syntax and capabilities. EPL2 uses single-letter commands (A for text, B for barcode, L for lines), while ZPL uses commands preceded by ^ or ~ with a richer set of options.
Eltron/Zebra printers from the LP 2844, TLP 2844, LP 2742 and Zebra 2746 series use EPL2 natively. Modern Zebra printers (ZD200, ZD400, ZT200, ZT400, etc.) use ZPL as their primary language and only support EPL2 in compatibility mode with limitations. If you have a modern printer, working directly in ZPL will give you better results.
The converter supports the most commonly used commands: N (start), P (print), q/Q (dimensions), A (text), B (linear barcodes: Code 128, Code 39, EAN-13, EAN-8, UPC-A), b (QR and PDF417), LO/LE/LR (filled, empty and reverse boxes) and LS/LV (lines). Printer configuration commands are silently omitted. GW/GG/GM graphics are reported as non-convertible.
Yes, in most cases. The generated ZPL follows standard ZPL II syntax and is compatible with the entire current range of Zebra printers. Before printing in production, verify the preview and adjust DPI and label size if necessary to match your printer and roll.
Yes. Use the «Open in visual editor» button to load the ZPL into the EditorZPL drag & drop editor, where you can move, resize and adjust each label element without touching the code. You can also copy the ZPL and paste it into any system that accepts ZPL.
The converter shows warnings for each command it could not translate. The most common are graphics (GW/GG/GM) and proprietary fonts. For graphics, use the EditorZPL «Image to ZPL» tool to convert your image to a ^GFA block and paste it into the generated ZPL.
Yes. The conversion runs entirely in your browser, without sending any data to external servers. Once the page is loaded, you can use the converter even without internet connectivity. Your EPL2 labels never leave your device.