Overview
Key stats
Fundamentals Sep 10- Open
- $18.89
- 52-wk high
- $20.42
- High
- $19.02
- 52-wk low
- $15.95
- Low
- $18.62
- Prev close
- $19.00
- Mkt cap
- $703.9M
- P/E
- 9.9x
- Volume
- 138.9K
- Fwd P/E
- 16.0x
- Beta
- -0.03
- Div yield
- 3.89%
- P/S
- 0.7x
- P/B
- 1.1x
- Profit margin
- +7.4%
- Op margin
- +11.6%
- ROE
- +11.2%
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
4 trades · 6 mo
Bought$1.0M
Earnings
Earnings came in 15.2% above what analysts expected.
Earnings per share
$0.53+15.2%
$0.46 expected
Reports Oct 29, 2026, in 49 days
EPS expected
$0.45
$0.40 to $0.49
Revenue expected
$238.4M
2 analysts
Last 30 days
0up2down
Analysts cutting estimates
Estimate drift
0.02
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 | $245.9M | $240.1M | $236.0M | $241.1M |
| Cost of what it sold | $179.9M | $175.5M | $178.3M | $168.7M |
| Gross profit | $66.0M | $64.6M | $57.7M | $72.4M |
| What it spent | ||||
| Other operating costs | $40.9M | $43.7M | $43.6M | $44.9M |
| Total operating expenses | $40.9M | $43.7M | $43.6M | $44.9M |
| What was left | ||||
| Operating profit | $25.0M | $21.0M | $14.1M | $27.5M |
| Interest on debt | $340.4K | $340.4K | $333.0K | $336.7K |
| Profit before tax | $25.0M | $21.0M | $14.1M | $27.5M |
| Tax | $5.0M | $3.8M | $2.6M | $5.2M |
| Net profit | $20.1M | $17.2M | $11.5M | $22.3M |
| EBITDA | $26.1M | $21.7M | $15.3M | $28.4M |
Technicals
Price structure
This stock is in a strong uptrend.
Trend
Strong uptrend
100 / 100
RSI 14
63balanced
20D volatility
15%annualized
52-week range
$15.95$20.42
20D support
$18.30recent floor
20D resistance
$19.76recent ceiling
Returns
5D -0.9%20D +1.7%60D +8.9%
Price vs moving averages
SMA20 +0.3%SMA50 +0.5%SMA200 +5.1%
Volume pace
1.06xvs prior 20D