Overview
Key stats
Fundamentals Sep 10- Open
- $22.47
- 52-wk high
- $24.21
- High
- $22.76
- 52-wk low
- $13.88
- Low
- $22.16
- Prev close
- $22.50
- Mkt cap
- $1.39B
- P/E
- 10.4x
- Volume
- 330.9K
- Fwd P/E
- 12.6x
- Beta
- 0.47
- Div yield
- 1.24%
- P/S
- 2.3x
- P/B
- 1.1x
- Profit margin
- +22.8%
- Op margin
- +28.5%
- ROE
- +11.7%
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
Insiders have been net selling.
What insiders are doing
4 trades · 6 mo
Sold$991K
Earnings
Earnings came in 63.5% above what analysts expected.
Earnings per share
$0.85+63.5%
$0.52 expected
Reports Nov 3, 2026, in 54 days
EPS expected
$0.42
$0.37 to $0.49
Revenue expected
$141.6M
1 analysts
Last 30 days
3up1down
Analysts raising estimates
Estimate drift
0.10
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 | $153.1M | $152.8M | $140.6M | $167.9M |
| Cost of what it sold | $69.4M | $103.4M | $99.0M | $106.9M |
| Gross profit | $83.7M | $49.4M | $41.7M | $61.1M |
| What it spent | ||||
| Sales and admin | $8.6M | $9.4M | $10.3M | $11.3M |
| Other operating costs | $22.3M | — | — | $2.0M |
| Total operating expenses | $30.8M | $9.4M | $10.3M | $13.2M |
| What was left | ||||
| Operating profit | $52.9M | $40.0M | $31.4M | $47.8M |
| Interest on debt | $15.6M | $13.1M | $12.1M | $13.3M |
| Profit before tax | $39.6M | $26.5M | $37.4M | $59.0M |
| Tax | $3.8M | $7.3M | $1.0M | $2.0M |
| Net profit | $33.2M | $18.5M | $35.5M | $53.0M |
| EBITDA | $82.5M | $72.1M | $81.5M | $96.7M |
Technicals
Price structure
This stock is in a strong uptrend.
Trend
Strong uptrend
100 / 100
RSI 14
64balanced
20D volatility
23%annualized
52-week range
$13.88$24.21
20D support
$19.94recent floor
20D resistance
$23.23recent ceiling
Returns
5D +2.0%20D +13.5%60D -1.1%
Price vs moving averages
SMA20 +3.5%SMA50 +6.8%SMA200 +12.9%
Volume pace
0.91xvs prior 20D