Overview
Key stats
Fundamentals Sep 9- Open
- $21.24
- 52-wk high
- $22.46
- High
- $21.37
- 52-wk low
- $15.42
- Low
- $20.98
- Prev close
- $21.31
- Mkt cap
- $452.2M
- P/E
- 12.8x
- Volume
- 128.4K
- Fwd P/E
- 11.0x
- Beta
- 0.53
- Div yield
- 2.16%
- P/S
- 3.1x
- P/B
- 1.2x
- Profit margin
- +22.5%
- Op margin
- +36.5%
- ROE
- +9.6%
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$190K
Earnings
Earnings came in 8.3% above what analysts expected.
Earnings per share
$0.52+8.3%
$0.48 expected
Reports Oct 21, 2026, in 41 days
EPS expected
$0.50
$0.50 to $0.50
Revenue expected
$0.00
0 analysts
Last 30 days
0up1down
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 | $47.0M | $51.7M | $52.3M | $7.9M |
| Cost of what it sold | $15.1M | $14.8M | $17.4M | $17.4M |
| Gross profit | $31.9M | $36.9M | $34.9M | -$9.5M |
| What it spent | ||||
| Sales and admin | $13.5M | $14.1M | $1.1M | $939.0K |
| Other operating costs | $11.1M | $11.6M | $23.3M | — |
| Total operating expenses | $24.6M | $25.7M | $24.4M | $939.0K |
| What was left | ||||
| Operating profit | $7.3M | $11.2M | $10.5M | -$10.5M |
| Interest on debt | $14.2M | $14.8M | $15.7M | $15.9M |
| Profit before tax | $7.3M | $9.6M | $10.5M | $13.7M |
| Tax | $1.5M | $1.7M | $2.3M | $2.8M |
| Net profit | $5.8M | $7.8M | $8.2M | $10.9M |
| EBITDA | $9.1M | $13.5M | $13.7M | -$13.7M |
Technicals
Price structure
This stock is trending upward.
Trend
Constructive
60 / 100
RSI 14
47balanced
20D volatility
16%annualized
52-week range
$15.42$22.46
20D support
$20.24recent floor
20D resistance
$22.46recent ceiling
Returns
5D +1.6%20D -3.4%60D +1.4%
Price vs moving averages
SMA20 -1.1%SMA50 +0.3%SMA200 +8.0%
Volume pace
0.53xvs prior 20D