How to Estimate Filament Needed for a Project (2026)

The most reliable way to estimate filament needed for a project is to slice the model in the slicer you actually print with, read the filament weight in the slice preview, then add 10 to 15 percent for waste. The whole thing takes about five minutes. Before slicing, a bounding box estimate gets you close enough to plan.

That sounds obvious, but the interesting part is what happens after the slicer hands you a number. It is usually grams, sometimes metres, sometimes cubic centimetres, and rarely all three in the same place. This guide walks through the whole chain: rough estimate, exact estimate, buffer, unit conversion, and finally whether the job fits on the filament sitting next to your printer.

I have wasted more material to bad planning than to failed prints, so the method below is the one I actually use before anything large goes on the plate.

Table of Contents

What You Need

What You Need

Five things feed the calculation. None of them are exotic, and all of them have to be right or the number downstream is wrong.

  • The model file — an STL, STEP or 3MF. A 3MF keeps the model’s own settings, which saves re-checking them later.
  • Your printer’s filament diameter — usually 1.75 mm, sometimes 2.85 or 3.00 mm. Get this wrong and every estimate shifts.
  • The slicer profile you will really print with — layer height, nozzle diameter, extrusion width, wall loops, infill percentage, support settings.
  • The material — PLA, PETG, ABS, ASA, TPU, nylon. Density changes the grams you get per metre.
  • A way to check what remains on a spool — a kitchen scale and a note of the empty spool weight, or a spool tracker, or the diameter measurement described below.

Two optional tools make it less tedious: a cheap digital scale for weighing finished prints and partly used spools, and a moisture-free box or a dryer for keeping filament in a state where it does not waste material through purging.

Step-by-Step

Step-by-Step

How to Estimate Filament Needed for a Project Using Dimensions

Start with the model’s outer dimensions. Multiply length by width by height and you get the bounding box volume, which is the ceiling of what the part could possibly use — the actual printed material is always far below it because most of that box is air.

The trick is a fill ratio. Multiply the box volume by an efficiency figure that matches the shape of the thing, and you land in the right neighbourhood:

What the model looks likeTypical fill ratio
Small dense part, mostly solid, minimal supports0.30 – 0.45
Functional part with walls and moderate infill0.15 – 0.25
Shelled part, low infill, tight bounding box0.08 – 0.15
Tall shape with lots of support and overhangs0.05 – 0.12

So a 120 by 80 by 100 mm enclosure gives a box volume of 960 cm³. At a fill ratio of 0.20 that is roughly 192 cm³ of printed material, and at PLA density of 1.24 g/cm³ that is around 238 g. The slicer will tell you whether that is close, and it usually lands within a factor of two either way — good enough to decide whether a 1 kg spool is even in the running.

You can also scale the model to fit. Every dimension of the part scales by the cube of the scale factor for volume, so scaling to 90 percent of the original size cuts material by roughly 27 percent. Halving the scale cuts material by 87 percent. This is the escape hatch when a part will not fit on the filament you have.

Use the Slicer for the Most Accurate Estimate

The slice preview is the source of truth, and it is more accurate than most people expect. A PrusaSlicer user on the Prusa forum reported an estimate of 107 g that came out at almost exactly 100 g on the scale, which is close enough to plan a print around.

Where the number lives depends on your slicer:

SlicerWhere to find itUnits shown
CuraPreview mode, right panel or the top toolbar summaryGrams, metres, cm³, time and layer count
PrusaSlicerPreview tab, Print Estimation panelFilament used in grams and metres
Bambu StudioPreview, filament panel in the settings columnGrams plus filament length in metres
OrcaSlicerPreview, Statistics panel toggled on in the preview menuGrams, metres and cost estimate

If you want the raw figure rather than the preview, save the G-code as a plain text file and open it in a text editor. The header comments contain the total filament length in millimetres and the volume in cubic millimetres, which is the same number the preview is showing you.

Understanding where that number comes from explains why the density table matters. The slicer measures the total length of every extruding move in the G-code, multiplies by the cross-sectional area of 1.75 mm filament, and then multiplies that volume by the material density to produce grams. Change the density in the filament profile and the gram figure changes with it.

Add Support, Brim, and Waste

The slicer estimate already contains supports, brim, raft, skirts and the purge line if you sliced the whole print. What it does not contain is material that never makes it out of the nozzle. A failed first layer, a clogged nozzle, a mid-print spaghetti event and the filament purged while a wet spool heats up all come out of your budget instead.

Print situationBuffer to add
Short print, well-tuned machine, dried filament5 – 10%
Medium print, normal wall thickness10 – 15%
Multi-day print or support-heavy geometry15 – 25%
Difficult material, new filament, unfamiliar machine20 – 30%

Moisture deserves its own line in the budget. Wet PLA and PETG pop and bubble through the nozzle, and the cure is either purging several metres on the first layer or abandoning the print and drying the spool properly. Either way you lose material, so dried filament is part of a sound estimate rather than an optional extra.

Convert the Estimate into a Purchase Decision

Grams become metres through the filament’s cross-section and density. One metre of 1.75 mm filament is 2.405 cm³, so the gram figure per metre is 2.405 multiplied by the density:

MaterialDensity (g/cm³)Grams per metreMetres per 1 kg spool
PLA / PLA+1.242.98about 335 m
PETG1.273.05about 327 m
ABS1.042.50about 400 m
ASA1.052.53about 395 m
TPU1.212.91about 344 m
Nylon1.142.74about 365 m

Density is why a kilogram of PLA does not cover as much of your spool as a kilogram of ABS. If your slicer shows 250 g of ABS instead of 250 g of PLA, that is roughly 100 m of filament versus about 84 m.

Two different numbers get confused here: net filament weight and gross spool weight. A filament roll is commonly sold as 1 kg net, while the empty spool itself weighs 200 to 250 g, so a fresh spool on your scale may read 1.2 kg. Record the empty spool weight once and subtract it forever after.

To check a partly used spool, measure the outer diameter with calipers and work inward, or read the remaining length from the spool holder if your printer has one. Bambu Lab printers with an AMS report the residual filament weight per spool, which is the same estimate with fewer steps. If you would rather avoid formulas entirely, weigh the spool and subtract the empty spool weight.

Finally, divide by what a spool actually holds. A 300 g estimate plus a 15% buffer is 345 g, so one 1 kg spool covers it with room to spare. A 1.4 kg estimate plus buffer needs two spools unless you have a scale to break the job into pieces that each fit.

Common Mistakes in the Pre-Slice Estimate

  • Treating the bounding box as the material. A tall model may occupy only a tenth of its box. Multiply by a fill ratio instead.
  • Ignoring wall loops. Infill gets all the attention, but on most parts the perimeters and the top and bottom layers take more material than the infill does.
  • Forgetting that supports are inside the slice but variable. Tree supports and paintable support interfaces change the total noticeably between orientations. Rotate the part and slice it twice.
  • Assuming the default profile is the profile you will use. The estimate is only valid for the settings that are actually loaded when you print.
  • Forgetting the buffer. The slicer number is the happy path. Ten to fifteen percent covers everything that happens at the nozzle.
  • Comparing grams from one material against a spool of another. Convert to metres before deciding whether a job fits.

Common Filament Estimate Mistakes and How to Fix Them

These show up after you have already started printing, and each one has a simple cause.

SymptomLikely causeFix
Print ends early with the estimate far from exceededFilament ran out before the slicer’s figure was reachedReconcile the estimate against actual spool weight; your estimate assumed a lower material density or a thinner layer than you printed
Machine uses noticeably more than the slicer estimateOver-extrusion, or wet filament being purged repeatedlyRun a flow or extrusion calibration test, dry the filament, then re-slice
Estimate seems far too high for a small partOverhanging geometry generating dense support, or a brim on a whole build plateRe-orient the part and re-slice to compare support volume
Estimated grams differ from weighed print by a wide marginUncalibrated flow rate on the machineCalibrate extrusion, print a 20 mm test cube, weigh it against the slicer figure
Noisy surface, constant popping, wasted materialMoisture absorbed by hygroscopic materialDry the spool, then add 5 to 10% to the buffer for the next run
Grams look plausible but the job still will not fitComparing grams to metres on the wrong materialConvert grams to metres with the density table above

One forum pattern is worth repeating: Bambu Lab owners commonly report the machine consuming five to ten percent more than Bambu Studio estimates, while PrusaSlicer users with a well-calibrated flow rate report figures within about seven percent. Treat slicer numbers as a strong starting figure rather than a guarantee, and add buffer accordingly.

Frequently Asked Questions

How many grams of filament does a typical 3D print use?

A small part such as a phone stand or a bracket usually runs 15 to 40 g. A mid-size functional part or a detailed figurine commonly lands between 80 and 200 g. Cosplay helmets, armour pieces and full articulated figures can reach 300 g to 600 g each, and batch jobs add up fast. Treat 250 g as roughly a quarter of a 1 kg spool, which is usually one substantial part rather than a whole project.

How do I convert filament grams to metres?

One metre of 1.75 mm filament holds 2.405 cm3, so multiply 2.405 by the material density. At PLA density of 1.24 g/cm3 that is 2.98 g per metre, so 250 g is about 84 m. Use 3.05 g per metre for PETG and 2.50 g per metre for ABS. A 2.85 mm or 3.00 mm filament has a larger cross-section, so check your printer’s nominal diameter before applying the 1.75 mm figure.

Why does my slicer filament estimate differ from the actual weight?

The slicer computes a perfect extrusion with your nominal filament diameter and density, while the machine has real flow variation, wipe and purge moves, and a pressure profile that is not perfectly steady. Calibration matters most: an over-extruding machine produces a heavier part than the estimate. Layer height, nozzle temperature and material shrinkage move it a little too. Weigh a 20 mm test cube to measure your own machine’s real offset.

Can I use 1.75 mm filament with a 0.4 mm nozzle?

Yes, that is the standard pairing and almost every consumer filament is 1.75 mm. The nozzle size sets extrusion width and layer detail, not the filament width. What matters is that the slicer filament profile lists 1.75 mm, because the estimate converts extruded length into grams using that diameter. Setting 2.85 mm on a machine that takes 1.75 mm inflates the estimated grams and throws the whole calculation off.

How much extra filament should I allow for supports, brim and failures?

Supports, brim, raft and skirts are already inside the slicer’s estimate because the slicer generates the toolpaths for them. Extra material comes from failures and purging, so add 5 to 10% for a short print on a well-tuned machine, 10 to 15% for a typical print, and 15 to 25% for a multi-day or support-heavy job. Wet filament that you purge repeatedly deserves its own allowance on top.

How do I calculate the filament cost of a 3D print?

Divide the price you paid for the spool by the net filament weight in grams, then multiply that cost per gram by the estimated grams plus your buffer. If you sell prints or run many machines, add electricity, failed print rate, machine wear and your time, because material is usually the smallest line in a real quote. Tracking those extras for a whole project is where a simple per-print estimate stops being enough.

Conclusion

Estimating filament for a project comes down to four moves: slice with the profile you will really use, read the gram figure from the preview, add 10 to 15 percent for what goes wrong at the nozzle, and convert to metres with the right density before you compare it to your spool. Skip the slicer and you are guessing from a bounding box; skip the buffer and a long print can still leave you short.

Start by slicing one of your own models with the intended material profile and noting the estimate against the finished part’s weight on a scale. That single comparison calibrates your machine, and after that every future estimate you make will be about as accurate as the slicer itself allows.

Leave a Comment