Estimate filament use from an STL's volume
Before you commit to a long print, it helps to know roughly how much filament it needs. Your slicer gives the exact figure once the model is sliced, but you can get a useful upper bound in seconds from the model’s volume, even on your phone.
The formula
Filament weight is volume multiplied by density:
weight in grams = volume in cm³ × density in g/cm³
Typical densities are about 1.24 g/cm³ for PLA, about 1.27 for PETG and about 1.04 for ABS. They vary a little by brand and colour, so treat them as round figures. The spool label or the manufacturer’s data sheet has the exact value.
An example
Say a part measures 20 cm³:
- in PLA, 20 × 1.24 = 24.8 g if it were completely solid
- in ABS, 20 × 1.04 = 20.8 g
That is the weight of a solid block of that shape, which is more than the print will use.
Why the real number is lower
Slicers do not fill a part solid. They print outer walls and a lattice of infill, such as 15 percent, in the middle, so the actual use is a fraction of the solid weight. Supports and brims add material back. The result depends on your settings, which is why the slicer’s estimate is the one to trust for a final answer.
The solid weight is still useful. It is a ceiling: if even the solid weight fits on your spool, the print will too.
Get the volume from a viewer
MeshView shows the volume and surface area of a model in the readout, and these are part of the free features. Two cautions apply.
- The mesh must be watertight. Volume only has meaning for a closed solid. If the model has holes, MeshView shows “not watertight” instead of a number, because any figure would be a guess. Run the printability check to find the faults. See how to check an STL before you print it.
- The units must be right. An STL has no units, so a volume computed from a model drawn in inches is wrong by a large factor. Check the size first. See STL has no units.
A quick routine
- Open the model and check the X, Y and Z size against what you expect.
- Read the volume. If it says “not watertight”, fix the model first.
- Multiply by your filament’s density to get the solid weight.
- Compare that ceiling with what is left on the spool, then let the slicer give the exact figure.
Where this helps most
It is handy when a model comes from a download site and you are deciding whether to print it at all, or when you are choosing which of two sizes to make. It saves you opening a slicer just to find out that a part needs more filament than you have.