Software costs
Build vs Subscribe Cost Estimator
Estimate whether building an internal tool beats subscribing to a SaaS over a chosen time horizon. Inputs cover build hours, hourly cost, maintenance hours, infrastructure, subscription price, and switching cost. The output runs three maintenance scenarios (Conservative, Base, Aggressive) so the decision is not a single deterministic answer.
Formula
- Build upfront = Build hours * Hourly cost (constant across scenarios)
- Subscribe total over horizon = Switching cost + (Subscription monthly * Horizon months) (constant across scenarios)
- The estimator runs three maintenance scenarios from your single Monthly maintenance hours input:
- Conservative scenario maintenance hours = your input * 1.5 (higher maintenance, build is worse)
- Base scenario maintenance hours = your input * 1.0 (your inputs as entered)
- Aggressive scenario maintenance hours = your input * 0.75 (lower maintenance, build is better)
- For each scenario:
- Build monthly = (Scenario maintenance hours * Hourly cost) + Infrastructure monthly
- Build total over horizon = Build upfront + (Build monthly * Horizon months)
- Break-even month = Build upfront / (Subscription monthly - Build monthly), when Subscription monthly > Build monthly
- Savings at horizon = Subscribe total over horizon - Build total over horizon
- Decision = Build wins / Subscribe wins / Tied based on sign of Savings
- Output shows Conservative / Base / Aggressive Build totals, the Subscribe total, and the per-scenario decision and break-even month.
Examples
- Base inputs: 200 hrs build at $100/hr ($20,000 upfront), 8 maintenance hrs/mo, $200 infra. Subscribe $500/mo with $1,000 switch over 36 months. Subscribe total = $19,000. Conservative (12 maint hrs/mo, Build monthly $1,400): Build total $70,400, Subscribe wins by $51,400. Base (8 maint hrs/mo, $1,000 monthly): Build total $56,000, Subscribe wins by $37,000. Aggressive (6 maint hrs/mo, $800 monthly): Build total $48,800, Subscribe wins by $29,800. Subscribe wins in all three scenarios.
- If maintenance can realistically be only 2 hrs/mo and infra $50: rerun with maintenance input = 2. Aggressive then drops Build monthly even further. This case favors Build across all 3 scenarios.
- Heavy subscription replacement: 1,000 hrs build at $150/hr, 40 maint hrs/mo, $500 infra, $5,000/mo subscription, $20,000 switch, 60 months. Subscribe total = $320,000. Conservative Build $660,000 (Subscribe wins by $340,000). Base $540,000 (Subscribe wins by $220,000). Aggressive $480,000 (Subscribe wins by $160,000). Subscribe wins in all three; the maintenance lever is not enough to flip the decision.
When to use this calculator
- Decide whether to build an internal tool or pay for a SaaS subscription.
- Identify the break-even month for an internal build vs ongoing subscription.
- Stress-test the decision with different hourly costs and maintenance assumptions.
Common mistakes
- Underestimating maintenance hours. Software does not maintain itself; 8-20% of build hours per year is a common minimum.
- Using hourly wage instead of fully loaded cost. Benefits and overhead typically add 25-40% on top of base.
- Ignoring switching cost. Even subscribing has a real one-time setup, integration, and training cost.
Frequently asked questions
What does this estimator return?
Total cost of building an internal tool vs subscribing to a SaaS over a chosen time horizon, plus a break-even month if build wins on monthly delta. Inputs cover build hours, hourly cost, maintenance hours, infrastructure, subscription price, and switching cost.
Why is this an Estimator and not a Calculator?
Build vs subscribe decisions depend on many factors beyond cost: opportunity cost of engineering time, vendor lock-in risk, feature parity, compliance, hiring constraints. The estimator outputs a cost comparison; the decision is broader than the math suggests.
What hourly cost should I use?
Use fully loaded hourly cost: base salary plus benefits plus overhead plus opportunity cost. For a US software engineer earning $150k base, fully loaded cost is typically $150-$250/hour depending on overhead allocation. Junior engineers run lower ($80-$150); senior or specialist engineers run higher ($200-$400).
How many maintenance hours should I budget?
A common minimum is 8-20% of original build hours per year on maintenance, scaled by complexity. For a 200-hour initial build, plan 16-40 maintenance hours per year. For mission-critical tools, double that. The default 8 hours/month is conservative; tools with frequent feature additions need more.
What goes into switching cost?
Switching cost is one-time: data migration, integration with existing systems, team training, downtime risk, vendor procurement and contract. Even simple SaaS subscriptions have meaningful switching cost. Set it to a realistic estimate, not zero.
What time horizon should I use?
Use the realistic lifespan of the tool. For internal tools that are core to operations, 5-7 years is common. For experimental or stopgap tools, 1-2 years. The longer the horizon, the more amortized the upfront build cost becomes.
Why does break-even month matter?
If build wins on total cost but the break-even is past your time horizon, you should subscribe. Break-even shows when the monthly delta starts paying back the upfront build investment. A 60-month break-even on a tool you might replace in 24 months means you should subscribe.
What is not modeled?
Opportunity cost of engineering time (could the team be shipping revenue features instead?), feature parity gap risk (does the build match the SaaS feature set?), vendor lock-in, compliance differences, hiring constraints, and procurement overhead. All matter; none are in the formula. Use the cost output as one input among many.
Related calculators
Sources and assumptions
- Hourly cost is fully loaded (salary + benefits + overhead), not just gross hourly wage.
- Maintenance hours are recurring; bug fixes, dependency updates, security patches, and feature additions all live in this bucket.
- Conservative / Base / Aggressive scenarios stress maintenance hours by 1.5x / 1.0x / 0.75x respectively. The 50%-up and 25%-down width is a planning convention; if you have firm estimates, set the input close to the worst case and read Base as your worst-case answer.
- Infrastructure monthly includes hosting, database, third-party APIs, monitoring, and any other ongoing infra cost.
- Switching cost includes data migration, training, integration, and downtime risk; even subscribing has a switching cost from existing tooling.
- Time horizon defaults to 36 months. Shorter horizons favor subscription; longer horizons favor build if internal team has capacity.
- NOT modeled: opportunity cost of engineering time, feature parity gap risk, vendor lock-in risk, or compliance/legal differences.
Formula reviewed:
Last updated:
Estimator only. The build vs subscribe decision is rarely just about cost. Vendor lock-in, integration depth, team focus, and feature gap risk matter too. Use the Conservative scenario as the floor: if Build does not win there, the case for Build is weak; if it does, the case for Build is strong.