Skip to content
StockMarketAgent
§ Tool · Valuation calculator

Multi-stage moat fade calculator

A moat-aware EPS DCF: moat strength sets the length of the high-growth window, not just a deceleration rate. Compound SBC-adjusted EPS through a flat high-growth Stage I, a linear-fade Stage II whose duration is driven by the moat, and a Gordon terminal, and read the moat-duration premium directly. The sibling of the Discounted Earnings calculator with the durability assumption made structural.

§ What this is warning you about first

A moat-fade model can overpay for quality if the durability period is too generous. If the model says the moat lasts 15 years and it actually lasts 7, fair value is dramatically overstated. Re-run it with a lower moat score (or ROE) and a faster fade — the gap between 5 and 15 years of Stage II is the single most leverage-y assumption here.

Moat-fade DCF
Model · multi_stage_moat_fade
EPS + moat
Primary input
Low / mid / high
Output range · ±15%
5 + 5/10/15 yr
Moat-driven horizon
Single Ke
Moderate · base rel 0.90
§ Start with a preset
Three moat starting points — adjust anything after.
LensSBC-adjusted EPS compounded through a flat Stage I and a moat-driven linear-fade Stage II, discounted at the moderate Ke./en/tools/multi-stage-moat-fade-calculator
§ Moat-score source
economic_policy.moatDurationPolicy · 7-priority chain
01Earnings anchor2 fields
$
Preferred anchor — prices in share-base dilution. Falls back to raw EPS if ≤ 0.
$
Fallback anchor. At least one EPS must be > 0.
02Growth & discount3 fields
%
Flat Stage I rate. Stage II fades linearly from here to terminal.
%
Gordon long-run rate. Must be < the moderate Ke.
%
Single Ke — adjusted beta, typical institutional pricing.
03Moat inputAnalyst score
Priority 1. Clamped to [0, 10]. ≥9 wide · 7–8.99 strong · <7 narrow.
Priority 2. Qualitative judgment → numeric (wide 9.5 · strong 8.0 · narrow / moderate 6.0 · none / weak 3.0).
%
Priority 6 proxy when no moat data. ≥25%→9.0 · ≥18%→8.0 · ≥12%→6.0 · else 4.0.
04Direct stage-duration overrideselect "Stage override"

The most explicit form of the moat assumption. When the LLM policy supplies both Stage I and Stage II durations directly, the calculator uses those numbers and bypasses the moat-score → duration mapping entirely. Stage I clamps to [1, 10] years, Stage II to [1, 25].

Flat high-growth window. Clamp [1, 10].
Linear-fade window. Clamp [1, 25].
Analyst confidence 0–1, surfaced in the audit.
§ Resolved horizon
economic_policy.moatDurationPolicy.moatScore
Stage I · flat5y
Stage II · fade15y
Terminal
20y explicit · moat 9.5
§ Fair value range · per share

Multi-stage moat fade · Mature compounderrequired for archetype

reliability 90/100 · High
FV low · −15%
$487.03
+52.2%
FV mid · deterministic
$572.97
+79.1% vs price
FV high · +15%
$658.92
+105.9%
Price $320.00
Base reliability 0.90 held — moat duration is inherently uncertain, so the model never claims a perfect 1.0.
methodology_version = valuation-calculators.v1model_id = multi_stage_moat_fade · role = eps_dcf
§ Moat resolution → horizon

Where the moat score came from, and the horizon it bought

moat_score_used
9.5
moat_score_source
economic_policy.moatDurationPolicy.moatScore
LLM analyst numeric score
stage_i_years
5
stage_ii_years
15
terminal_year
20
Widemoat 9.0+
5 + 15 = 20y
Strongmoat 7.0–8.99
5 + 10 = 15y
Narrow / nonemoat < 7
5 + 5 = 10y
§ Three-stage path

5y flat at 18%, then 15y linear fade to 3% terminal

18.0Y1
18.0Y2
18.0Y3
18.0Y4
18.0Y5
17.0Y6
16.0Y7
15.0Y8
14.0Y9
13.0Y10
12.0Y11
11.0Y12
10.0Y13
9.0Y14
8.0Y15
7.0Y16
6.0Y17
5.0Y18
4.0Y19
3.0Y20
Stage I · flat 18%Stage II · linear fade → 3%
Anchor EPS$9.00
Stage-II exit EPS$85.02
Terminal EPS$87.57
Horizon5 + 15 = 20y
§ Terminal value share
Gordon terminal as % of fair value45.5%
explicit 20-yr stream carries the value
PV(explicit) $312.56 · PV(terminal) $260.42
§ EPS anchor · SBC adjustment
sbc_adjusted_eps
anchor = $9.00 · sbc_adjusted_eps $9.00 · raw_eps $9.50

SBC-adjusted EPS anchors the compounding, so share-base dilution from stock-based compensation is priced in. Using raw EPS would systematically overvalue SBC-heavy names.

§ Reliability factorsbase 0.90 → 90/100
No penalties applied — held at the 0.90 base (never 1.0; moat duration is inherently uncertain).
note: no explicit penalty for weak moat_score_source — read it above and judge for yourself.
§ Formula trace

Every step, derived

  1. epsAnchor = sbc_adjusted_eps ($9.00) · sbcAdjustedEps $9.00 · rawEps $9.50
  2. keModerate = 9% · highGrowth = 18% · terminalGrowth = 3%
  3. moat_score = 9.5 (priority 1 · LLM numeric score, clamped to [0, 10])
  4. stageProfile: moat 9.5 → Wide tier → Stage I 5y + Stage II 15y (total 20y explicit)
  5. PV(explicit 20y) = 312.56 · PV(terminal) = 260.42
  6. fairValue = 572.97 · terminal_value_pct = 45.5%
  7. range = [487.03, 572.97, 658.92] (flat ±15% band around the deterministic mid)
  8. reliability = 0.90 = 0.90
§ Calculator contract

One stable kernel contract — same as the reports

Reference the model by its stable id multi_stage_moat_fade, not the display label. The dedicated page, the all-model workbook, and the report pipeline all hit the same endpoint and reconcile to the same fair value.

Slug/en/tools/multi-stage-moat-fade-calculator
Kernel model idmulti_stage_moat_fade · role eps_dcf
Valuation lens3-stage EPS DCF · moat strength sets Stage II duration (5 / 10 / 15y)
Primary inputSBC-adjusted EPS + moat score (or rating / ROE) + moderate Ke + terminal growth
Outputstatus (computed / excluded / failed) + fairValue (low / mid / high) + moat_score_source + terminal_value_pct + reliability
Methodologyvaluation-calculators.v1
§ Notes

This surface is statelessand runs entirely in your browser — nothing you type is saved or sent anywhere. The same kernel powers the per-stock reports, so the fair value here reconciles exactly with the report's multi_stage_moat_fade output for the same inputs. Compare it against the fixed-horizon discounted earnings EPS-DCF sibling — the gap is the moat-duration premium — and triangulate against the no-growth owner earnings floor.

§ FAQ

Five things worth knowing

Q01How is this different from the Discounted Earnings sibling?+
Both are SBC-adjusted EPS DCFs on the same archetype, same moderate Ke, same anchor. The difference is structural: Discounted Earnings uses a fixed 10-year horizon with a percentage-point deceleration, while this model lets moat STRENGTH set the LENGTH of the high-growth window. A wide-moat name gets a 5 + 15 = 20-year explicit projection before the Gordon terminal; a narrow-moat name gets 5 + 5 = 10. The gap between the two models is the moat-duration premium you are choosing to pay for durability.
Q02Why does moat strength control the duration instead of the fade speed?+
Because that is the assumption that actually moves the answer, and burying it inside an opaque deceleration rate hides it. The model makes it explicit: a wider moat means more years compounding at above-terminal growth before the terminal kicks in. For a stock at 18% high growth and 3% terminal, the difference between 5 and 15 years of Stage II fade is several multiples of fair value — so the lead text warns this is exactly where moat-fade models overpay for quality. Re-run with a lower moat score and faster fade to stress-test it.
Q03Where does the moat score come from — and how do I know which?+
A 7-priority resolution chain: an LLM analyst numeric score first, then a text rating ("wide" → 9.5), then calibration-table scores, archetype-hint scores, text ratings from those, an ROE-based proxy (ROE ≥ 25% implies a moat of 9.0), and finally a deterministic archetype floor. The moat_score_source field in the audit shows exactly which priority fired, so you know whether the number is deliberate analyst judgment or a fallback — a score from the archetype floor is much weaker evidence than one from a moatDurationPolicy, and you should trust the answer accordingly.
Q04Why a single moderate Ke instead of the dual-Ke range the other DCFs use?+
Because the moat-aware variant already produces a wide uncertainty range through the stage-duration choice — 5 vs 15 years of Stage II is a much bigger lever than raw-vs-adjusted beta. Doubling up on Ke would over-stretch the range. So the output is a flat ±15% band around the deterministic mid computed at the moderate Ke alone, and the real sensitivity exercise is varying the stage durations, not the discount rate.
Q05Why does base reliability start at 0.90 instead of 1.0?+
Because even with every input supplied, the moat-duration assumption is inherently uncertain — you are forecasting how long a competitive advantage lasts, which no one knows. So the model never claims perfect confidence. Terminal-value dominance above 60% of fair value drops it a further 0.20, and a defaulted growth estimate drops it 0.15. Note there is no explicit penalty for a weak moat-score source — the synthesis layer already weights output by source confidence, so read moat_score_source yourself to judge that.