The Moat Index
Compare moats, side by side.
Two to four companies, scored on the same five investor questions from their SEC filings — so the comparison is apples to apples. The method is fully public.
KRFG · Industrials · Shallow moat
Doesn't clear the bar
The returnsOnCapital component abstained: Not enough years of ROIC data to score returns on capital. The other four 20% weights were renormalized over the scored 80%.
PANL · Industrials · Shallow moat
Doesn't clear the bar
The pricingPower component abstained: Not enough years of gross-margin data to score pricing power. The other four 20% weights were renormalized over the scored 80%.
NUE · Industrials · Shallow moat
On the watchlist
The returnsOnCapital component abstained: Not enough years of ROIC data to score returns on capital. The other four 20% weights were renormalized over the scored 80%.
HLMN · Industrials · Shallow moat
Doesn't clear the bar
The pricingPower component abstained: Not enough years of gross-margin data to score pricing power. The other four 20% weights were renormalized over the scored 80%.
| Measure | KRFG | PANL | NUE | HLMN |
|---|---|---|---|---|
| Moat Score (0–100) | 45 (highest) | 45 (highest) | 45 (highest) | 45 (highest) |
| Methodology version | moat-index@3.0.0 | moat-index@3.0.0 | moat-index@3.0.0 | moat-index@3.0.0 |
| Business trend | 55 | 29 | 19 | 69 (highest) |
| Pricing power | 45 (highest) | — | 0 | — |
| Returns on capital | — | 39 (highest) | — | 0 |
| Balance-sheet safety | 55 | 55 | 74 (highest) | 65 |
| Capital allocation | 24 | 57 | 86 (highest) | 44 |
| No price data | 55% above value if growth stopped today | 12% above value if growth stopped today (largest discount to value if growth stopped today) | 205% above value if growth stopped today | |
| Market cap | $2.7M | $498M | $56.4B | $1.6B |
| Moat tier | Shallow moat | Shallow moat | Shallow moat | Shallow moat |
| Filing date | FY2026 | FY2025 | FY2025 | FY2025 |