How to build a print farm workflow with PrintStash
Use PrintStash as the file and print record for a small farm, with known G-code revisions, provider-aware sending, measured or estimated costs, and alerts.
PrintStash can be the library and print record for a small farm. It keeps models, G-code revisions, printer jobs, and costs connected.
It is not an order system. Since v0.11.0 it can route queued jobs for you, but nothing here tracks customers, quotes, or due dates. For that side of the business, does a small print farm need an ERP? covers what fills the gap and when it is worth installing, and customer job submission covers the intake step that happens before any of this.
Structure the farm library
Create collections around stable parts of the business, such as product lines, clients, or internal tooling. Keep the source files and useful G-code revisions on the same model.
Use revision labels and notes to record why a slice exists. Parsed fields already cover material, nozzle, printer profile, layer height, temperatures, time, and filament estimates when the slicer writes them. Save tags for human categories such as active-product, needs-redesign, or customer-supplied.
Mark a successful revision known good. Mark the one operators should normally send as recommended. Those states can point to the same file, but they do not have to.
Send the right file to the right printer
Add each printer through the provider it exposes. Moonraker/Klipper is stable. OctoPrint, PrusaLink, Bambu LAN, and Elegoo Centauri support different beta capability sets.
Check the revision’s printer profile, nozzle, and material before sending. An idle printer is not necessarily a compatible printer. Upload without auto-start when the file or machine combination is new.
PrintStash shows live status and records the job outcome. It does not replace the first-layer check, controller UI, or physical machine maintenance.
Track costs per job
Moonraker can report measured duration and filament use after a job. Other providers currently rely on slicer estimates for consumption. Keep that distinction visible when using the numbers for quotes.
Spoolman can remain the spool inventory system. Select the spool when sending or logging a print. PrintStash can write measured Moonraker consumption back once, with a check that avoids double counting when Moonraker already manages the active spool.
PrintStash records print costs. It does not calculate labor, failed setup time, machine depreciation, packaging, or revenue. Add those separately before treating filament cost as a selling price. The real print-cost guide covers that boundary.
Notifications that matter
Notification channels can report completed, failed, or cancelled prints and a printer going offline. Configure Discord, Telegram, ntfy, or a public webhook under Settings -> Notifications.
Scope noisy channels to the printers that matter and disable cancellation alerts if operators cancel test jobs frequently. PrintStash does not send a separate recovery event when a printer comes back online.
The day-to-day flow
- Open the ordered model and check its recommended revision.
- Confirm that the revision is known good for the intended printer setup.
- Select the printer and spool.
- Send without start if an operator still needs to prepare the bed or material.
- Watch the first layer in the printer controller.
- Let PrintStash record completion, duration, consumption where supported, and cost.
- Add a note when the operator learns something that the G-code metadata cannot explain.
Repeat orders then start from a recorded file and result instead of a search through old folders. Routing, maintenance windows, and the queue itself arrived in v0.11.0. Order states, quotes, and customer records still need separate software, and collections do not provide them.