Overview
Key stats
Fundamentals Sep 9- Open
- $15.67
- 52-wk high
- $19.59
- High
- $15.96
- 52-wk low
- $11.13
- Low
- $15.39
- Prev close
- $15.73
- Mkt cap
- $289.3M
- P/E
- 5.2x
- Volume
- 110.3K
- Fwd P/E
- 6.3x
- P/S
- 0.6x
- P/B
- 0.7x
- Profit margin
- +11.5%
- Op margin
- +74.9%
- ROE
- +19.3%
What do analysts expect?
Analyst target and ratings are on paid plans
See the 12-month consensus target and the buy/hold/sell rating split.
Unlock the full resultsSmart money
8 funds hold a position and insiders have been net buying.
What insiders are doing
5 trades · 6 mo
Bought$1.1M
Earnings
Earnings came in 2.3% above what analysts expected.
Earnings per share
$0.88+2.3%
$0.86 expected
What the street expects next
EPS expected
$0.95
$0.79 to $1.12
Revenue expected
$171.8M
2 analysts
Last 30 days
2up2down
Split both ways
Estimate drift
0.01
Change in 30 days
Financials
What it sold, what it cost, what was left.
Sep 2025Dec 2025Mar 2026Jun 2026
| USD | Sep 2025 | Dec 2025 | Mar 2026 | Jun 2026 |
|---|---|---|---|---|
| What came in | ||||
| Revenue | $79.7M | $117.1M | $154.9M | $171.0M |
| Cost of what it sold | $41.1M | $48.1M | $57.7M | $75.7M |
| Gross profit | $38.6M | $68.9M | $97.1M | $95.3M |
| What it spent | ||||
| Sales and admin | $14.7M | $14.6M | $30.3M | $24.8M |
| Other operating costs | — | — | $1.5M | — |
| Total operating expenses | $14.7M | $14.6M | $31.8M | $24.8M |
| What was left | ||||
| Operating profit | $23.9M | $54.3M | $65.3M | $70.5M |
| Interest on debt | $2.3M | $2.9M | $5.8M | $14.7M |
| Profit before tax | $36.6M | $79.4M | -$6.7M | $113.5M |
| Tax | -$3.4M | -$922.0K | -$348.0K | $5.5M |
| Net profit | $10.4M | $20.7M | -$1.9M | $31.8M |
| EBITDA | $66.5M | $113.6M | $34.8M | $172.6M |
Technicals
Price structure
This stock is in a strong uptrend, and looks overbought after a fast run-up.
Trend
Strong uptrend
85 / 100
RSI 14
79overbought
20D volatility
34%annualized
52-week range
$11.13$19.59
20D support
$13.20recent floor
20D resistance
$16.04recent ceiling
Returns
5D +1.5%20D +20.3%60D +12.6%
Price vs moving averages
SMA20 +6.1%SMA50 +14.7%SMA200 +4.8%
Volume pace
0.80xvs prior 20D