^LS Label Shift

Shifts the label left or right by a specified number of dots.

Supported in ZPL Preview

^LS shifts the printed image horizontally. Positive values shift the label to the right; negative values shift it to the left. This is similar to changing ^LH but works as a direct horizontal offset of the entire printed area, independent of the label home position.

The primary use case is fine-tuning alignment on pre-printed stock or compensating for media that consistently feeds slightly off-center. Rather than adjusting every ^FO x-coordinate in a complex label design, you apply a single ^LS adjustment.

The allowable range is −9999 to 9999 dots, but the practical range is limited by your printer's maximum print width. Shifting beyond the print head boundary clips the content.

^LS is a persistent setting. It survives format changes and power cycles on most Zebra firmware versions. If you use ^LS in one job and send a new job without explicitly setting ^LS to 0, the shift carries over.

For vertical offset, there is no ^LS equivalent — use ^LH to move the home position vertically.

Syntax

^LSd

Parameters

ParameterTypeDefaultDescription
dinteger (−9999 to 9999)0Horizontal shift in dots. Positive = shift right, negative = shift left.

Examples

Shift entire label 20 dots to the right

Try in Viewer
^XA
^LS20
^FO50,50^A0N,36,36^FDShifted Right^FS
^FO50,100^A0N,28,28^FDAll fields moved 20 dots^FS
^XZ

Reset label shift to zero

Try in Viewer
^XA
^LS0
^FO50,50^A0N,36,36^FDNo Shift Applied^FS
^XZ

Common Mistakes

  • !Not resetting ^LS to 0 before sending a new job — the shift from a previous job carries over and misaligns new labels.
  • !Using ^LS as a substitute for correct media calibration — if labels are consistently misaligned, calibrate the printer.
  • !Confusing ^LS (shift whole label) with ^LH (set origin) — they overlap in effect but work differently.
^LS Label Shift — ZPL Command Reference | Prynta Co | Prynta Co