Capstone Holding Corp.

CAPSdata completeness 100%12 fiscal years on file

Data notes: no data for concept 'investmentsAtFairValue'; no data for concept 'netInvestmentIncome'; no data for concept 'gainsOnRealEstateSales'; no data for concept 'realEstateImpairment'; no data for concept 'dividendsPaid'; no data for concept 'interestExpense'

The thesis, from the filings

Capstone Holding Corp. earns about 448% on invested capital, and has bought back 90% of its shares over 5 years. The applicable estimate puts fair value near $0.38 a share.Whether it’s worth owning at today’s price is the last question — and yours to answer, below.

i. The business — what you’d actually own
FigureFY 2017FY 2018FY 2023FY 2024FY 2025
Revenue$01−$2M1$48.6M2$45.8M2$46.9M3
Net income$1.76M4$380,0004−$3.82M5−$2.56M5−$21.2M6
Operating cash flow−$1.56M7$66,0007$1.65M8$3.82M8−$4.41M9
Capital expenditure$208,00010$120,00010$122,00011
Free cash flow (derived)$1.44M8$3.7M8−$4.53M9
Total debt$2.25M12$2.48M12$17.7M13$16.6M13$26.1M14
Cash & equivalents$1.28M15$1.34M15$52,00016$11,00016$727,00017
Diluted shares54.4M54.4M157,610157,6105.3M

Superscripts are receipts. Each links to the SEC filing the number came from (full list at the bottom).

ii. Your slice — ownership made literal
If you owned
shares
Net assets behind them
$23.4
your share of equity
Profit it earned you last year
−$39.9
Free cash flow it threw off
−$8.52
Debt you’d be carrying
$49.05

10 shares is a claim on $23.4 of net worth that earned you −$39.9 and generated −$8.52 of cash last year, against $49.05 of debt.

iii. Is this a good business?
Moat signal · return on invested capital
448% avg · 5y
FY17 1847%FY18 FY23 -14%FY24 -12%FY25 -29%

It earned an average 448% on invested capital over 5 years. Compare that to what it costs to fund the business.

seeing a moat in the numbers →
Management signal · capital allocation
−90% shares · 5y

Share count is down 90% over 5 years — management has been buying back stock, quietly handing owners a bigger slice. Total debt has risen 1061% over the same window.

reading capital allocation →

Signals, not verdicts — read from the filings above. Numbers don’t prove a moat; they show its footprint. You decide.

iv. What it’s worth — engine v0.5.0
DCF · Growth Exit 10Y
$0.38
assumptions (10)
  • riskFreeRate4.7%
  • equityRiskPremium5.0%
  • beta100.0%
  • equityWeight85.0%
  • costOfDebtSpread1.5%
  • taxRate21.0%
  • terminalGrowth2.5%
  • projectionYears10
  • fcfGrowth5.0%
  • fcfBase$1.44M
DCF · Growth Exit 5Y
not applicable
negative equity value — refusing to publish per-share figure
assumptions (10)
  • riskFreeRate4.7%
  • equityRiskPremium5.0%
  • beta100.0%
  • equityWeight85.0%
  • costOfDebtSpread1.5%
  • taxRate21.0%
  • terminalGrowth2.5%
  • projectionYears5
  • fcfGrowth5.0%
  • fcfBase$1.44M
Earnings Power Value
not applicable
normalized (5y-median) earnings non-positive — EPV undefined
Graham Number
not applicable
diluted EPS missing or non-positive — Graham Number undefined

Different models answer different questions — which to trust when →

Sources — the receipts
  1. 10-K · period ending 2017-12-31 · accession 0001171843-19-001915 (Revenues)
  2. 10-K/A · period ending 2023-12-31 · accession 0001213900-26-045248 (RevenueFromContractWithCustomerExcludingAssessedTax)
  3. 10-K · period ending 2025-12-31 · accession 0001437749-26-012459 (RevenueFromContractWithCustomerIncludingAssessedTax)
  4. 10-K · period ending 2017-12-31 · accession 0001171843-19-001915 (NetIncomeLoss)
  5. 10-K/A · period ending 2023-12-31 · accession 0001213900-26-045248 (NetIncomeLoss)
  6. 10-K · period ending 2025-12-31 · accession 0001437749-26-012459 (NetIncomeLoss)
  7. 10-K · period ending 2017-12-31 · accession 0001171843-19-001915 (NetCashProvidedByUsedInOperatingActivities)
  8. 10-K/A · period ending 2023-12-31 · accession 0001213900-26-045248 (NetCashProvidedByUsedInOperatingActivities)
  9. 10-K · period ending 2025-12-31 · accession 0001437749-26-012459 (NetCashProvidedByUsedInOperatingActivities)
  10. 10-K/A · period ending 2023-12-31 · accession 0001213900-26-045248 (PaymentsToAcquirePropertyPlantAndEquipment)
  11. 10-K · period ending 2025-12-31 · accession 0001437749-26-012459 (PaymentsToAcquirePropertyPlantAndEquipment)
  12. 10-K · period ending 2017-12-31 · accession 0001171843-19-001915 (LongTermDebtNoncurrent)
  13. 10-K/A · period ending 2023-12-31 · accession 0001213900-26-045248 (LongTermDebtNoncurrent)
  14. 10-K · period ending 2025-12-31 · accession 0001437749-26-012459 (LongTermDebtNoncurrent)
  15. 10-K · period ending 2017-12-31 · accession 0001171843-19-001915 (CashAndCashEquivalentsAtCarryingValue)
  16. 10-K/A · period ending 2023-12-31 · accession 0001213900-26-045248 (CashAndCashEquivalentsAtCarryingValue)
  17. 10-K · period ending 2025-12-31 · accession 0001437749-26-012459 (CashAndCashEquivalentsAtCarryingValue)