Guide
Slicer profile vs per-gram pricing
Every generic 3D printing calculator asks for a model and a material and returns a price. It cannot be right, and the reason is measurable rather than philosophical. Here is the measurement.
The experiment
We took a single STL — a real customer part, not a benchmark cube — and sliced it three times. Same file, same settings, same material: 0.20 mm layers, 20% infill, PLA. The only thing that changed was which machine it was being sliced for, each on its own stock profile.
If a per-gram rate were a sound basis for pricing, the three results would be close together. They are not.
| Machine | Plastic | Print time |
|---|---|---|
| PrusaSlicer · MK4 | 2.44 g | 12 m 06 s |
| Bambu Studio · P1P | 2.02 g | 6 m 45 s |
| A third machine, stock profile | 4.07 g | 17 m 35 s |
That is a 2.0× spread in plastic and a 2.6× spread in time, on one file, with every customer-facing setting held identical.
Why the numbers move so much
Nothing here is a defect. Each profile is correct for its machine; they simply disagree about how to build the same shape.
Wall and top/bottom counts
A profile that defaults to three walls instead of two puts materially more plastic into the same part, and the difference grows with surface area rather than volume. Two profiles can be equally sensible and differ by 30% on a thin-walled part for this reason alone.
Support policy
Support thresholds, interface density, and whether supports are generated at all are profile decisions. A part with a 50° overhang gets supports under one profile and none under another. Supports are pure waste mass that the customer never sees, and on an awkward part they can rival the part itself.
Infill pattern, not just density
"20% infill" is not one thing. Gyroid, grid, cubic and lightning at the same nominal density lay down different amounts of plastic and take very different times to draw. Lightning infill in particular can be a fraction of the mass of grid at the same setting.
Speed, acceleration and jerk
These barely touch mass but dominate time. It is why the P1P above is nearly half the print time of the MK4 for less plastic — the machine simply moves faster. If your hourly machine rate is a real number, that difference is money.
What this means for a per-gram rate
A per-gram rate has to be a single number, so it has to be an average. Averaging across the spread above means:
- Parts that slice light for your machine are over-quoted, and you lose the job to someone who priced it properly.
- Parts that slice heavy are under-quoted, and you win them — which is worse, because you now do them at a loss.
The failure is asymmetric, and that is what makes it dangerous. You do not notice the jobs you did not win. You only see a full print queue and a thin margin, and the two feel unrelated.
The same argument applies to borrowing another shop's rate. A rate that works for a shop running fast machines on lightning infill will not work for a shop running a slower machine that defaults to grid — even if both shops charge "per gram of PLA" and both are being perfectly honest.
What to use instead
The only quantity that is actually true for your shop is the one your own slicer produces for your own machine. Everything else is an approximation of it, and the measurement above is how wide that approximation gets.
Practically, there are three ways to do this:
- Slice every enquiry by hand. Correct, and what most careful shops do. The cost is fifteen to forty minutes per enquiry, paid before you know whether the customer is real.
- Build a rate card per machine per material from a sample of parts you have already sliced. Better than one global rate, still an average — it just fails on a narrower range of geometry.
- Slice automatically at quote time, which is what this site sells. The customer's file goes through your actual profile and the number that comes back is the one you would have produced by hand.
How we do it
3Dash imports your machine by reading one G-code file you have already produced. A G-code file embeds the entire resolved configuration that produced it, so your walls, supports, infill pattern, speeds and temperatures come across exactly as you have them — there is no profile to re-enter and nothing to keep in sync. We then show you what we read, so you can correct anything that looks wrong.
From then on, a customer uploading a model on your website triggers a real slice against that profile, and your rates and margin are applied to the result. We support PrusaSlicer, OrcaSlicer and Bambu Studio, plus the vendor slicers built on Orca — Creality Print, Anycubic, Qidi and Flashforge — which share its profile format. Cura is not supported yet.
Try it on one of your own files, no account needed. If you want the full pricing method this fits into, start with how to quote a 3D printing job accurately.