CULP INC

CULPdata completeness 88%17 fiscal years on file
The thesis, from the filings

CULP INC earns about -18% on invested capital, but has diluted owners by 3% over 5 years — worth asking whether the growth reaches owners. The cash-flow models don't apply cleanly here — the ledger says why below.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 2022FY 2023FY 2024FY 2025FY 2026
Revenue$294.8M1$234.9M2$225.3M3$213.2M3$203.5M3
Net income−$3.21M4−$31.5M5−$13.8M6−$19.1M6−$10.2M6
Operating cash flow−$17.4M7$7.8M8−$8.22M9−$17.7M9−$9.37M9
Capital expenditure$5.7M10$2.11M11$3.71M12$2.95M12$596,00012
Free cash flow (derived)−$23.1M7$5.7M8−$11.9M9−$20.6M9−$9.97M9
Total debt
Cash & equivalents$14.6M13$21M14$10M15$5.63M16$8.27M16
Diluted shares12.2M12.3M12.4M12.5M12.6M

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
$38.12
your share of equity
Profit it earned you last year
−$8.08
Free cash flow it threw off
−$7.89
Debt you’d be carrying

10 shares is a claim on $38.12 of net worth that earned you −$8.08 and generated −$7.89 of cash last year.

iii. Is this a good business?
Moat signal · return on invested capital
-18% avg · 5y
FY22 -0%FY23 -33%FY24 -13%FY25 -28%FY26 -15%

It earned an average -18% 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
+3% shares · 5y

Share count is up 3% over 5 years — owners have been diluted. Worth asking what they got for it.

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.1.0
DCF · Growth Exit 10Y
not applicable
3y-median FCF non-positive — growth-exit DCF not applicable (see EPV)
DCF · Growth Exit 5Y
not applicable
3y-median FCF non-positive — growth-exit DCF not applicable (see EPV)
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 2022-05-01 · accession 0000950170-24-083115 (RevenueFromContractWithCustomerExcludingAssessedTax)
  2. 10-K · period ending 2023-04-30 · accession 0000950170-25-095233 (RevenueFromContractWithCustomerExcludingAssessedTax)
  3. 10-K · period ending 2024-04-28 · accession 0001193125-26-307064 (RevenueFromContractWithCustomerExcludingAssessedTax)
  4. 10-K · period ending 2022-05-01 · accession 0000950170-24-083115 (ProfitLoss)
  5. 10-K · period ending 2023-04-30 · accession 0000950170-25-095233 (ProfitLoss)
  6. 10-K · period ending 2024-04-28 · accession 0001193125-26-307064 (ProfitLoss)
  7. 10-K · period ending 2022-05-01 · accession 0000950170-24-083115 (NetCashProvidedByUsedInOperatingActivities)
  8. 10-K · period ending 2023-04-30 · accession 0000950170-25-095233 (NetCashProvidedByUsedInOperatingActivities)
  9. 10-K · period ending 2024-04-28 · accession 0001193125-26-307064 (NetCashProvidedByUsedInOperatingActivities)
  10. 10-K · period ending 2022-05-01 · accession 0000950170-24-083115 (PaymentsToAcquireProductiveAssets)
  11. 10-K · period ending 2023-04-30 · accession 0000950170-25-095233 (PaymentsToAcquireProductiveAssets)
  12. 10-K · period ending 2024-04-28 · accession 0001193125-26-307064 (PaymentsToAcquireProductiveAssets)
  13. 10-K · period ending 2022-05-01 · accession 0000950170-23-032929 (CashAndCashEquivalentsAtCarryingValue)
  14. 10-K · period ending 2023-04-30 · accession 0000950170-24-083115 (CashAndCashEquivalentsAtCarryingValue)
  15. 10-K · period ending 2024-04-28 · accession 0000950170-25-095233 (CashAndCashEquivalentsAtCarryingValue)
  16. 10-K · period ending 2025-04-27 · accession 0001193125-26-307064 (CashAndCashEquivalentsAtCarryingValue)