Capacity and lead times
How long a part actually takes: queue time, print time by part size, dispatch and transit, plus the public capacity endpoint that publishes live fleet numbers.
This page tells you what your part is actually waiting on, and how to look up the current number instead of trusting a printed one. Two clocks run in sequence: farm time, which is queue plus print plus handling, and transit, which belongs to the carrier. They are quoted separately everywhere on this page because they behave completely differently.
The three things you wait on#
| Stage | What it is | What changes it |
|---|---|---|
| Queue | Jobs already queued, ready or mid-print that owe printer time before yours starts | How busy the farm is when you order. Published live as general.backlogDays. |
| Your own plate on a machine | Weight, layer height, colour count and quantity. See the table further down. | |
| Dispatch | Cooldown, removal, a person looking at the part, packing, and the label run | One handling day is built into every quote. |
| Transit | The carrier moving the parcel | Distance and service. Not included in any farm lead time. |
Look up the current number#
The farm publishes its own capacity. It is a public endpoint with no key and no account, because it exposes counts only, never printer IDs or job names. It is the same data the panel on /farm renders.
/api/farm/capacityNo authLive fleet counts, measured throughput and queue depth. No parameters.
curl https://x3dstudios.com/api/farm/capacity{
"generatedAt": "2026-09-09T14:02:11.418Z",
"fleet": {
"total": 3,
"general": 3,
"generalProductive": 3,
"reservedOperator": 1,
"reservedCustomer": 0,
"available": 1,
"printing": 2,
"offline": 0,
"maintenance": 0
},
"colourSlots": 4,
"rates": {
"gramsPerOrder": 100,
"gramsPerHour": 24.6,
"measured": true,
"hoursPerDay": 22,
"hoursPerOrder": 4.27,
"handlingDays": 1
},
"general": {
"printers": 3,
"ordersPerDay": 15.5,
"gramsPerDay": 1624,
"backlogOrders": 4.2,
"backlogDays": 0.26
},
"reserved": {
"printers": 1,
"ordersPerDay": 5.2,
"gramsPerDay": 541
}
}| Field | Meaning |
|---|---|
| fleet.total | Every printer on record, whatever its state. |
| fleet.generalProductive | Printers that can take work today: not offline, not in maintenance, not held by a customer reservation. |
| fleet.reservedOperator | Machines the farm has reserved as its own dedicated capacity. Still counted in the order lane. |
| fleet.reservedCustomer | Machines a customer holds. Carved out of order capacity entirely. |
| colourSlots | The most filaments any one printer has loaded right now, which is the most colours one plate can print in today. 0 when no printer has reported its AMS. A plate with more colours than this waits until a printer has them loaded, so it can take longer than the lead time. |
| rates.gramsPerHour | Throughput per printer. The median of the last 200 completed jobs when there is history. |
| rates.measured | false means the 22 g/h fallback was used because there were fewer than five usable completed jobs. |
| rates.hoursPerOrder | Hours one 100 g order occupies, including 12 minutes of changeover. |
| general.backlogOrders | Queue ahead of you, expressed in 100 g orders. |
| general.backlogDays | The same queue expressed in days at the current fleet rate. |
How the lead time is worked out#
The arithmetic is deliberately simple and entirely visible. One order means 100 grams by default; the panel on /farm lets you change that and re-quote.
hoursPerOrder = gramsPerOrder / gramsPerHour + 12 minutes changeover
ordersPerDay = productivePrinters * 22 productive hours / hoursPerOrder
printDays = orders / ordersPerDay
totalDays = printDays + backlogDays + 1 handling day
quotedDays = max(1, ceil(totalDays))- 22 productive hours per printer per day, not 24. The rest is changeover and maintenance headroom.
- 12 minutes of changeover per job for clearing the bed and restarting.
- One handling day covers cooldown, removal, the look-over, packing and the label run.
- Throughput is measured where possible: completed jobs are turned into grams-per-hour rates, rows shorter than 300 seconds or outside 1 to 120 g/h are discarded as bad headers, and the median of at least five survivors becomes the rate.
- A job already printing only owes the remainder of its grams to the backlog, scaled by its progress.
- A lane with no productive printers or no throughput returns stalled rather than a number, which the panel shows as Ask the operator.
What makes a print long#
Print time tracks material laid down and layers climbed, not the size of the bounding box. These are the levers you actually control at /print.
| Lever | Effect on time | Effect on price |
|---|---|---|
| Weight | Roughly linear. At the farm's fallback rate of 22 g/h, a 100 g part is about 4.5 hours of machine time. | Linear. You are charged per gram, rounded up to the whole gram. |
| Layer height | Premium 0.1mm layers take roughly twice as long as standard 0.2mm, because there are twice as many of them. | 1.75x the per-gram rate. Standard 0.2mm is 1x. |
| Height in Z | A tall thin part is slow for its weight: every layer costs a pass whether it is 5mm wide or 200mm. | No direct effect. Price is weight, not height. |
| Infill | Higher infill is more extrusion and more time. Default is 20%. | Higher, through weight. |
| Colours | Each colour change is a purge and a tool change, and a four-colour plate can spend most of its run swapping. A multi-plate colour project is one job per plate. | Through the slice: a colour print is priced from a real slice of it in its colours, so the purge and change time are in its grams and hours. Five to eight colours adds a $25 second-AMS fee once per order line. An already-sliced file sent through the print API is also charged for the hours its weight cannot explain, as machine time at $1.50/hour. |
| Quantity | Linear in printer hours, but parallel across free machines. | 5% off at 5 or more units, 10% off at 10 or more. |
One thing that is never estimated: a file you sliced yourself. If you send a .gcode or .gcode.3mf to the print API, its measured grams and hours are used exactly as they are, and no estimated colour overhead is added on top, because your slicer already counted every purge. The hours themselves still count: any beyond what a normal print of that weight would take are billed as machine time at $1.50/hour, which is what makes a self-sliced four-colour plate expensive.
Dispatch, and then transit#
Once the part is cool it comes off the plate, a person looks at it, and it is boxed. Every print goes out in the same parcel: a 6 x 6 x 6 inch box booked at 1 lb, because a house standard beats a per-order guess and the carrier re-rates on real weight anyway. Labels are bought in a batch, so an order finished just after a label run waits for the next one.
| Destination | Postage | Free over |
|---|---|---|
| United States | $7 flat | $49.50 |
| International, 23 countries | $30 flat | $500 |
- The carrier is recorded when the order is marked shipped, and the shipped email names it and links the tracking number.
- On /orders the tracking number appears as plain text without a carrier link. The email is the clickable copy.
- Delivered is set automatically. A daily sweep asks the carrier about every shipped order that has a tracking number and a known carrier, and marks it delivered when the carrier says so. An order whose carrier was recorded as Other is never queried, because there is no carrier to ask.
- Duties and import taxes on international parcels are yours.
If you have a hard deadline#
Priority print ($5 at checkout) puts your order at the front of the print queue and ships it in 1–2 business days instead of 4–5; express postage ($15) then shortens the transit to 2–3 business days. Every order carries a ship-by day, and the print queue lists priority jobs first, then the soonest ship-by, so the order promised first is printed first. Orders through the print API or the MCP server cannot buy Priority print yet and queue as Normal print. If you need it sooner than that:
- 1Check the queue before you order
Call the capacity endpoint and read general.backlogDays. That is the wait in front of you today, and it is the number that moves most.
bashcurl -s https://x3dstudios.com/api/farm/capacity | grep -o '"backlogDays":[0-9.]*' - 2Say the date out loud
Email [email protected] with your order number, or the model and material if you have not ordered yet, and the date you need it by. The operator can tell you whether it is achievable and will say if it is not. There is no automated promise behind this; a person answers.
- 3Cut the print, not the queue
Standard 0.2mm layers instead of premium, one colour instead of four, and 20% infill instead of solid all shorten the machine time you are waiting on.
- 4Reserve a machine for repeat work
If you need capacity you control rather than a place in the shared queue, book a printer by the hour or the day. A customer-held machine is carved out of the order lane entirely, so nobody else's queue is in front of you. See /docs/farm/reservations.
Next#
Quantity pricing, how large batches are split across machines, and what to send.
Machine time by the hour or the day, and what it costs.
The five order stages, which ones email you, and where the tracking number appears.
The machines, the build volumes, and who decides which one runs your part.
Questions
How long will my order take?
Two clocks, not one. Print time is queue depth plus your own print plus one handling day, and the live figure is published at https://x3dstudios.com/api/farm/capacity. Transit is on top of that and belongs to the carrier. A single small part with a clear queue is usually a day or two of farm time. What checkout states is the print speed you choose there: Normal print ships in 4–5 business days, Priority print in 1–2.
Is there a rush or expedited option?
Yes, on both halves. Priority print is $5 at checkout: your order is printed first and ships in 1–2 business days instead of 4–5. Express postage is $15 and moves the parcel in 2–3 business days instead of 4–6. Together, a priority print sent express arrives in about 3–5 business days. Both are chosen at checkout, beside each other, on /print, in the design studio and in the cart. Priority print is not offered through the print API or the MCP server yet, so an order placed there is queued as Normal print; express postage is available on the print API. If you have a hard deadline tighter than that, email [email protected] before you order so the operator can tell you whether it is achievable.
Where do your lead-time numbers come from?
Measured throughput, not a marketing figure. The median grams-per-hour of the last 200 completed jobs becomes the rate, once at least five of them pass sanity filters. With no usable history the fallback is 22 g/h, and the response tells you which was used in rates.measured.
Do your lead times account for weekends?
No. The ship date adds whole calendar days and has no weekend or holiday logic, so a quote that lands on a Sunday is a Sunday. Treat it as a floor, not a promise.
Related guides
- How Long Does 3D Printing Take? Real Times From a Print FarmHow long does 3D printing take? Machine times by part size, the settings that slow a print, and how a fast 3D printing service still ships within days.
- 3D Printer Camera: Why Print Farms Stream Every PrintWhy every machine on a print farm streams a live 3D printer camera: what a progress bar can't show, how video reaches a remote browser, what to watch for.
- Bulk 3D Printing Services Compared: Farms vs Bureaus (2026)Bulk 3D printing services compared: print farms, 3D printing service bureaus like Xometry, and API-first services, for runs of 100 to 10,000 parts.