36.42
+0.80%
Close of 9 Nov 2026, in USD
Search any instrument
Reference data, closing prices and charts across 45,000 companies, plus crypto, commodities and currencies.
At a glance
Figures in USD, from our data supplier.
Revenue, before interest expense
$145.8m
FY2017FY2026
Net income
$41.0m
FY2017FY2026
Total assets
$3.18bn
FY2017FY2026
Shareholders' equity
$277.8m
FY2017FY2026
Income statement
Fiscal years
| FY2026 | FY2025 | FY2024 | FY2023 | FY2022 | FY2021 | FY2020 | FY2019 | FY2018 | FY2017 | |
|---|---|---|---|---|---|---|---|---|---|---|
| Revenue, before interest expense | $145.8m | $132.9m | $117.6m | $73.4m | $75.6m | $68.0m | $62.0m | $54.7m | $46.4m | $39.9m |
| Operating income | $46.8m | $34.7m | $26.8m | $35.8m | $32.9m | $27.6m | $21.8m | $21.0m | $18.5m | $14.9m |
| Net income | $41.0m | $31.1m | $24.8m | $30.8m | $28.0m | $23.9m | $18.7m | $17.5m | $14.4m | $11.2m |
| Diluted earnings per share | 2.41 | 1.83 | 1.45 | 1.81 | 1.64 | 1.41 | 1.10 | 1.02 | 0.84 | 0.66 |
Balance sheet
At each fiscal year end
| FY2026 | FY2025 | FY2024 | FY2023 | FY2022 | FY2021 | FY2020 | FY2019 | FY2018 | FY2017 | |
|---|---|---|---|---|---|---|---|---|---|---|
| Total assets | $3.18bn | $3.04bn | $2.83bn | $2.70bn | $2.57bn | $2.20bn | $1.68bn | $1.27bn | $1.15bn | $982.3m |
| Cash and short-term investments | $386.1m | $504.3m | $543.2m | $482.2m | $481.2m | $545.2m | $271.2m | $155.1m | $149.7m | $109.9m |
| Total liabilities | $2.91bn | $2.80bn | $2.62bn | $2.52bn | $2.41bn | $2.05bn | $1.55bn | $1.16bn | $1.06bn | $898.8m |
| Debt | $119.0m | $49.9m | $49.7m | $49.5m | $49.3m | $22.6m | $17.9m | — | — | — |
| Shareholders' equity | $277.8m | $238.8m | $206.0m | $183.3m | $157.7m | $149.6m | $128.8m | $112.4m | $96.2m | $83.5m |
| Shares outstanding | 17m | 17m | 17m | 17m | 17m | 17m | 17m | 17m | 17m | 17m |
Latest quarters
By quarter end
| Jun 2026 | Mar 2026 | Dec 2025 | Sept 2025 | Jun 2025 | Mar 2025 | Dec 2024 | Sept 2024 | |
|---|---|---|---|---|---|---|---|---|
| Revenue, before interest expense | $37.3m | $36.3m | $36.7m | $35.6m | $34.5m | $33.6m | $33.3m | $31.5m |
| Operating income | $12.9m | $12.2m | $11.6m | $10.2m | $11.0m | $8.9m | $8.1m | $6.7m |
| Net income | $11.3m | $10.5m | $10.3m | $8.9m | $9.3m | $8.1m | $7.5m | $6.3m |
| Diluted earnings per share | 0.67 | 0.62 | 0.60 | 0.52 | 0.55 | 0.47 | 0.44 | 0.37 |
| Total assets | $3.18bn | $3.18bn | $3.15bn | $3.06bn | $3.04bn | $3.01bn | $2.97bn | $2.87bn |
| Cash and short-term investments | $386.1m | $492.6m | $510.2m | $471.3m | $504.3m | $474.7m | $543.5m | $580.6m |
| Debt | $119.0m | $107.3m | $214.1m | $54.5m | $128.1m | $94.0m | $250.8m | $142.5m |
| Shareholders' equity | $277.8m | $267.6m | $258.3m | $248.2m | $238.8m | $229.0m | $218.4m | $216.3m |
Growth per year
Compound annual rate
| 3 years | 5 years | 10 years | |
|---|---|---|---|
| Revenue | 25.7% | 16.5% | 15.4% |
| Operating income | 9.3% | 11.1% | 14.9% |
| Net income | 10.0% | 11.4% | 16.4% |
Average margins
Over each period
| 1 year | 3 years | 5 years | 10 years | |
|---|---|---|---|---|
| Operating margin | 29.2% | 30.7% | 33.4% | 34.4% |
| Net margin | 25.9% | 27.2% | 29.3% | 29.4% |
Valuation history
At each fiscal year end
| FY2026 | FY2025 | FY2024 | FY2023 | FY2022 | FY2021 | FY2020 | FY2019 | FY2018 | FY2017 | |
|---|---|---|---|---|---|---|---|---|---|---|
| Price to earnings | 15.2 | 12.2 | 19.1 | 15.6 | 17.5 | 13.1 | 11.6 | 14.1 | 18.4 | 24.9 |
| Price to sales | 4.3 | 2.9 | 4.0 | 6.5 | 6.5 | 4.6 | 3.5 | 4.5 | 5.7 | 7.0 |
Share price return
Finished calendar years
| 2025 | 2024 | 2023 | 2022 | 2021 | 2020 | 2019 | 2018 | 2017 | 2016 | |
|---|---|---|---|---|---|---|---|---|---|---|
| Return | -17% | 6% | -18% | 99% | 30% | -8% | -11% | -7% | 60% | 34% |
Dividends and splits
Per share, in the currency the company pays
Paid for 26 years. Last went ex-dividend on 13 Nov 2026.
| FY2027 | FY2026 | FY2025 | FY2024 | FY2023 | FY2022 | FY2021 | FY2020 | |
|---|---|---|---|---|---|---|---|---|
| Paid in the year | 0.22 | 0.40 | 0.36 | 0.32 | 0.28 | 0.26 | 0.24 | 0.22 |
- 2-for-1 split · 24 Mar 2023
- 2-for-1 split · 16 Mar 2016
- 2-for-1 split · 1 Jun 2005
- 11-for-10 split · 22 Jul 1999
Sources and methodology
- Data on this tab
- Our data supplier
- Chart on the Overview
- TradingView
Nothing here is investment advice. Prices can be delayed or wrong, so check with the exchange before relying on them. Data for this page. How we cover markets.