You do not need a terminal subscription to build a weighted average cost of capital. Every component is free: the risk free rate is a published yield, beta is a regression on price history you can download, cost of debt is two numbers in the annual filing, and the weights are a market cap and a debt balance. I have built these for years on nothing but filings and a spreadsheet.
What the free version costs you is not accuracy. It costs you the illusion of accuracy that comes with a number arriving from somewhere official. When you build it yourself you can see exactly how wide the uncertainty is, and that turns out to be the useful part.
Where each component comes from
Six inputs, and they are not equally hard.
- Risk free rate. The yield on a long government bond in the currency the company earns in. Published daily and free. Match the tenor roughly to your forecast horizon, so a ten year yield for a ten year model. This is the one input you can take at face value.
- Equity risk premium. Several free published series exist and they do not agree with each other. Pick one, write down which one, and use the same one across every model you build. The consistency matters more than the level, because a premium that moves between companies is just a way of hiding a preference.
- Beta. Regress the stock's returns against a broad index. Sixty monthly observations is the conventional window and it is free to assemble from any price history download.
- Cost of debt. Interest expense from the income statement divided by average total debt across the balance sheet dates. Both figures are in the filing. This gives you an effective historical rate, which is backward looking, and if the company has refinanced recently it will be wrong in a knowable direction.
- Tax rate. The effective rate from the filing, not the statutory rate, unless you have a reason to think the effective rate is temporary.
- Weights. Market value of equity from the current quote and share count. Debt at book value, which is a simplification everyone makes and which is fine unless the debt is distressed.
Assemble those and you get a number that looks like 9.4 percent. The rest of this article is about why writing 9.4 rather than 9 is a mistake.
Beta is where the error lives
Suppose your sixty month regression returns a beta of 1.15. That is the point estimate, and it is the only number most people carry forward. The regression also returns a standard error, and on monthly data for a single stock it is routinely large enough to matter. Say it comes back at 0.18.
Now carry both through. With a risk free rate of 4.2 percent and an equity risk premium of 4.5 percent, the cost of equity at the point estimate is 4.2 plus 1.15 times 4.5, or 9.4 percent. One standard error either side of the beta gives you 8.6 percent to 10.2 percent. That is a range of roughly 1.6 percentage points on the cost of equity, from a single input, before you have made a single judgement call about anything else.
And that is the optimistic framing, because it assumes the regression window is the right one. Run the same regression on weekly returns, or on a five year window instead of a two year one, and the point estimate itself moves. I have seen the same stock produce betas of 0.9 and 1.4 depending on nothing but window and frequency choices, both defensible.

Propagating the band into a fair value
A range on the discount rate is abstract until you push it through a model. Take a ten year DCF, 100 dollars of free cash flow growing at 6 percent, terminal growth 2.5 percent, and vary only the WACC.
| WACC | Present value | Change vs 9.0% |
|---|---|---|
| 8.2% | 2,359 | +14.9% |
| 8.6% | 2,196 | +6.9% |
| 9.0% | 2,053 | base |
| 9.4% | 1,927 | -6.1% |
| 9.8% | 1,815 | -11.6% |
| 10.2% | 1,715 | -16.5% |
The beta standard error alone, that 8.6 to 10.2 range, spans a fair value of 2,196 down to 1,715. In percentage terms the fair value band is roughly plus 7 to minus 17 percent around the base case. If your model says a stock is 12 percent undervalued, the beta uncertainty by itself is wider than your entire edge.
This is the practical conclusion and it is worth stating plainly. A DCF does not produce a fair value. It produces a fair value range, and the range is wide enough that any conclusion of the form "trading 10 percent below fair value" is not a conclusion. It is noise you have formatted as a decision.
What to do with a number you know is fuzzy
Three changes to how I use a discount rate, all of which came from doing this arithmetic once.
Round it. I use quarter point increments and nothing finer. Writing 9.25 percent instead of 9.37 percent costs you nothing real and stops you from defending a precision you do not have. If a decision flips between 9.25 and 9.5, the decision was never there.
Fix it as policy per risk bucket, not per company. Rather than a bespoke beta regression for every name, I keep a small set of rates by rough risk category and assign companies to them. Regressing a fresh beta for each name feels rigorous but adds a fresh error term each time, and worse, gives you a knob to turn when you want a name to look cheaper. A fixed policy rate removes that temptation entirely, which is the largest single improvement available to most retail models.
Require the gap to clear the band. I do not act on a fair value gap smaller than about 25 percent, because below that the gap is inside the error the discount rate alone contributes. That threshold sounds brutally high, and it is, and it is also why almost every screen result should be discarded. When only a handful of names per year clear a bar like that, the bar is doing its job.
The components not worth arguing about
Some of this work has a poor ratio of effort to effect, and knowing which parts to skip is most of what makes the exercise repeatable rather than a project.
The debt weight rarely matters for the kind of company most retail portfolios hold. If the company is 15 percent debt financed and the after tax cost of that debt is a couple of points below the cost of equity, then getting the weight exactly right moves WACC by a few basis points. Meanwhile you have a 1.6 point range sitting in beta. Spending an hour reconciling operating leases into a debt figure is misallocated attention unless the company is genuinely leveraged.
The same goes for the tax rate. Effective rates bounce around with one time items, and the difference between using 21 percent and 23 percent is not visible next to the beta band. Take the effective rate from the filing, note it, move on.
Where the effort does pay is the equity risk premium choice, precisely because it is a policy decision rather than an estimate. Pick a published series, note which one you picked, and never change it to suit a conclusion. Every company in your book then sits on the same premium, which means your relative rankings survive even when your absolute fair values are as uncertain as the table above says they are. Relative comparisons across a consistent policy rate are the part of this exercise that actually holds up.