Most new print sellers lose money on their first 20 orders. They price by filament weight alone, forget the hours of machine wear, ignore the 8% of prints that fail, and never pay themselves for post-processing. A 3D print price is a sum of six costs plus a margin. Miss one and your profit disappears.
Quick Takeaways
- Core formula: Price = (Material + Machine Time + Electricity + Labor) × (1 + Failure Rate) × (1 + Profit Margin) + Fixed Fees.
- Realistic failure buffer: add 5-15% for FDM, 10-20% for resin.
- Healthy margin: target 40-100% over total cost for custom work, 30-50% for repeat catalog items.
- Never skip labor: post-processing and customer service often cost more than the filament.
| Cost Factor | Typical FDM Value | Typical Resin Value |
|---|---|---|
| Material | $15-$30/kg | $30-$60/L |
| Machine rate | $1.00-$3.00/hr | $2.00-$5.00/hr |
| Electricity | $0.01-$0.04/hr | $0.02-$0.05/hr |
| Failure buffer | 5-15% | 10-20% |
| Labor rate | $15-$40/hr | $15-$40/hr |
Why Weight-Based Pricing Fails
Charging “$0.10 per gram” feels simple. It breaks fast.
A 30 g bracket printing at 0.12 mm layer height may run 9 hours. A 30 g vase in spiral mode at 0.4 mm may finish in 40 minutes. Same weight, a 13x difference in machine time. Weight-only pricing undercharges slow, detailed parts and overcharges fast, chunky ones.
A sound price model accounts for what you actually spend:
- Material consumed (including supports and waste)
- Machine time (depreciation, maintenance, consumables)
- Electricity
- Labor (setup, post-processing, packing, communication)
- Failure risk
- Overhead and platform fees
- Profit
Step 1: Calculate Material Cost
Pull the total filament grams from your slicer, including supports, brim, skirt, and purge tower.
Formula: Material Cost = (Spool Price ÷ Spool Weight in g) × Grams Used
A $22 1 kg spool costs $0.022/g. A 120 g part costs $2.64.
Add a waste factor of 3-5% for purge, failed first layers, and the filament stub left on every spool.
Typical Material Costs
| Material | Price per kg | Density (g/cm³) | Difficulty | Common Use |
|---|---|---|---|---|
| PLA | $16-$25 | 1.24 | Easy | Prototypes, decor |
| PETG | $18-$28 | 1.27 | Easy-Medium | Functional parts |
| ABS/ASA | $20-$32 | 1.04-1.07 | Hard | Automotive, outdoor |
| TPU 95A | $28-$45 | 1.21 | Medium | Flexible parts, gaskets |
| Nylon (PA12) | $45-$90 | 1.01 | Hard | Gears, wear parts |
| PA-CF | $60-$110 | 1.10-1.20 | Hard | Structural parts |
| Standard Resin | $30-$60/L | 1.1 | Medium | Miniatures, detail |
Engineering materials need hardened nozzles (0.4 mm hardened steel or ruby-tipped), dry boxes, and enclosures. Price that infrastructure into your rate.
Step 2: Calculate Machine Time Cost
Your printer is a depreciating asset with consumables. Charging only for filament means you pay to use your own equipment.
Formula: Machine Rate = (Printer Cost ÷ Lifespan Hours) + Maintenance per Hour
Example: a $600 printer with a 5,000-hour useful life gives $0.12/hr depreciation. Add nozzles, belts, build plates, lubricants, and repairs at about $0.30/hr. Your base machine rate is roughly $0.42/hr.
Most sellers then add a capacity premium. A printer that runs 24/7 for you blocks other orders. Many shops charge $1.00-$3.00/hr to account for opportunity cost and idle time between jobs.
Machine Rate by Technology
| Technology | Typical Hourly Rate | Notes |
|---|---|---|
| Entry FDM (Ender-class) | $0.75-$1.50 | Needs more tinkering |
| Mid-range FDM (Bambu/Prusa-class) | $1.50-$3.00 | Fast, reliable |
| Large-format FDM | $3.00-$8.00 | Long jobs, higher risk |
| Resin MSLA | $2.00-$5.00 | Add wash/cure costs |
| SLS (small shop) | $8.00-$20.00 | Powder refresh matters |
Step 3: Add Electricity
Electricity is small but easy to compute.
Formula: Electricity Cost = (Average Watts ÷ 1000) × Hours × Rate per kWh
A printer averaging 120 W over 10 hours at $0.16/kWh uses 1.2 kWh, costing $0.19. Enclosed printers with heated chambers can average 250-400 W. Measure with a plug-in power meter rather than guessing.
Step 4: Price Your Labor
Every job has hands-on time even when the printer runs alone. Track it.
| Task | Typical Time |
|---|---|
| File review, slicing, orientation | 10-30 min |
| Printer setup and bed prep | 5-10 min |
| Support removal and cleanup | 5-45 min |
| Sanding, priming, painting | 30-240 min |
| Resin wash and cure | 15-30 min |
| Quality check and packing | 10-15 min |
| Customer communication | 10-30 min |
At $25/hr, a 40-minute finishing job adds $16.67. Many sellers skip this line, then wonder why a $9 print costs them an evening.
Step 5: Build In the Failure Rate
Prints fail. Spaghetti, warped corners, clogged nozzles, power blips, and layer shifts all consume material and hours.
Measure your own rate: failed prints ÷ total prints over 90 days. Typical numbers:
| Scenario | Failure Rate |
|---|---|
| Tuned, enclosed, high-end FDM | 2-5% |
| Standard FDM, mixed jobs | 5-10% |
| Large, long, or engineering-material prints | 10-20% |
| Resin with complex supports | 10-20% |
Apply it as a multiplier on production cost. At 8% failure, multiply by 1.08. For a 20-hour print, raise it further, because a failure at hour 19 costs far more than one at minute 15. Some shops use a risk tier: +5% under 3 hours, +10% for 3-10 hours, +15% beyond 10 hours.
Step 6: Add Overhead, Fees, and Profit
Overhead covers software licenses, rent share, insurance, filament storage, packaging, and marketing. A simple method is a flat 5-10% overhead on top of costs, or a fixed $2-$5 per order handling fee.
Marketplace fees also matter:
| Platform | Typical Fee |
|---|---|
| Etsy | ~6.5% transaction + ~3% payment + listing fee |
| Shopify + Stripe | ~2.9% + $0.30 per order |
| Direct invoice (PayPal/Stripe) | ~3% |
| Local/cash | 0% |
Then set your profit margin. Profit is what remains after you’ve paid yourself, replaced equipment, and covered risk. It funds growth.
The Complete Pricing Formula
Production Cost = Material + (Print Hours × Machine Rate) + Electricity
Labor Cost = Labor Hours × Hourly Labor Rate
Subtotal = (Production Cost × (1 + Failure Rate)) + Labor Cost
With Overhead = Subtotal × (1 + Overhead %)
Price = (With Overhead × (1 + Profit Margin)) + Fixed Fees
Final Price = Price ÷ (1 - Platform Fee %)
Worked Example: Custom PETG Enclosure
Specs: 180 g PETG, 11 print hours, 0.2 mm layers, 15% infill, 45 min of post-processing.
| Line Item | Calculation | Amount |
|---|---|---|
| Material | 180 g × $0.025 (+4% waste) | $4.68 |
| Machine time | 11 h × $1.75 | $19.25 |
| Electricity | 0.12 kW × 11 h × $0.16 | $0.21 |
| Production cost | $24.14 | |
| Failure buffer (10%) | × 1.10 | $26.55 |
| Labor | 0.75 h × $25 + 20 min slicing/comms ($8.33) | $27.08 |
| Subtotal | $53.63 | |
| Overhead (7%) | × 1.07 | $57.38 |
| Profit (50%) | × 1.50 | $86.07 |
| Packaging/handling | flat | $3.00 |
| Platform fee (9.5%) | ÷ 0.905 | $98.42 |
Round to $99. Weight-based pricing at $0.10/g would have quoted $18. That is a $70 loss per sale you would never notice.
Pricing Models Compared
| Model | Best For | Pros | Cons |
|---|---|---|---|
| Cost-plus (formula above) | Custom/one-off jobs | Accurate, defensible | Ignores market ceiling |
| Per-gram | Quick estimates | Fast | Misprices slow/fast prints |
| Per-hour | Service bureaus | Fair for complexity | Hard for customers to predict |
| Value-based | Unique or branded products | Highest margins | Needs strong positioning |
| Tiered/volume | Batch production | Encourages bigger orders | Needs batch efficiency |
Use cost-plus to set your floor, then check market comparables for your ceiling. If the market price falls below your floor, change the product, speed up production, or skip the job.
Slicer Settings That Change Your Price
Cost rises and falls with settings. Quote with the right ones.
| Setting | Lower Cost | Higher Cost |
|---|---|---|
| Layer height | 0.28 mm | 0.08 mm |
| Infill | 10-15% | 50-100% |
| Walls | 2 | 5+ |
| Supports | None/minimal | Tree/dense |
| Print speed | 150-250 mm/s (tuned) | 40-60 mm/s (quality) |
| Nozzle | 0.6 mm | 0.2 mm |
Dropping layer height from 0.2 mm to 0.1 mm roughly doubles print time. Charge accordingly, or set a standard quality tier and sell upgrades.
Automate Estimates with Slicer Output
If you run Klipper or OrcaSlicer, pull time and filament data automatically. This Python snippet reads the footer comments from a sliced G-code file:
import re, sys
def parse_gcode(path):
grams = hours = 0.0
with open(path, "r", errors="ignore") as f:
for line in f:
if "filament used [g]" in line:
grams = float(re.findall(r"[\d.]+", line)[-1])
if "estimated printing time (normal mode)" in line:
h = re.search(r"(\d+)h", line)
m = re.search(r"(\d+)m", line)
hours = (int(h.group(1)) if h else 0) + (int(m.group(1)) if m else 0) / 60
return grams, hours
def price(grams, hours, spool=22, spool_g=1000, machine=1.75,
watts=120, kwh=0.16, labor_h=0.75, labor_rate=25,
fail=0.10, overhead=0.07, margin=0.5, fixed=3.0, fee=0.095):
material = grams * (spool / spool_g) * 1.04
production = material + hours * machine + (watts / 1000) * hours * kwh
subtotal = production * (1 + fail) + labor_h * labor_rate
total = subtotal * (1 + overhead) * (1 + margin) + fixed
return round(total / (1 - fee), 2)
g, h = parse_gcode(sys.argv[1])
print(f"{g} g | {h:.1f} h | ${price(g, h)}")
Run it with python quote.py part.gcode. Slicer comment wording varies, so check your footer lines and adjust the patterns.
Real-World Pricing Scenarios
Scenario 1: Etsy Miniatures (Resin)
A tabletop gaming seller prints 28 mm miniatures at 0.05 mm layers. Batch printing 12 figures per plate cuts per-unit machine time by about 80%. Hand finishing and priming dominate costs, so labor, not resin, sets the price. Typical retail: $6-$18 each.
Scenario 2: Automotive Replacement Parts (ASA/PA-CF)
A hobbyist sells dashboard clips and interior trim for discontinued models. Material is pricey, tolerances run ±0.15 mm, and a failed print wastes premium filament. Add a 15% failure buffer and charge value-based pricing, since buyers have no alternative supplier.
Scenario 3: Functional Prototypes for Local Businesses
Engineers want fast turnarounds. Charge a rush multiplier of 1.25-1.5x for same-day or next-day jobs and a minimum order of $25-$40 so tiny jobs still cover setup time.
Scenario 4: Batch Production Runs (50+ Units)
Spread setup and slicing labor across the batch. A 20-30% volume discount stays profitable when you print full plates and dial in settings after the first article passes inspection.
Common Pricing Mistakes
- Ignoring supports and purge waste. Slicers report totals; use them.
- Pricing from your hobby cost. Business rates include time and risk.
- Matching the cheapest seller. Low-price competitors are often unprofitable or hobbyists.
- No minimum order. A $4 order that takes 40 minutes of admin loses money.
- Forgetting revision rounds. Bill design changes at your labor rate.
- Never updating rates. Review filament prices, electricity, and failure data quarterly.
Build a Reusable Pricing Spreadsheet
Set up one sheet with these inputs and let formulas do the rest:
| Cell Group | Inputs |
|---|---|
| Material | Spool price, spool weight, waste % |
| Machine | Printer cost, lifespan hours, maintenance/hr, capacity premium |
| Energy | Average watts, kWh rate |
| Labor | Hourly rate, minutes per task |
| Business | Failure %, overhead %, margin %, platform fee % |
| Per-job | Grams, print hours, labor minutes |
Log every job’s actual time and actual grams. After 30 jobs, compare quoted versus real cost and tune your multipliers.
FAQ
How much should I charge per hour for 3D printing?
Most FDM sellers charge $1.50-$3.00 per machine hour on top of material, plus labor for hands-on work. Resin runs $2.00-$5.00/hr. Industrial SLS or large-format work can exceed $10/hr.
What is a good profit margin for 3D printed products?
Aim for 40-100% over total cost on custom work and 30-50% on repeat catalog items. Service bureaus with high equipment costs often target 50%+. Products with a unique design can command higher margins.
How do I account for failed prints in my price?
Track failures over 90 days and divide failed prints by total prints. Multiply your production cost by 1 + that rate. Most shops land between 5% and 15%. Raise the buffer for long prints and difficult materials.
Should I charge by weight or by time?
Charge by both. Weight covers material, time covers machine wear, electricity, and risk. A combined cost-plus formula prices both fast, bulky parts and slow, detailed parts correctly.




