How to Build a CapEx Forecast

Key Takeaways
- Two methods serve two purposes. Top-down (capex as % of revenue) is fast and right for long-range models like a DCF; bottom-up (project-by-project) is what capital allocation and board approval actually require.
- Classify every project as growth or maintenance capex before it hits the register. The two have different discretion, different risk, and should be screened differently.
- Spread each project's cost across its actual build window, not a single lump sum - that's what surfaces overlapping-project pressure on a monthly budget tracker.
- Screen with NPV, payback, and ROI together. NPV tells you if a project creates value at your hurdle rate; payback tells you how long cash stays tied up; neither alone is a complete picture.
- An annual budget can hide a monthly cash problem. The worked example closes the year $900,000 under budget while still running $100,000 over envelope in two separate months - build the tracker monthly to catch that before it happens.
- Capex forecasting doesn't stand alone. The same monthly schedule and useful-life assumptions flow directly into the cash flow statement, PP&E, and the depreciation schedule - keep them linked, not duplicated.
For the top-down method in context, see how capex as a percent of revenue fits into a full DCF model build. For the bottom-up, project-level version with a full monthly outlay schedule, NPV screen, and budget tracker, explore the Capex Planning template.
A capex forecast projects how much a company will spend on long-lived assets, when the cash actually goes out, and whether each dollar clears its return hurdle. This guide covers both ways to build one - a fast top-down percent-of-revenue method for long-range models, and a rigorous bottom-up, project-by-project build for capital allocation - with a full worked example: a four-project portfolio, a monthly outlay schedule, NPV and payback screening, and a budget tracker that shows exactly where overlapping projects squeeze a spending envelope.
Capex is the line item most financial models get wrong by simplification. A DCF or 3-statement forecast will often reduce an entire year of capital spending to a single percent-of-revenue assumption - reasonable for a long-range valuation, useless for a CFO trying to figure out whether the company can actually afford to fund six capital projects in the same quarter. The two problems are related but distinct: one is about how much capital a business needs to sustain and grow itself, the other is about which specific projects, funded when, clear the bar and fit inside the budget.
Two ways to forecast capex: a fast top-down ratio for long-range models, or a bottom-up project build for capital allocation decisions - both ultimately feed the same cash flow and balance sheet forecast.
Method 1: Top-Down - Capex as a Percentage of Revenue
When you're building a DCF, a 3-statement model, or any forecast where capex is a supporting assumption rather than the main event, the fastest defensible method is to tie it to revenue:
Capex = Revenue x Capex % of Revenue
The ratio itself should come from the company's own trailing 2-3 year average, adjusted for anything structurally changing (a new facility coming online, a shift to a more asset-light model). Typical ranges by sector:
| Sector | Typical Capex (% of Revenue) |
|---|---|
| Software / SaaS | 2-4% |
| Professional services | 1-3% |
| Consumer / retail | 3-6% |
| Manufacturing / industrial | 8-15% |
| Telecom / utilities / airlines | 15-25%+ |
// Capex as % of Revenue (assumption on B16, Revenue on row above)
= Revenue * Assumptions!$B$16
This is exactly the shortcut used in a DCF model to get from EBIT to unlevered free cash flow - it's fast, it's defensible for a 5-year projection, and it deliberately says nothing about which projects the money is going toward or when in the year the cash actually leaves. For that level of detail, you need the bottom-up method.
Method 2: Bottom-Up - A Project-Level Capital Plan
When the question shifts from "how much capex should we assume" to "which of these eight projects do we actually fund, and can we afford all of them at once," you need a portfolio-level model built from the ground up. A working version needs four linked pieces:
- Project register: Each candidate project with total cost, start month, build duration, useful life, and expected annual cash benefit.
- Monthly outlay schedule: Each project's total cost spread across its build window.
- Economics screen: NPV, simple payback, and ROI per project, tested against a hurdle rate.
- Budget tracker: The monthly schedule rolled up against a spending envelope, with variance and running headroom.
As with any FP&A model, the discount rate, hurdle thresholds, and envelope all belong on a single assumptions block - never hardcoded into a project row - so the entire schedule reflows the moment a project slips a month or the envelope tightens.
Growth Capex vs. Maintenance Capex
Before a project even reaches the register, classify it:
- Maintenance capex: Keeps existing operations running at their current level - equipment replacement, IT refresh cycles, compliance-driven upgrades. It's effectively non-discretionary; a business that skips it isn't saving money, it's deferring a cost that usually comes back larger (a breakdown, a compliance failure, a rushed replacement at a worse price).
- Growth capex: Expands capacity or capability - a new facility, a new product line, a system rollout tied to an expansion plan. It's discretionary and should clear a return hurdle before approval.
The distinction matters for two reasons. First, subtracting only maintenance capex from EBITDA gives a cleaner read on distributable cash flow than subtracting total capex, which conflates "cost of staying in business" with "investment for more business." Second, mixing the two on one dashboard without a category tag makes the NPV screen misleading - nobody expects a positive NPV on a roof replacement, but everybody should expect one on a new production line.
The Core Mechanic: Spreading Capex Over the Build Window
A project's total cost rarely lands as a single lump sum. Construction, procurement, and implementation stretch spend across several months, and that timing is what actually determines whether a project fits inside a given month's budget envelope. The standard approach spreads cost evenly across the build window:
Monthly Outlay = Total Capex / Build Duration (months), active from Start Month through Start Month + Duration - 1
// Monthly outlay turns on at the start month and off after the build window closes
= IF(AND(MonthNumber >= StartMonth, MonthNumber < StartMonth + Duration), TotalCapex / Duration, 0)
This is a simplification - real projects often front-load or back-load spend - but an even spread is the standard planning assumption because it's auditable and it's what surfaces the real problem: when two or three projects' build windows overlap, their monthly outlays stack, and a budget envelope that looked comfortable on paper can go negative for a few months even though the annual total fits fine.
Worked Example: A Four-Project Capex Portfolio
Assume a company is screening four candidate projects for the coming year, with a monthly capex envelope of $500,000 (a $6.0M annual budget) and a 10% discount rate:
| Project | Total Capex | Start Month | Build Duration | Useful Life | Annual Cash Benefit |
|---|---|---|---|---|---|
| A - Warehouse automation | $1,200,000 | 1 | 4 mo | 5 yrs | $350,000 |
| B - ERP system upgrade | $900,000 | 2 | 3 mo | 4 yrs | $220,000 |
| C - Fleet replacement | $600,000 | 5 | 2 mo | 6 yrs | $150,000 |
| D - Facility expansion | $2,400,000 | 6 | 6 mo | 10 yrs | $420,000 |
| Total | $5,100,000 | - | - | - | $1,140,000 |
Each project's monthly outlay is total capex divided evenly across its build window (e.g., Project A: $1,200,000 / 4 = $300,000/month for months 1-4):
| Month | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| A | 300k | 300k | 300k | 300k | - | - | - | - | - | - | - | - |
| B | - | 300k | 300k | 300k | - | - | - | - | - | - | - | - |
| C | - | - | - | - | 300k | 300k | - | - | - | - | - | - |
| D | - | - | - | - | - | 400k | 400k | 400k | 400k | 400k | 400k | - |
| Total | 300k | 600k | 600k | 600k | 300k | 700k | 400k | 400k | 400k | 400k | 400k | 0 |
Projects A and B overlap in months 2-4, and C and D overlap in month 6 - exactly where the schedule gets tight.
Economics Screen: NPV, Payback, and ROI
Each project's NPV uses the annual benefit as a level annuity over its useful life, discounted at 10%:
NPV = Annual Benefit x [(1 - (1 + r)^-n) / r] - Total Capex
| Project | PV of Benefits | NPV | Simple Payback | ROI | Passes Hurdle? |
|---|---|---|---|---|---|
| A | $1,326,775 | +$126,775 | 3.43 yrs | 45.8% | Yes |
| B | $697,370 | -$202,630 | 4.09 yrs | -2.2% | No |
| C | $653,289 | +$53,289 | 4.00 yrs | 50.0% | Yes |
| D | $2,580,718 | +$180,718 | 5.71 yrs | 75.0% | Yes |
// NPV using the annuity form (DiscountRate, UsefulLife, AnnualBenefit, TotalCapex as named ranges)
= AnnualBenefit * (1 - (1 + DiscountRate)^-UsefulLife) / DiscountRate - TotalCapex
// Simple payback period, in years
= TotalCapex / AnnualBenefit
// Simple ROI over the project's useful life
= (AnnualBenefit * UsefulLife - TotalCapex) / TotalCapex
Three of the four projects clear a positive NPV at the 10% hurdle. Project B - the ERP upgrade - comes back negative: at a $900,000 cost and only a 4-year useful life, the projected $220,000 annual benefit never earns back more than the capital charge, let alone the $900,000 itself. That doesn't necessarily kill the project (some ERP upgrades are compliance-driven, not return-driven), but it does mean it shouldn't be approved on ROI grounds alone.
Portfolio dashboard summary:
| Metric | Value |
|---|---|
| Total committed capex | $5,100,000 |
| Total annual benefit | $1,140,000 |
| Portfolio NPV | $158,153 |
| Average payback | 4.31 years |
| Average ROI | 42.2% |
| Projects passing NPV hurdle | 3 of 4 |
| Peak monthly capex | $700,000 (Month 6) |
| Envelope utilization | 85.0% |
Budget Tracker: Where the Envelope Gets Tight
Rolling the monthly outlay schedule against the $500,000 monthly envelope shows exactly where overlapping projects create pressure, even though the year closes comfortably under budget:
| Month | Envelope | Scheduled | Cumulative Envelope | Cumulative Scheduled | Running Headroom | Utilization |
|---|---|---|---|---|---|---|
| 1 | $500k | $300k | $500k | $300k | +$200k | 60% |
| 2 | $500k | $600k | $1,000k | $900k | +$100k | 120% |
| 3 | $500k | $600k | $1,500k | $1,500k | $0 | 120% |
| 4 | $500k | $600k | $2,000k | $2,100k | -$100k | 120% |
| 5 | $500k | $300k | $2,500k | $2,400k | +$100k | 60% |
| 6 | $500k | $700k | $3,000k | $3,100k | -$100k | 140% |
| 7 | $500k | $400k | $3,500k | $3,500k | $0 | 80% |
| 8 | $500k | $400k | $4,000k | $3,900k | +$100k | 80% |
| 9 | $500k | $400k | $4,500k | $4,300k | +$200k | 80% |
| 10 | $500k | $400k | $5,000k | $4,700k | +$300k | 80% |
| 11 | $500k | $400k | $5,500k | $5,100k | +$400k | 80% |
| 12 | $500k | $0 | $6,000k | $5,100k | +$900k | 0% |
// Running headroom on the budget tracker
= CumulativeEnvelope - CumulativeScheduled
Running headroom dips negative in Months 4 and 6 - exactly where Project A/B and Project C/D overlap - even though the annual envelope has $900,000 of headroom left by Month 12. This is the entire point of building a monthly tracker instead of comparing annual totals: an annual view says "we're $900k under budget," which is true and also hides two months where the company would need either a cash cushion, a short-term draw, or a one-month project slip to stay funded. Moving Project D's start from Month 6 to Month 7 would flatten both dips at the cost of finishing the facility expansion a month later - the kind of trade-off this tracker is built to surface before it becomes a cash problem.
Rolling CapEx Into the Cash Flow and Balance Sheet Forecast
Once the monthly outlay schedule is set, it plugs directly into two places in the broader financial model:
- Cash flow statement: Monthly outlay is a cash outflow in investing activities, exactly as scheduled - this is why the monthly, not annual, view matters for a cash flow forecast or 13-week cash flow.
- Balance sheet (PP&E) and depreciation: Each project's total cost adds to gross PP&E when it goes into service, then depreciates over its useful life - the same useful-life input used in the NPV calculation above also drives the depreciation schedule.
Capex forecasting doesn't stand alone - it sits alongside the other build-out-from-drivers pieces of an FP&A stack. Our guide to financial forecasting methods covers the broader driver-based approach this plugs into, and if the capital plan is funding new capacity that also needs staffing, our headcount planning guide walks through the parallel build for people costs.
Common Mistakes to Avoid
- Treating capex as a single annual lump sum. A project that fits comfortably on an annual budget can still blow through a monthly envelope if its build window overlaps with another project's. Model monthly, not annually.
- Skipping the growth vs. maintenance classification. Without it, a dashboard mixes non-discretionary replacement spend with discretionary growth investment, making the aggregate NPV and ROI numbers meaningless.
- Using a single hurdle rate for every project regardless of risk. A maintenance project and a new-market expansion don't carry the same risk profile; using one blended discount rate for both understates the return required on the riskier bet.
- Ignoring payback in favor of NPV alone. A project can have a strong positive NPV over a 10-year life while tying up cash for 6 years before it's recovered - fine for a company with ample liquidity, potentially fatal for one that isn't. Screen both.
- Front-loading or ignoring build-window timing. Assuming capex lands entirely in the month a project is "approved" instead of spreading it across the actual construction or implementation period misstates every monthly cash and budget check downstream.
- Not linking the useful life assumption between the NPV screen and the depreciation schedule. If capital planning uses a 5-year useful life for NPV but accounting depreciates the same asset over 7, the model and the books will permanently disagree on when the investment pays for itself.






