This is an estimate, not a quote. Figures may not reflect real cost for very specific or complex items. This tool does not replace a proper cost analysis before production.

Item details

1

Basic information

2

Size — upload an STL, or enter dimensions

If you have the file, upload it: the volume, surface area and overhangs are measured directly, which is far more accurate. Otherwise enter the bounding box by hand.

Orientation does not matter — Z is used as the print height.

Diagram showing the X, Y and Z dimensions of a part
3

Shape complexity

Pick the picture closest to your part. Complexity drives support material, print speed, post-processing time and scrap rate.

Simple Complex

Selected: — (multiplier —)

4

Context

Advanced settings — printer, material, process and labour

Printer and material

Print process

Labour and design

Build volume

Save or load a printer profile

How the estimate is calculated

Two ways in, one model

An uploaded STL gives the exact part volume, surface area and overhang area. Without a file, the same three quantities are estimated from the bounding box, the occupancy figure and the complexity tier. Everything after that is identical, so the two routes stay comparable.

Material

An FDM part is a solid skin over a sparse core, so material tracks surface area at least as much as volume. Shell and infill are modelled separately rather than multiplying volume by a single fudge factor:

  • shell_volume = min(surface_area × wall_thickness, part_volume)
  • core_volume = part_volume − shell_volume
  • printed_volume = shell_volume + core_volume × infill_density
  • support_volume = overhang_area × height × 0.35 × 0.15
  • material_cost = (printed_volume + support_volume) × density × cost_per_gram × material_grade

Time

Volumetric throughput sets the floor, but a tall part with small layers is limited by per-layer overhead instead — Z moves, travel and minimum layer time. Ignoring that badly underestimates small, detailed parts:

  • effective_flow = flow_rate × flow_efficiency ÷ complexity
  • extrusion_time = material_volume ÷ effective_flow
  • layer_overhead = ceil(height ÷ layer_height) × 6 s
  • print_time = extrusion_time + layer_overhead

Machine, labour and scrap

  • electricity = print_time × (watts ÷ 1000) × price_per_kWh
  • depreciation = (printer_cost ÷ lifespan_hours) × print_time
  • post_processing = base_hours × complexity × (1 + support_ratio)
  • setup = setup_hours × number_of_plates, where plates come from how many parts fit the bed
  • scrap_rate = (0.01 with UPS, else 0.05) × complexity × qc_factor, capped at 60 %
  • design = design_cost × complexity × design_effort, once per job, only when the design does not exist

Purpose factors

Purpose affects three different things, so it is not one multiplier applied everywhere. A critical part needs better material and much more inspection and design validation, but not 2.5× the plastic.

PurposeMaterial gradeQC / scrapDesign effort
General / decoration1.001.01.0
Prototype0.900.80.8
Functional / spare part1.151.21.2
Critical / medical1.602.52.5

Totals

  • unit_manufacturing = (material + electricity + depreciation + post_processing) × (1 + scrap_rate)
  • total = unit_manufacturing × quantity + setup + design
  • unit_incl_design = total ÷ quantity

Not included

Packaging, shipping, import duties and customs are too context-specific to estimate here. Filament drying, failed-print disposal and printer maintenance beyond straight-line depreciation are also excluded.