Sign In
Products
ZPL ViewerBarcode GeneratorImage → ZPLZPL cheat sheetLabel DesignerTemplate Gallery
Developers
API QuickstartAPI ReferenceMCP ServerBulk GenerationWebhooksSDKs & ExamplesLimitsDirectPrint agent NewGitHub ActionVS Code extensionOn-Premise
Solutions
Logistics & ShippingE-CommerceERP & WMSManufacturingRetailHealthcare & LaboratoryAll solutions
Tools
ZPL Diagnostics HubZPL DebuggerSize & DPI AnalyzerDPI ConverterBarcode fit calculatorShipping Label AnalyzerFont InspectorOrientation DebuggerCalibration AssistantPrinter Compatibility CheckerBarcode Readability CheckerPrinter Language DetectorThermal Printer Test PackZPL ToolsEPL ToolsTSPL ToolsCPCL ToolsPrinter Language ConverterAll ToolsGuidesPricing
Language
EnglishTürkçeDeutsch
Home›Guides›Every label in the job prints the same time (^FC, ^SL)

Every label in the job prints the same time (^FC, ^SL)

Published:

You print a job with more than one label and a clock field, and every label carries the same time — even when the printer waited between labels, for example in peel/dispenser mode. This is not a fault and not a firmware bug: it is the documented default, and one ZPL parameter changes it.

The cause: ^SL defaults to Start Time Mode

The ^FC command only declares the clock indicator characters. When the clock is read is decided by a different command, ^SL, and its default is S:

So a job of ten labels printed under the default reads the clock once. Nothing in ^FC can change that, which is why adding more ^FC commands never helps.

The fix: ^SLT

^XA
^SLT
^FO50,50^A0N,40,40^FC%^FD%H:%M:%S^FS
^PQ2
^XZ

Open this label in the ZPL viewer →

Place ^SL inside the label format. With ^SLT, each label takes its time as it enters the print queue, so a job that waits between labels no longer stamps them all alike.

Accuracy tolerance (Enhanced Real Time Clock)

On printers with the Enhanced Real Time Clock (firmware V60.13.0.10 or later) the mode parameter also accepts a number: a time accuracy tolerance in seconds, range 1 to 999, where 0 means a one-second tolerance. For example ^SL30,1 sets a 30-second tolerance and English as the language. The second parameter of ^SL is the language, not part of the timing.

Before any of this works: the RTC has to be there

Is one label per job the only way?

No. Splitting a ^PQ10 job into ten single-label jobs is a workaround for the default mode, not a requirement of ZPL. ^SLT addresses the cause directly and keeps the job intact.

What a preview cannot tell you

Clock values are produced by the printer's own hardware at print time. An online renderer — ours included — does not have that clock, so it cannot show you what %H:%M:%S will become on paper. Use the preview to check layout: where the field sits, whether it fits the label, whether the font and rotation are right. The timing behaviour itself is settled by ^SL, and by the printer.

We have not verified this on a physical printer; everything above is what Zebra's own programming guide documents, cited by page below.

Sources

Frequently asked questions

Why do all labels in one ZPL job show the same time?

Because ^SL defaults to Start Time Mode: the clock is read once, when label formatting begins. Zebra's guide says it outright — the first label has the same time placed on it as the last label (page 339).

Does adding more ^FC commands fix it?

No. ^FC only declares the clock indicator characters; it does not decide when the clock is read. That is ^SL's job, so the timing stays the same no matter how many ^FC commands the format contains.

Do I have to send one label per job?

No. Splitting the job works around the default mode but is not required by ZPL. ^SLT reads the clock as each label enters the print queue, so a single ^PQ job can carry different times.

Will this work on any Zebra printer?

Only where the Real-Time Clock option is installed. The guide states that ^FC is ignored when the RTC hardware is not present, and the accuracy-tolerance form of ^SL additionally needs the Enhanced Real Time Clock (V60.13.0.10 or later).

Can I see the printed time in an online preview?

No — the clock lives in the printer and the value is substituted during printing. A preview is the right tool for the field's position, size and rotation, not for what the clock will read.

Related guides

ZPL troubleshooting by symptom

Eight common ZPL label failures mapped to their usual cause and the check that confirms it — plus what a preview can and cannot prove.

The printer prints gibberish

Raw text and control characters instead of a label point to dump mode; truly scrambled glyphs point to a language mismatch. Telling them apart takes a minute.

Why does my ZPL label print incorrectly?

The five failures behind most wrong ZPL labels: density mismatch, a missing ^FS, silent clipping, missing label dimensions and broken characters.

ZPL special characters print wrong

Umlauts and accents printing as garbage is an encoding mismatch: the printer decodes your UTF-8 bytes with a legacy code page. ^CI28 fixes it — here is how.

Try your own ZPL code →