Production Scheduling for 3D Print Farms: From Job Queue to Fulfillment
There's a difference between managing a job queue and running a production operation. A job queue answers "what prints next?" A production operation answers "can I ship 50 units by Thursday, and am I on track?"
Most print farm operators start with job queues. The farms that take on fulfillment commitments — customer orders, recurring production runs, deadline-driven batches — need something more.
What changes when you take fulfillment orders
A single-job workflow looks like this: someone creates a job, assigns it to a printer, waits for it to finish, creates the next job. At 5 printers, this is manageable. At 15 printers with 50 units of the same part due Friday, it's untenable.
The problems that appear at scale:
Counting is manual. Someone has to track how many of the 50 units are complete, how many are in progress, and how many are still queued. A spreadsheet works until it doesn't, and it usually stops working when you're most stressed.
Requeue is repetitive. Every time a printer finishes, a job has to be created and assigned. If you're running 15 printers and the job takes 2 hours, that's 7–8 requeue events per printer per day — 100+ per day across the fleet.
Deadline visibility is zero. Without a production batch, there's no answer to "are we on track for Friday?" You have to do the math manually: units complete, units remaining, printers available, average print time. And then redo it every time someone asks.
Priority gets lost. A rush order competes with background production in an informal queue. Whoever shouts loudest gets the printers, not whoever has the most urgent deadline.
Production scheduling solves all of these.
How production batches work
A production batch is a named run with:
- One or more model files (parts)
- A target quantity per part
- An optional deadline
- Auto-routing enabled — the system assigns jobs to compatible printers without manual intervention
You create the batch once. The system handles everything from there: routing each print to an available printer, tracking completion against the target count, and queuing the next job the moment a printer clears.
When you need 50 widgets by Thursday, the workflow is:
- Create batch: name = "Widget run — customer order", model = widget.3mf, quantity = 50, deadline = Thursday 5pm
- The queue routes jobs to available printers continuously until 50 are complete
- You see progress (units complete / 50) in the batch view
- You get alerted if the completion rate suggests you'll miss the deadline
No spreadsheet. No manual requeue. No "how many did we do today" conversation.
Multi-part batches
Production batches aren't limited to one model. If a customer order includes an enclosure, a lid, and two mounting brackets — four distinct parts — you create one batch with four line items, each with their own target count.
The routing system handles each part independently: bracket jobs go to printers where the material and nozzle size match, enclosure jobs route to printers with the right build volume headroom. Parts with different material requirements route to different printers simultaneously.
The batch view shows completion per part:
- Enclosure: 8/10
- Lid: 10/10 ✓
- Bracket (left): 18/20
- Bracket (right): 17/20
One view tells you whether the order is on track and where the bottleneck is.
Deadline tracking and feasibility
Setting a deadline on a batch surfaces the planning question before you commit to a customer: given current printer availability, material, and average job duration, is this timeline achievable?
If you have 8 compatible printers and each print takes 3 hours, the math is roughly 8 printers × 3 runs/day × N days available. The system runs this estimate based on actual current availability — not theoretical capacity.
The output isn't a guarantee, but it's a real calculation: "At current fleet utilization, 50 units by Thursday is achievable. You have capacity for approximately 65 by that deadline."
This estimate is most useful at batch creation — before you commit. It's less useful after the batch is running, when the deadline burn-down view becomes more relevant.
When to use production batches vs. individual jobs
Use production batches when:
- You have a specific target count (not "run until I say stop")
- You have a deadline, even a soft one
- You're running more than one print of the same part
- The work has a completion state — "done" means N units shipped, not "printer is idle"
Stick to individual jobs when:
- You're running one-offs or small-quantity experiments
- The job is exploratory — you don't know how many you'll need yet
- It's calibration or maintenance, not production
Most farms end up with both workflows running simultaneously: production batches for fulfillment and customer orders, individual jobs for R&D and one-offs. The queue handles both.
Concurrent printer limits
A batch can be configured with a maximum number of concurrent printers. This matters when:
- A batch uses high-value or scarce material — you don't want the entire fleet tied up on one order
- Another batch has higher priority and needs printer capacity available
- You're running parallel batches for different customers and want to ensure each gets a fair share of the fleet
Setting max_concurrent_printers: 6 on a batch means at most 6 printers run jobs from that batch simultaneously, even if more are available. The remaining printers route to other queued work.
Building a production workflow
The operational habits that make production scheduling work:
Enter every production commitment as a batch. The moment you take an order or set a production target, create the batch. Don't plan to "do it later" — the value is in tracking from the start.
Set realistic deadlines. A deadline that's too tight creates phantom urgency; a deadline with no buffer creates real problems. Leave 20–30% margin on the timeline for failures, material issues, and unexpected printer downtime.
Review batch health daily. At shift start, check completion rates against deadlines for all active batches. A batch that's 40% complete with 30% of time remaining is on track. A batch that's 40% complete with 10% of time remaining needs immediate attention.
Archive completed batches. A completed batch is a historical record: how many units, over how long, how many failures along the way. This data informs how you quote future work of similar scope.
Production scheduling is available on Print Hive Pro ($49/mo, up to 10 printers). Starter includes the job queue and failure detection. Start free →