Overview
Key stats
Fundamentals Sep 10- Open
- $288.22
- 52-wk high
- $338.71
- High
- $289.63
- 52-wk low
- $173.86
- Low
- $277.67
- Prev close
- $288.79
- Mkt cap
- $2.16B
- P/E
- 30.1x
- Volume
- 115.4K
- Fwd P/E
- 21.8x
- Beta
- 1.07
- P/S
- 3.4x
- P/B
- 4.7x
- Profit margin
- +11.5%
- Op margin
- +16.2%
- ROE
- +17.1%
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 selling.
What insiders are doing
9 trades · 6 mo
Sold$13.6M
Earnings
Earnings came in 16.3% above what analysts expected.
Earnings per share
$2.92+16.3%
$2.51 expected
Reports Nov 2, 2026, in 53 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 | $154.6M | $148.9M | $154.2M | $174.0M |
| Cost of what it sold | $111.8M | $106.9M | $109.8M | $123.0M |
| Gross profit | $42.7M | $42.0M | $44.4M | $50.9M |
| What it spent | ||||
| Sales and admin | $19.1M | $21.0M | $21.0M | $22.8M |
| Other operating costs | $299.0K | -$501.0K | — | — |
| Total operating expenses | $19.4M | $20.5M | $21.0M | $22.8M |
| What was left | ||||
| Operating profit | $23.4M | $21.5M | $23.3M | $28.1M |
| Interest on debt | $2.4M | $1.9M | $1.7M | $1.7M |
| Profit before tax | $21.1M | $19.5M | $21.6M | $26.4M |
| Tax | $4.7M | $2.0M | $4.1M | $5.6M |
| Net profit | $16.4M | $17.6M | $17.5M | $20.9M |
| EBITDA | $28.2M | $30.8M | $28.2M | $28.1M |
Technicals
Price structure
This stock's price action is mixed, and looks oversold after a sharp drop.
Trend
Mixed
45 / 100
RSI 14
16oversold
20D volatility
18%annualized
52-week range
$173.86$338.71
20D support
$277.67recent floor
20D resistance
$330.51recent ceiling
Returns
5D -5.6%20D -13.5%60D +17.9%
Price vs moving averages
SMA20 -7.8%SMA50 +0.4%SMA200 +18.3%
Volume pace
0.59xvs prior 20D