Methodology
Overview
EarningsMoat is a rubric-based research product, not a black-box factor model. That distinction matters.
Each company report starts from normalized filing data. The system then evaluates that data across a fixed set of metrics and threshold rules, grouped into four scored modules:
- Earnings Quality
- Moat Strength
- Capital Allocation
- Key Risks
The final report page presents those modules as a single analysis of quality, moat, and risk. Capital allocation is treated as a supporting dimension because poor capital allocation often weakens otherwise good businesses over time.
Two things are true at once:
- The metric set and threshold ranges are fixed and published here.
- The narrative and 0-100 module score are produced by a language-model layer that applies those rules to the filing context.
So the current framework is transparent, but not purely deterministic. We show you the rubric. We do not pretend the current system is a hand-coded formula with no judgment involved.
Moat score formula
The moat assessment focuses on whether the company appears to have durable bargaining power, cost leverage, or structural barriers that should protect returns.
The model evaluates four core inputs:
-
ROE
Rule of thumb in the current prompt:- Green: above 15%
- Yellow: 8% to 15%
- Red: below 8%
-
Gross margin level and trend
We do not use a single hard cutoff here. The system looks at the absolute margin level and whether it appears stable or improving across available history. Stable high margins are treated as evidence of pricing power; collapsing margins are treated as evidence against it. -
Expense-ratio efficiency
The system compares operating cost intensity with the company's margin profile. High gross margins combined with disciplined expense ratios suggest scale leverage; rising cost intensity without commensurate pricing power counts against the moat case. -
Receivable ratio / bargaining power
Rule of thumb:- Green: receivables below 10% of revenue
- Yellow: 10% to 30%
- Red: above 30%
How the score is produced
The language-model layer reviews these signals together and assigns a 0-100 moat-strength score. That score is not a weighted spreadsheet rollup published line by line today. It is a rubric score grounded in the thresholds above and in the filing narrative.
How to read it
- 80 to 100: strong evidence of durable advantage
- 60 to 79: mixed but credible moat case
- 40 to 59: advantage is weak, cyclical, or unproven
- Below 40: little evidence of durable competitive protection
Earnings quality score formula
The earnings-quality assessment asks a simpler question: are the profits real, recurring, and backed by cash?
Current inputs:
-
Gross margin
- Green: above 40%
- Yellow: 20% to 40%
- Red: below 20%
-
Operating cash flow / net income
- Green: above 1.0
- Yellow: 0.5 to 1.0
- Red: below 0.5
-
Main-business profit share
- Green: above 80%
- Yellow: 60% to 80%
- Red: below 60%
-
Expense ratio
- Green: below 15%
- Yellow: 15% to 30%
- Red: above 30%
-
Operating cash flow positive or negative
- Positive cash flow is favorable
- Negative operating cash flow is a hard warning
In editorial analysis we also pay attention to accruals, Beneish-style warning signals, receivable growth, and inventory behavior. Those concepts appear in our learn content and may influence narrative judgment even when the live engine's visible metric card does not display them as standalone lines yet.
How the score is produced
The model converts the evidence above into a 0-100 earnings-quality score. Higher scores mean profits appear cleaner, more recurring, and more cash-backed.
Interpretation bands
- 80 to 100: strong cash backing and low accounting concern
- 60 to 79: generally acceptable, with some soft spots
- 40 to 59: mixed quality, requires manual review
- Below 40: accounting quality or cash conversion concerns are significant
Risk score formula
Risk is scored in the opposite direction from many investor dashboards: a higher score means lower risk.
Current inputs:
-
Debt ratio
- Green: below 40%
- Yellow: 40% to 70%
- Red: above 70%
-
Cash / debt ratio
- Green: above 1.5x, or effectively no interest-bearing debt
- Yellow: 0.5x to 1.5x
- Red: below 0.5x
-
Goodwill / total assets
- Green: below 5%
- Yellow: 5% to 15%
- Red: above 15%
-
Cash-flow trend The model looks for deterioration, volatility, or mismatch between earnings and cash.
-
Revenue quality The model checks whether growth appears supported by core operations rather than transient or low-quality drivers.
Capital allocation as a supporting module
The current live engine also scores a separate Capital Allocation module using:
- CapEx / revenue
- Free cash flow
- FCF / net income
- Dividend capacity / FCF coverage
That module feeds the composite report because capital allocation affects durability, but we still describe the overall site in public-facing copy as quality, moat, and risk because those are the core investor questions.
How the score is produced
The risk module receives a 0-100 safety score:
- 80 to 100: balance-sheet and sustainability risk appears low
- 60 to 79: manageable risk profile with issues to monitor
- 40 to 59: elevated fragility
- Below 40: material leverage, cash, or sustainability concerns
Data time window
The live report uses the filing period requested by the user, plus historical context when available.
- US companies: the system attempts to assemble a multi-year view from SEC company facts, typically up to five years for annual reports.
- CN and HK companies: the live normalized statement uses the requested filing period from Eastmoney-backed feeds.
- Annual reports: treated as the main anchor for company pages and learn-page examples.
- Quarterly reports: supported in the engine, but the current SEO rollout focuses on annual analysis pages.
When there is not enough multi-year context, the report still renders using the current filing. Historical charts and trend discussion become richer when enough prior periods are available.
Version history
| Version | Date | Changes |
|---|---|---|
| 4.0 | 2026-04 | v4 report structure — verdict + 3 scored pillars + management facts |
| 3.0 | 2026-03 | Four-pillar framework including Capital Allocation |
Composite score and grade
The current composite report score is the simple arithmetic average of all scored modules returned by the live engine. Today that means the average of:
- Earnings Quality
- Moat Strength
- Capital Allocation
- Key Risks
The letter grade maps as follows:
- A: 90 to 100
- B: 80 to 89
- C: 70 to 79
- D: 60 to 69
- F: below 60
Known limitations
- This is a research aid, not a substitute for reading the filing.
- The current module scores are rubric-based judgments, not a purely deterministic formula.
- Industry context still matters. A ratio that is normal for one sector can be alarming in another.
- The source-map layer is still evolving. Where a metric card simplifies a derived concept into a single source field, the filing itself remains the authoritative reference.
If we materially change thresholds, module definitions, or the composite rollup, we log the change here before calling the framework "current."
