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›Developers›Limits and Pricing

Limits and Pricing

Labelixa plan tiers, monthly label and request quotas, the daily label ceiling, per-second request limits and request-size limits.

Plan tiers

PlanRateLabels/monthRequests/monthDaily label ceilingLabels/requestOn-premiseSupport response
Free3/s5,00010,0005,00050——
Starter5/s25,00050,00025,00050—3 business days
Professional10/s100,000200,000100,000100—1 business day
Business20/s500,0001,000,000250,000250—same business day
Enterprise On-Premise20/sby contractby contractby contract250yessame business day

The free tier needs no key, and no plan watermarks the output. Paid plans raise the limits. Current tiers can be fetched with GET /v1/plans.

The islem_ay field is NOT your monthly quota. It is kept for older integrations and still equals the daily label ceiling (islem_gun) x 30 — it is never used in a gating decision. Your real monthly quotas are the separate fields etiket_ay (labels) and istek_ay (requests).

Support response is a commitment about how quickly we reply, not about how quickly an issue is resolved, and it is not an availability commitment: we publish no uptime SLA. See Terms of Service §24.5-24.6.

Quota rules

A label is one rendered label; a request is one API call. If a single call sends a multi-label ZPL (^PQ or consecutive ^XA...^XZ blocks), it spends one request and as many labels as it produces. Validation and conversion calls spend one request and no labels.

Quotas are monthly, counted separately for labels and requests, and renew on your subscription day (calendar month on the free plan). A yearly subscription is still measured month by month.

A daily label ceiling applies inside the monthly quota; it is not additional quota. Both windows are checked together: a request that does not fit either one is rejected upfront and no counter moves.

Unused quota does not roll over.

When a window is full, requests are rejected with 429; X-Quota-Reason says which window (gunluk, aylik_etiket, aylik_istek), X-Quota-Reset gives the renewal time (ISO-8601 UTC) and X-Quota-Action: yukselt the only remedy. The response body names the next plan and its monthly price and links to the pricing page; X-Quota-Next-Plan and X-Quota-Upgrade-Url carry the same two values for clients that do not parse text.

Extra usage packs have been removed

Extra usage packs are no longer sold (30 August 2026). They were withdrawn when quotas were daily and they stay withdrawn under the monthly model: a pack is a one-off top-up at a unit price many times the plan's, while a plan renews every month. If the monthly quota is not enough, the right answer is the next plan up — cheaper and permanent. The POST /v1/addons endpoint was not removed: it returns 410 Gone that says why and points to GET /v1/plans. A 404 would not tell an existing integration whether the address was wrong or the feature was withdrawn.

Request limits

LimitValue
Request bodyZPL rendering at most 1 MB; EPL/TSPL/CPCL, DPI and compatibility endpoints at most 512 KB
Commands per labelat most 20,000 (document total is free; multi-label documents are unaffected)
Label sizeat most 15 inches (width/height)
Print density (dpmm)6, 8, 12, 24
/v1/graphics imageat most 200 KB, 2000×2000 pixels
Barcode data lengthat most 1000 characters

When the quota or rate limit is exceeded, the API returns HTTP 429 and a Retry-After header.