Methodology — How We Calculate Fair Value, Risk Scores, and Moat Ratings

Every number on FairValueLabs is calculated from public data using documented formulas. This page explains exactly how — so you can verify our work or adjust the assumptions to match your own investment thesis.

How Do We Calculate the Altman Z-Score?

The Altman Z-Score was developed by Edward Altman at NYU in 1968. It combines five financial ratios into a single score that predicts bankruptcy probability within 2 years. The formula for manufacturing firms:

Z = 1.2(A) + 1.4(B) + 3.3(C) + 0.6(D) + 1.0(E)
VariableFormulaWhat It Measures
AWorking Capital / Total AssetsShort-term liquidity
BRetained Earnings / Total AssetsCumulative profitability
CEBIT / Total AssetsOperating efficiency
DMarket Cap / Total LiabilitiesSolvency buffer
ERevenue / Total AssetsAsset turnover

How Do We Interpret the Score?

  • Z < 1.8 — Distress Zone (red). High probability of financial distress within 2 years.
  • Z 1.8 - 3.0 — Gray Zone (yellow). Elevated uncertainty — warrants closer scrutiny.
  • Z > 3.0 — Safe Zone (green). Financially healthy by this metric.

We use the original manufacturing formula for industrial companies and Altman's modified Z''-Score for service and financial firms.

Data source: All five inputs are extracted from the company's most recent 10-K annual filing on SEC EDGAR.

How Do We Calculate Intrinsic Value?

We use a three-factor valuation model that blends three approaches to reduce model-specific bias:

FactorWeightHow It Works
Historical PE × Forward EPS50%Median PE ratio over 4+ years multiplied by consensus forward EPS estimate. Anchors valuation to how the market has historically priced this company's earnings.
Discounted Cash Flow (DCF)30%Two-stage DCF: 10-year projection using blended growth rate, terminal value at GDP growth rate (~2.5%), discounted at CAPM-derived WACC.
EV/FCF Multiple20%Enterprise Value / Free Cash Flow compared against historical and sector norms. Catches companies where debt or cash significantly distorts equity value.

Growth Rate

70% analyst consensus forward estimates + 30% historical compound annual growth rate (CAGR). This blends forward-looking expectations with backward-looking track record. Growth is capped at 20% to prevent unrealistic projections.

Discount Rate (WACC)

Capital Asset Pricing Model (CAPM): Risk-free rate (10-year Treasury from FRED) + beta × equity risk premium. Higher-beta stocks get a higher discount rate, producing lower intrinsic values.

Net Cash Adjustment

After calculating the weighted average intrinsic value, we add net cash (cash & equivalents minus total debt) from the balance sheet. Companies sitting on large cash piles show higher intrinsic values than pure earnings-based models would suggest.

Three-Level Classification

  • Value Investment — Profitable, stable cash flows. All three factors apply at full weight.
  • Value-Speculation — Profitable but volatile. PE-based factor weight reduced.
  • Pure Speculation — Unprofitable. Traditional valuation unreliable; page warns prominently.

Key Assumptions & Limitations

  • Growth rate capped at 20% (conservative bias for high-growth companies)
  • Companies with negative FCF get reduced or zero DCF component
  • The model tends to undervalue fast-growing tech companies (known bias — will recalibrate as coverage expands)
  • Margin of Safety = (Intrinsic Value - Market Price) / Intrinsic Value. Positive = potentially undervalued.
  • Every ticker page shows a sensitivity table so you can adjust growth and discount rate assumptions

Data source: Historical financials from 10-K/10-Q filings on SEC EDGAR. Forward estimates from analyst consensus. Current price from Yahoo Finance.

How Do We Rate Competitive Moats?

Our moat rating combines quantitative signals with structured qualitative assessment:

FactorWeightHow We Measure
ROIC Stability40%Standard deviation of Return on Invested Capital over 10 years. Lower variance = wider moat.
Gross Margin Trend30%10-year gross margin trajectory. Expanding margins suggest pricing power.
Switching Cost Assessment30%Qualitative: customer lock-in, ecosystem effects, regulatory barriers.

Star Rating Scale

  • 5 stars — Wide moat. Dominant competitive position with high barriers to entry.
  • 4 stars — Solid moat. Strong advantages but with some competitive pressure.
  • 3 stars — Narrow moat. Some competitive advantages but vulnerable to disruption.
  • 2 stars — Weak moat. Commoditized business with limited pricing power.
  • 1 star — No moat. Highly competitive, no sustainable advantage evident.

How Do We Grade Dividend Safety?

Our dividend safety grade (A through F) is based on three factors:

FactorSafe SignalDanger Signal
Payout Ratio< 60% of earnings> 100% (paying more than earned)
FCF CoverageFCF > 1.5x dividendNegative FCF for 2+ quarters
Growth Streak5+ years consecutive increasesRecent cut or freeze

Grade Definitions

  • A — Very Safe. Low payout ratio, strong FCF coverage, long growth streak.
  • B — Safe. Healthy payout with adequate cash flow support.
  • C — Borderline. Elevated payout ratio or inconsistent FCF.
  • D — Unsafe. Payout exceeds earnings or FCF is negative.
  • F — Cut Likely. Multiple danger signals — dividend cut appears imminent.

Data source: Dividend per share, earnings, and free cash flow from SEC EDGAR and Yahoo Finance.

Where Does the Data Come From?

Every metric on FairValueLabs flows through an automated data pipeline. Here is how it works end-to-end:

StageSource / ToolWhat Happens
1. IngestSEC EDGAR APIPython ETL queries the EDGAR full-text search and XBRL APIs for the latest 10-K and 10-Q filings. New filings are detected and processed within 24 hours of publication.
2. EnrichYahoo Finance, FREDReal-time stock prices, analyst consensus estimates, beta, and the 10-year Treasury yield are merged with filing data to produce a complete financial profile.
3. ComputePython (NumPy)All models run: Altman Z-Score, three-factor fair value, moat rating, dividend safety grade. Automated checks flag anomalies — stock splits, missing line items, extreme values, and sector exemptions (financials, utilities, REITs).
4. ClassifyRule engineEach ticker is categorized as Value Investment, Value-Speculation, or Pure Speculation based on profitability, cash-flow stability, and earnings history. Classification determines which valuation methods apply.
5. Publish11ty SSG → Cloudflare PagesJSON output is consumed by an Eleventy static site generator. Every page is pre-rendered HTML — no client-side data fetching, no API keys exposed, sub-second load times globally via Cloudflare's CDN.

How Do We Ensure Data Quality?

  • Stock split detection — price and EPS history are adjusted automatically when a split is detected, preventing false valuation swings.
  • Sector exemptions — banks, insurance companies, utilities, and REITs are automatically flagged. Models that produce misleading results for these sectors (e.g., Altman Z-Score) display an exemption notice instead of a spurious number.
  • Extreme value filtering — PE ratios above 200, negative book values, and other outliers trigger warnings rather than being silently passed through to valuation models.
  • Quarterly refresh cycle — the pipeline runs daily for price updates and within 24 hours of any new SEC filing for fundamental data.

If a data point looks wrong, it probably is — and we would rather show "insufficient data" than a misleading number. Transparency over false precision.

What Are the Limitations?

  • All models use historical data — they cannot predict future management decisions, black swan events, or macroeconomic shifts.
  • DCF is highly sensitive to growth rate assumptions. Always check the sensitivity table.
  • The Altman Z-Score was designed for manufacturing firms. We use modified versions for other sectors, but accuracy varies.
  • Moat assessment includes subjective elements. Our rating is a starting point, not a final verdict.
  • Quarterly data may lag by 1-2 months after the filing deadline.

This is not financial advice. All data is sourced from SEC EDGAR public filings. Always consult a qualified financial advisor before making investment decisions.