CLPS Inc
CLPSdata completeness 100%10 fiscal years on fileCLPS Inc earns about 3% on invested capital, below its ~9% cost of capital, but has diluted owners by 57% over 5 years — no moat visible in the numbers. The estimate methods put fair value between $0.07 and $4.69 a share.Whether it’s worth owning at today’s price is the last question — and yours to answer, below.
| Figure | FY 2021 | FY 2022 | FY 2023 | FY 2024 | FY 2025 |
|---|---|---|---|---|---|
| Revenue | $126.1M1 | $152M2 | $150.4M3 | $142.8M3 | $164.5M3 |
| Net income | $6.82M4 | $4.46M5 | $192,5296 | −$2.33M6 | −$7.05M6 |
| Operating cash flow | −$2.61M7 | $3.2M8 | $9.71M9 | $8.93M9 | −$2.54M9 |
| Capital expenditure | $1.07M10 | $20.8M11 | $519,28212 | $2.12M12 | $1.26M12 |
| Free cash flow (derived) | −$3.68M7 | −$17.5M8 | $9.19M9 | $6.81M9 | −$3.8M9 |
| Total debt | $15.1M13 | $28.9M14 | $10.6M15 | $23.2M16 | $30.2M16 |
| Cash & equivalents | $24.7M17 | $18.4M18 | $22.2M19 | $29.1M19 | $28.2M19 |
| Diluted shares | 17.6M | 21.1M | 23.2M | 25.2M | 27.5M |
Superscripts are receipts. Each links to the SEC filing the number came from (full list at the bottom).
10 shares is a claim on $20.17 of net worth that earned you −$2.56 and generated −$1.38 of cash last year, against $10.97 of debt.
It earned about 3% on invested capital against a ~9% cost of capital — below the cost of funding. The numbers show no moat.
seeing a moat in the numbers →Share count is up 57% over 5 years — owners have been diluted. Worth asking what they got for it. Total debt has risen 100% 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.
The 3 estimate methods that apply put fair value between $0.07 and $4.69 a share. They rest on different assumptions, so where they diverge is the story.
assumptions (10)
- riskFreeRate4.7%
- equityRiskPremium5.0%
- beta100.0%
- equityWeight85.0%
- costOfDebtSpread1.5%
- taxRate21.0%
- terminalGrowth2.5%
- projectionYears10
- fcfGrowth5.0%
- fcfBase$6.81M
assumptions (10)
- riskFreeRate4.7%
- equityRiskPremium5.0%
- beta100.0%
- equityWeight85.0%
- costOfDebtSpread1.5%
- taxRate21.0%
- terminalGrowth2.5%
- projectionYears5
- fcfGrowth5.0%
- fcfBase$6.81M
assumptions (8)
- riskFreeRate4.7%
- equityRiskPremium5.0%
- beta100.0%
- equityWeight85.0%
- costOfDebtSpread1.5%
- taxRate21.0%
- normalizedEarnings$192,529
- growthAssumed0.0%
Different models answer different questions — which to trust when →
| Bear | 0.0% | $3.46 |
| Base | 5.0% | $4.31 |
| Bull | 10.0% | $5.34 |
Bear/base/bull growth = 0% / filed history / history + 5pp. Type a price to see the return each case implies.
Default growth 5.0%= this company’s own filed history (median-to-median FCF CAGR, clamped 0–20%). Your adjustments are recorded anonymously. They become the “what do owners actually believe” dataset.
- 20-F · period ending 2021-06-30 · accession 0001013762-23-004641 (Revenues)
- 20-F · period ending 2022-06-30 · accession 0001213900-24-088712 (Revenues)
- 20-F · period ending 2023-06-30 · accession 0001213900-25-099739 (Revenues)
- 20-F · period ending 2021-06-30 · accession 0001013762-23-004641 (NetIncomeLoss)
- 20-F · period ending 2022-06-30 · accession 0001213900-24-088712 (NetIncomeLoss)
- 20-F · period ending 2023-06-30 · accession 0001213900-25-099739 (NetIncomeLoss)
- 20-F · period ending 2021-06-30 · accession 0001013762-23-004641 (NetCashProvidedByUsedInOperatingActivities)
- 20-F · period ending 2022-06-30 · accession 0001213900-24-088712 (NetCashProvidedByUsedInOperatingActivities)
- 20-F · period ending 2023-06-30 · accession 0001213900-25-099739 (NetCashProvidedByUsedInOperatingActivities)
- 20-F · period ending 2021-06-30 · accession 0001013762-23-004641 (PaymentsToAcquirePropertyPlantAndEquipment)
- 20-F · period ending 2022-06-30 · accession 0001213900-24-088712 (PaymentsToAcquirePropertyPlantAndEquipment)
- 20-F · period ending 2023-06-30 · accession 0001213900-25-099739 (PaymentsToAcquirePropertyPlantAndEquipment)
- 20-F · period ending 2021-06-30 · accession 0001213900-22-065082 (LongTermDebtCurrent)
- 20-F · period ending 2022-06-30 · accession 0001213900-22-065082 (ShortTermBorrowings)
- 20-F · period ending 2023-06-30 · accession 0001213900-24-088712 (DebtCurrent)
- 20-F · period ending 2024-06-30 · accession 0001213900-25-099739 (DebtCurrent)
- 20-F · period ending 2021-06-30 · accession 0001013762-23-004641 (CashAndCashEquivalentsAtCarryingValue)
- 20-F · period ending 2022-06-30 · accession 0001213900-24-088712 (CashAndCashEquivalentsAtCarryingValue)
- 20-F · period ending 2023-06-30 · accession 0001213900-25-099739 (CashAndCashEquivalentsAtCarryingValue)