Skip to main content

3D Printing Cost Calculator

Calculate the total printing cost of your models

Model

Plates · 1 plate

Total: 36h 30m · 382 g

Costs

Filaments
Fixed Cost
Amortization
Accessories and Packaging

Price Setup

What does this mean?

On: the final price is inflated so that, after the marketplace deducts tax and the payment fee, you're left with your cost + markup. Use this for Mercado Livre, Shopee, Etsy and any platform that takes its cut from the displayed price. Off: tax and the payment fee are added on top of the base price. The customer pays more. Use this for direct sales where the invoice is billed to the buyer.

Price Summary

Unit Cost

$0.95

  • Filament36%
  • Energy17%
  • Amortization39%
  • Failures9%
Unit Cost

$0.95

$23.65 per plate

Filament$0.34
Energy$0.16
Fixed Cost$0.00
Amortization$0.37
Failures$0.08
Total Costs$23.65
Total Costs / unit$0.95
Consumer Price

$5.14

$128.55 per plate

Final Consumer Price$5.14
Final Consumer Price (total)$128.55
Gross Profit$4.20
Net Profit$3.78
Retailer Price

$2.57

$64.28 per plate

Retailer Price$2.57
Retailer Price (total)$64.28
Retailer Gross Profit$2.57
Retailer Net Profit$2.57

From the blog

All posts

How to calculate 3D printing cost

Pricing a 3D print accurately means adding up more than just filament. You also need the electricity the printer consumed during the print hours, the wear and tear of the machine itself, your shop's fixed costs, the inevitable failures, and any accessory or packaging included with the part. PrintCalc adds all of these transparently and then calculates a healthy selling price by applying your markup, taxes and payment platform fees.

What PrintCalc calculates

  • Filament cost based on weight (g) and material price per kg
  • Electricity cost based on print time and printer wattage
  • 3D printer amortization — depreciation of the machine per hour of use
  • Monthly fixed costs (rent, internet, maintenance) allocated per unit
  • Failure percentage to cover prints that don't come out right
  • Accessories and packaging with name, quantity and unit cost
  • Final price with markup, taxes (included or added on top) and payment fee
  • Gross and net profit margins for direct-to-consumer and wholesale pricing

Step by step: how to use PrintCalc

  1. 1. Set up the model

    Start with the model name and how many units you print per cycle. Add plates (if the model has parts in separate prints) with print time and estimated weight in grams. If you have the G-code file from your slicer, click the upload icon to autofill time and weight.

  2. 2. Configure filaments

    In the Costs section, define the model's filament library. Each entry has a type (PLA, PETG, TPU etc.), per-kg cost in your currency, an optional name and an optional color. With 2+ filaments in the library, each plate gains a "Plate filaments" list with swatch + dropdown + optional weight per material — perfect for multi-color prints (4 AMS PLAs auto-split the total weight evenly) or multi-material prints (assign explicit weights when prices differ, like PLA+/PLA/TPU on the same print). Multi-color G-code uploads auto-fill the per-filament weights.

  3. 3. Set printer and energy

    Pick your printer from the dropdown (presets for Bambu A1/P1S/X1/H2D/H2C, Creality Ender and K1, Prusa MK4 and XL, Anycubic Kobra 2, Flashforge Adventurer) or select 'Custom' and type the wattage. Configure cost per kWh — use the location button to estimate from your address.

  4. 4. Set markup, taxes and fees

    Markup is your profit multiplier (4× means price = cost × 5). Configure sales tax (per your local regime) and the payment-platform fee (Stripe, PayPal, Wise). Toggle 'include in price' if the platform deducts on receipt (marketplaces), leave off for direct invoicing.

  5. 5. Save, compare, export

    Save each named calculation (Saved button) to load later. Use Compare to put two configurations side by side — useful for simulating a printer swap or a markup bump. Export PDF to send a quote to the client (Client mode hides your margin; Me mode shows everything).

Common use cases

Maker selling on a marketplace

You sell prints on Etsy, eBay or Shopify. The final price has to cover the part's cost, the markup that pays for your time, the sales tax, and the platform fee taken from what you receive. Without summing all of these, what looks like $30 of profit becomes $12 when the payment clears. Toggle 'include tax and fee in price' so PrintCalc inverts the calculation and shows the display price that nets the margin you want after deductions.

Professional or studio at production scale

You run several printers and ship dozens of parts per month. Now fixed costs (rent, internet, maintenance) and machine depreciation become meaningful pieces of per-part cost. Configure monthly costs and an estimate of units per month — PrintCalc spreads them automatically. Save each client as a separate calculation and use Compare to see what changes when you tweak markup or switch filaments.

Hobbyist taking custom orders

You print occasionally for friends or via Instagram. The money has to cover at least filament, energy and the odds of a failed print. Without markup, it's wasted time. Use the '1 filament' or '2 filaments' template as a starting point, adjust weights and times, and charge at least 3× unit cost so you actually get paid for your time.

Reseller of printed parts

You don't print — you flip parts printed by others. Use the Retailer Price field to figure out how much to pay the printer and how much to resell at a margin. PrintCalc defaults to a 2× markup (printer gets half of the final price), but you can adjust. Useful for estimating margins before you partner with a local print shop.

Multi-color setup (AMS, AMS Lite, ACE Pro, IFS)

Printers with color-swap systems (Bambu AMS, Anycubic ACE Pro, Flashforge IFS) discard filament between colors — called purge. For a 4-color part, purge can be 30–60% of the total filament printed. Use the Purge (%) field and the 'AMS 4-color PLA' template to see the impact: a part that looks like it costs $5 in material can cost $8 once purge is counted.

G-code upload for automatic calculation

Instead of typing print time and weight by hand, you can upload a .gcode file produced by your slicer (Cura, PrusaSlicer, Bambu Studio, OrcaSlicer and similar). PrintCalc reads the file metadata and automatically fills in the estimated time and filament weight in grams. The file is processed 100% in your browser — nothing is sent to our servers.

Who PrintCalc is for

  • Makers who want to understand the real cost of every part they print
  • Shop owners and service providers pricing 3D printing orders
  • Hobbyists who sell parts occasionally and want to charge a fair price
  • Resellers of 3D-printed parts who need to estimate margins

3D printing glossary

Markup
Multiplier applied to cost to reach the pre-tax sale price. Markup 4× means price = cost × 5 (one cost share + four margin shares).
Amortization
Per-hour depreciation cost of the printer. Computed as (printer value ÷ useful life in hours) × current print hours. Covers wear on the machine.
Plate
One print session with its own time and weight. Large models that don't fit the build plate are split across plates (e.g. base + dome). In PrintCalc each plate can use a different filament.
G-code
The .gcode file generated by the slicer with printer instructions. Contains estimated time, filament length and movements. PrintCalc reads those metadata fields to autofill time and weight.
Purge (purge waste)
Filament discarded between color swaps in multi-color setups. The printer purges the previous material before printing with the next one. Typically 30–60% of total filament on 4+ color AMS prints.
AMS / AMS Lite
Bambu Lab's Automatic Material System. A four-spool carousel that swaps filament automatically. Equivalents: Anycubic ACE Pro, Flashforge IFS, Creality CFS.
PLA
Polylactic acid, the most common filament. Prints at 190–220°C, doesn't need an aggressively heated bed, low odor. Doesn't survive heat above ~50°C.
PETG
Polyethylene terephthalate glycol-modified. Tougher than PLA, food-safe, holds up to ~75°C. Prints at 230–250°C.
TPU
Thermoplastic polyurethane — flexible filament, ideal for parts that need to bend (phone cases, anti-slip feet). Needs a direct-drive extruder to print well.
CoreXY vs Bedslinger
CoreXY (Bambu P1S, X1, Voron) moves only the toolhead, bed stays still — faster and more stable. Bedslinger (Ender, Bambu A1) moves the bed back and forth — simpler and cheaper but limits speed.

Frequently asked questions

Is PrintCalc free?

Yes. PrintCalc is 100% free, no signup, no paid tier, no usage limits. We don't sell data — we just show modest ads to cover hosting.

Is my data saved anywhere?

Your settings are saved only in your own browser via localStorage. Nothing is sent to our servers. Clearing your browser wipes everything.

Does it work with any 3D printer?

Yes. You can pick a preset profile (Bambu Lab, Ender, Prusa, etc.) or enter your printer's wattage manually. Calculations are generic and work with any FDM printer.

How does amortization work?

Amortization is your printer's wear-and-tear per hour of use. We take the printer's purchase price and divide by its expected useful life in hours — that gives a depreciation cost per hour, multiplied by your print time.

Why include a failure percentage?

Every production run has failures: warping, detachment, jams. Adding a failure percentage (e.g. 10%) covers the material and time lost on prints that didn't come out — without it, your real margin is smaller than it looks.

What's the difference between Consumer Price and Retailer Price?

Consumer Price is what the end customer pays, including markup, taxes and payment fees. Retailer Price is the suggested wholesale price for someone reselling your prints — usually a lower markup (2x by default) to leave room for the reseller's margin.

How do I pick the right markup?

Markup depends on your market, but 3× to 5× is standard for FDM prints. Below 3× you cover cost but barely pay yourself. Above 5× only works in premium niches (cosplay, custom functional parts, decor). Use Compare to simulate different values and see the impact on net margin.

How do I account for multi-color prints (AMS, AMS Lite)?

Use the Purge (%) field to record filament discarded on color swaps. For 4 colors on AMS, 30–60% is typical. Add multiple filaments to the library (same type, different colors) to mirror the real setup. The 'AMS 4-color PLA' template ships with this configured.

Does the filament cost include purge?

Depends on the 'Plate weight is part-only' toggle. Default off: the weight you type already includes purge (slicers report total). On: you type only the part weight and PrintCalc adds purge on top — useful when you want to break out purge cost from part cost.

How do I configure taxes for my country?

Add your local sales tax rate (VAT, GST, state sales tax) to the Tax field. For marketplace sales where the platform withholds tax, toggle 'include in price' so the displayed price already nets the after-tax margin. For direct invoicing where you charge tax on top, leave the toggle off.

Can I use multiple plates for one large part?

Yes. If the part doesn't fit on the bed at once (e.g. a helmet in 4 sections, a sectioned large sculpture), split it into N plates. Each plate has its own time, weight and (optionally) filament. PrintCalc sums everything for the final part cost.

Which slicers does the G-code upload support?

PrusaSlicer, Bambu Studio, OrcaSlicer, SuperSlicer and Cura. The parser reads estimated print time and filament weight (or length) from the .gcode comments. 100% browser processing — the file never leaves your computer.

Why does energy cost vary so much between printers?

Enclosed CoreXY printers (Bambu X1, Prusa MK4S) typically draw 130–200W. Open bedslingers (Ender 3) sit at 80–150W. Heated beds consume a lot — a printer with a 60°C bed running constantly can double the consumption vs one without an aggressively heated bed. Use the printer preset or measure with a Kill A Watt.