Loading institutional data...
Loading institutional data...
No institutional (13F) filings cover this company, so the Overview and 13F tabs are thin. Everything drawn from its SEC filings is here.
Loading snapshot...
Loading financials...
Loading valuation...
Loading analysis...
Loading dividends & returns...
Loading capital allocation...
Loading debt & leverage...
Loading performance...
Loading peer comparison...
Total return (dividends reinvested) vs the market, from quarter-end prices.
Above 0 = ahead of the S&P 500 since the window start; below 0 = behind. Rising means it's pulling ahead.
How far the stock fell below its prior peak. Deeper, longer drawdowns = a rougher ride to the same return.
Quarter-end, dividend-adjusted (total return). Beta & volatility from quarterly returns (annualized). Benchmark is the S&P 500 (SPY total return). Annual returns compound the quarters ending in each calendar year; the first and last years in a window may be partial. Past performance doesn't predict future results.
Solve the discounted cash flow backwards, then stress-test the assumptions.
Average free cash flow across the last 3 positive fiscal years (FY2023, FY2024, FY2025). Smooths the cycle. Stock compensation is NOT charged — it is added back inside operating cash flow.
A reverse DCF cannot be solved for IH: its net cash ($164.6M) exceeds its market value, so enterprise value is negative. Discounting a positive cash-flow stream always gives a positive number, so no growth rate reaches that target. This is common for banks, brokers and payment companies, where customer balances sit in the cash line and are not the company's to spend.
On the basis ($11.7M) the requirement is off the scale. Shares issued to employees are added back in operating cash flow, so this basis treats them as free.
Default is 9.3% — this company's computed cost of capital, the same rate the Analysis tab discounts at.
2-stage DCF · 0.05B shares (market data) · net debt -$164.6M
Today's price is outside this grid at every discount rate shown — the assumptions it requires lie beyond the plotted range, which is itself the finding.
mean 510.3% · volatility σ 1244% · implied rate exceeded in 3/5 yrs
Central path = implied -60.0%/yr growth; shaded band = ±1σ (1244%) of this company's historical FCF volatility, widening with time. The wider the band, the less certain the growth.
Reverse DCF: rather than guessing a fair value, we solve for the growth the current price implies, then you stress-test the assumptions. Enterprise value of the FCF stream, less net debt, ÷ shares. Educational — not a recommendation.
What the company returns to shareholders — and whether it's covered by cash.
The dividend takes 84% of free cash flow — sustainable but with limited headroom. Last year: $5.6M dividends + $2.5M buybacks = $8.0M returned on $6.6M FCF.
Yields use the latest fiscal-year dividends/buybacks over current market cap. Dividends and buybacks from the SEC cash-flow statement; payout coverage vs net income and free cash flow. Educational — not a recommendation.
How management deployed cash over 6 years — and what it earned on reinvestment.
A cash-return story — far more went to shareholders than back into the business (mature, low-reinvestment).
Insufficient data. Current ROIC on all capital: 10%. Rough measure (includes maintenance capex).
Cash uses aggregated from the SEC cash-flow statement over 6 fiscal years. "Return on reinvestment" is a rough proxy — operating-income change ÷ cumulative CapEx + M&A — and includes maintenance capex. Educational — not a recommendation.
EOD close · as of 2026-10-30
How a revenue dollar becomes profit — FY2025
Dividends and buybacks are cash paid out, shown here against the same year's profit for scale — not funded from it.
Each value shows its share of revenue below it (common-size).
| Line Item | FY2025 | FY2024 | FY2023 | FY2022 | FY2021 | FY2020 |
|---|---|---|---|---|---|---|
| Revenue | $115.4M 100.0% | $922.2M 100.0% | $1.02B 100.0% | $985.5M 100.0% | $944.7M 100.0% | $531.9M 100.0% |
| Cost of Revenue | $37.1M 32.1% | $282.0M 30.6% | $296.9M 29.2% | $294.3M 29.9% | $284.1M 30.1% | $166.5M 31.3% |
| Gross Profit | $78.3M 67.9% | $640.2M 69.4% | $721.3M 70.8% | $691.2M 70.1% | $660.6M 69.9% | $365.4M 68.7% |
| Research & Development | $29.8M 25.8% | $247.8M 26.9% | $257.5M 25.3% | $313.5M 31.8% | $415.3M 44.0% | $199.5M 37.5% |
| Selling, General & Admin | $13.1M 11.3% | $99.3M 10.8% | $104.3M 10.2% | $109.2M 11.1% | $97.4M 10.3% | $114.7M 21.6% |
| Total Operating Expenses | $68.8M 59.6% | $568.2M 61.6% | $561.4M 55.1% | $579.6M 58.8% | $714.9M 75.7% | $409.9M 77.1% |
| Operating Income | $9.5M 8.3% | $71.9M 7.8% | $159.9M 15.7% | $111.6M 11.3% | -$54.2M -5.7% | -$44.5M -8.4% |
| Other Income (Expense), net | $5.0M 4.3% | $38.7M 4.2% | $42.7M 4.2% | $21.2M 2.2% | $17.1M 1.8% | $7.4M 1.4% |
| Pretax Income | $14.6M 12.6% | $110.6M 12.0% | $202.6M 19.9% | $132.8M 13.5% | -$37.2M -3.9% | -$37.0M -7.0% |
| Income Tax Expense | $913K 0.8% | $12.0M 1.3% | $21.7M 2.1% | $23.0M 2.3% | -$145K -0.0% | $466K 0.1% |
| Net Income | $13.6M 11.8% | $98.6M 10.7% | $180.9M 17.8% | $109.8M 11.1% | -$37.1M -3.9% | -$37.5M -7.0% |
| Per Share | ||||||
| EPS (Basic) | $0.05 | $0.38 | $0.69 | $0.41 | -$0.14 | -$0.21 |
| EPS (Diluted) | $0.05 | $0.36 | $0.66 | $0.41 | -$0.14 | -$0.21 |
| Weighted Avg Shares (Basic) | 257.0M | 262.0M | 264.1M | 266.5M | 266.6M | 226.3M |
| Weighted Avg Shares (Diluted) | 267.6M | 271.2M | 273.8M | 270.2M | 266.6M | 226.3M |
Source: SEC EDGAR XBRL filings (annual, fiscal year). Quarterly flow items are derived from cumulative filings; balance-sheet figures are as-of each period end. Ratios and margins are computed, not reported.
How much the company owes, how it's trended, and how comfortably it's serviced.
Insufficient EBITDA/debt history.
Green ≤ 1.5× · amber ≤ 3× · red > 3× (leverage relative to cash earnings).
Interest expense isn't separately reported — often netted into “other income (expense), net.”
Cash vs short-term debt unavailable.
Short-term / long-term split not separately reported.
Debt, cash, interest and equity from the SEC balance sheet & income statement. Effective rate = interest ÷ average debt. Educational — not a recommendation.
EOD close · as of 2026-10-30
Where each multiple sits in its own 6-yr range
Dot = today · shaded = middle 50% · line = median. Lower percentile = cheaper vs its own 6-yr history.
Is the profit real, and how strong is the balance sheet?
FY2025 · every deduction from revenue to net income
DuPont — the three levers
ROE 10% against ROIC 10% — 0% of the return on equity comes from leverage and buybacks rather than from the operating business.
What the company owes vs. what it holds
This shows debt/cash structure and net leverage. The year-by-year maturity schedule is on the Debt & Leverage tab.
Latest year: profit growth vs revenue growth
Low operating leverage — profit tracks sales closely (stable, less cyclical).
Each line as % of revenue — the trend in color
| % of revenue | FY2020 | FY2021 | FY2022 | FY2023 | FY2024 | FY2025 |
|---|---|---|---|---|---|---|
| Cost of Revenue | 31.3 | 30.1 | 29.9 | 29.2 | 30.6 | 32.1 |
| Gross Profit | 68.7 | 69.9 | 70.1 | 70.8 | 69.4 | 67.9 |
| R&D | 37.5 | 44.0 | 31.8 | 25.3 | 26.9 | 25.8 |
| SG&A | 21.6 | 10.3 | 11.1 | 10.2 | 10.8 | 11.3 |
| Operating Income | -8.4 | -5.7 | 11.3 | 15.7 | 7.8 | 8.3 |
| Income Tax | 0.1 | -0.0 | 2.3 | 2.1 | 1.3 | 0.8 |
| Net Income | -7.0 | -3.9 | 11.1 | 17.8 | 10.7 | 11.8 |
Green = margin-favorable vs the row's own range · red = unfavorable.
The metrics that matter, over time
A 30-second read on IH: price, valuation and headline fundamentals from SEC filings. The four questions at the top of the page are where the judgements live.
Ranked against 14 sector peers with collected financials. Valuation from latest close × latest fiscal-year fundamentals; 13F conviction as of 2026-09-30.
Percentile is “goodness” within the peer set (100 = best). For valuation and leverage that means cheaper / less-levered ranks higher.
| Company | Mkt cap ▼ | P/E | EV/EBITDA | P/S | Rev gr | Gross | Net | ROE | ROIC | Net D/EBITDA | 13F |
|---|---|---|---|---|---|---|---|---|---|---|---|
| EDU | $7.5B | — | 7.0× | 1.3× | 15.5% | 54.6% | 8.4% | 11.9% | 11.9% | -2.2× | — |
| TAL | $5.5B | 3.6× | 11.5× | 1.8× | 33.7% | 55.4% | 17.6% | 14.1% | 14.1% | -4.4× | 29 |
| GHC | $4.9B | 17.6× | 17.4× | 1.0× | 2.5% | — | 6.0% | 6.1% | 5.2% | 1.9× | 69 |
| LAUR | $4.5B | 17.6× | 8.9× | 2.6× | 8.6% | 28.3% | 16.5% | 23.7% | 21.4% | -0.0× | 68 |
| CVSA | $4.2B | 17.7× | 10.4× | 2.1× | 9.3% | 57.3% | 12.9% | 17.4% | 11.9% | 0.6× | — |
| LOPE | $3.9B | 19.2× | 12.6× | 3.5× | 7.1% | — | 19.5% | 28.9% | 28.9% | -0.4× | 90 |
| LRN | $3.3B | 11.0× | 5.1× | 1.3× | 4.7% | 37.8% | 13.4% | 20.7% | 16.5% | -0.6× | 69 |
| DAO | $2.4B | 154.5× | — | 2.9× | 9.6% | 44.3% | 1.6% | -5.0% | -5.0% | — | 3 |
| PRDO | $1.9B | 12.3× | 7.4× | 2.2× | 24.2% | — | 18.9% | 16.4% | 16.4% | -0.5× | 62 |
| STRA | $1.6B | 13.5× | 6.7× | 1.3× | 4.0% | — | 10.0% | 7.7% | 7.7% | -0.6× | 59 |
| UTI | $1.2B | 20.0× | 10.4× | 1.5× | 14.0% | — | 7.5% | 19.2% | 15.2% | -0.3× | 37 |
| APEI | $742M | 29.8× | 10.3× | 1.1× | 3.9% | 54.2% | 4.9% | 10.7% | 8.1% | -1.2× | 30 |
| LINC | $656M | 32.3× | 12.7× | 1.3× | 17.8% | 60.4% | 3.9% | 10.0% | 10.0% | -0.6× | 24 |
| LGCY | $123M | 14.5× | 8.0× | 1.5× | 24.8% | — | 11.4% | 17.3% | 17.3% | -1.8× | 9 |
| IH | $60M | 23.6× | — | 0.5× | -8.7% | 67.9% | 11.8% | 9.6% | 9.6% | -15.4× | — |
Peers = companies sharing IH's sector (Services-Educational Services) with collected SEC financials. Multiples use the most recent end-of-day close and latest fiscal-year fundamentals (trailing, not forward). Missing cells mean the peer never reported that line item, has no collected price, or has a non-positive denominator. Not investment advice.
Cost of capital cannot be computed, so the spread is unknown.
| Fiscal year | Gross margin | Operating margin | Net margin |
|---|---|---|---|
| FY2020 | 68.7% | -8.4% | -7.0% |
| FY2021 | 69.9% | -5.7% | -3.9% |
| FY2022 | 70.1% | 11.3% | 11.1% |
| FY2023 | 70.8% | 15.7% | 17.8% |
| FY2024 | 69.4% | 7.8% | 10.7% |
| FY2025 | 67.9% | 8.3% | 11.8% |
Return on equity (10%) and return on invested capital (10%) are within a couple of points in FY2025, so the headline return is the operating return — there is no meaningful leverage effect to strip out.
No material counter-signal in the checked set: ROIC vs WACC spread, 5-year spread history, gross margin trend, operating margin trend, net margin against 3 years ago, revenue growth, ROIC ex-goodwill gap.
Missing from our data, so excluded from this answer: wacc.
Converts 0.89x of reported profit into cash — adequate, without much margin.
Capex has been below depreciation for 4 consecutive years (1.47x on average over the last 5). Spending less than the asset base is consuming flatters free cash flow now and defers the cost — though depreciation also covers amortisation of acquired intangibles, which capex is not meant to replace.
Debt is present but there is no positive EBITDA or no reported interest expense, so coverage cannot be measured.
Balance sheet at 2025-12-31. Undrawn revolving credit is not shown: the tag is collected but not yet mapped through to the API.
No material counter-signal in the checked set: net debt / EBITDA, interest coverage, stressed coverage, maturity schedule vs cash and one year of FCF, liquidity ratios.
Missing from our data, so excluded from this answer: interest_expense.
No growth rate within the range this model can express reaches the current price, so the requirement cannot be stated as a number.
No material counter-signal in the checked set: reverse-DCF implied growth, historical FCF CAGR, per-year FCF growth distribution, reporting-basis breaks, discount rate used, free-cash-flow basis (stock comp charged?).
Missing from our data, so excluded from this answer: implied_growth.
| Step | Amount | Running total |
|---|---|---|
| Net income | $14M | $14M |
| Share-based comp | $103,000 | $14M |
| Other non-cash & working capital | −$6M | $7M |
| Operating cash flow | $7M | $7M |
| Capex | −$701,000 | $7M |
| Free cash flow | $7M | $7M |
| FCF after SBC | $7M | $7M |
| Fiscal year | Revenue growth | Receivables growth | Gap |
|---|---|---|---|
| FY2021 | 81.8% | -26.3% | -108.1 points |
| FY2022 | -3.6% | 31.1% | 34.7 points |
| FY2023 | 0.4% | -25.8% | -26.1 points |
| FY2024 | -11.9% | -16.8% | -4.9 points |
| FY2025 | -8.7% | -5.6% | 3.1 points |
| Fiscal year | DSO | DIO | DPO | Cash conversion cycle |
|---|---|---|---|---|
| FY2020 | 53.5 days | not reported | not reported | not reported |
| FY2021 | 21.7 days | 36 days | 39.2 days | 18.5 days |
| FY2022 | 29.5 days | 23.7 days | 30 days | 23.2 days |
| FY2023 | 21.8 days | 20.3 days | 27.2 days | 14.9 days |
| FY2024 | 20.6 days | 30.4 days | 39.1 days | 11.8 days |
| FY2025 | 21.3 days | 30.1 days | 35.3 days | 16.1 days |
| Fiscal year | Accruals / assets |
|---|---|
| FY2020 | -24.9 percent |
| FY2021 | -6.8 percent |
| FY2022 | -5.9 percent |
| FY2023 | 0.6 percent |
| FY2024 | 2.8 percent |
| FY2025 | 3.2 percent |
Below the line, the asset base is being consumed faster than it is replaced.
Below the line for 4 consecutive years to the latest.
Depreciation here includes amortisation of acquired intangibles — goodwill written down over time, customer lists, acquired technology. Capex does not replace those and is not meant to, so an acquisitive or asset-light company sits below 1.0 permanently and correctly. The signal is cleanest for capital-intensive businesses, where the two measure the same physical base. For that reason this informs the earnings-quality verdict but never caps it.
SBC is added back inside operating cash flow, so reported free cash flow treats shares issued to employees as free. Percent of revenue says how expensive the payroll is; percent of operating cash flow says how much of the cash exists only because the charge was added back. The buyback offset is buybacks over SBC — below 1.0 the repurchase does not cover the shares issued.
Figures are the latest fiscal year (FY2025) from the company's own filings, not a trailing-twelve-month window — Q2 reads fiscal years throughout so the cash-conversion ratios and these share one basis. A blank is a line the filer did not report; it is never read as zero.