Scroll or pinch to zoom, drag to move. Daily prices adjusted for splits. Markers: E = earnings (green beat, red miss), S = split, D = dividend.
Three things to know
- The shares trade at 15.8× trailing earnings, higher than 86% of the company's own readings over the past five years.
- The stock is in an uptrend: above its 200-day average for 41 trading days, with the 50-day average above the 200-day.
- Operating margin widened to 54.3% from 47.8% a year earlier.
PromtFinance scores
Each score is a percentile within the Energy sector (0–100). Under each score: how the stock ranks in its sector on every component. As of Oct 5, 2026.
How fast revenue, earnings and cash flow are growing.
- Revenue growth (TTM, YoY)Top 43%
- EPS growth (TTM, YoY)Bottom 50%
- FCF growth (TTM, YoY)Top 46%
- Revenue growth, 3-year CAGRBottom 39%
- Revenue growth accelerationTop 17%
Returns on capital, margins, earnings quality and balance-sheet strength.
- Return on invested capitalTop 3%
- Gross marginTop 10%
- Operating marginTop 8%
- Cash conversion (OCF / net income)Bottom 41%
- Accruals (lower is better)Top 6%
- Net debt / EBITDA (lower is better)Top 10%
How cheap the shares are relative to earnings, cash flow and their own history.
- Earnings yieldTop 36%
- Free-cash-flow yieldTop 18%
- EBITDA / enterprise valueTop 41%
- Sales / enterprise valueBottom 14%
- P/E vs own 5-year history (lower is better)Bottom 17%
Strength and persistence of the price trend, including versus the S&P 500.
- 12-month return excluding last monthBottom 38%
- 6-month returnTop 30%
- 1-year return vs S&P 500Bottom 47%
- Distance from 52-week highTop 7%
- Trend checklist (0–4)Top 14%
Earnings surprises and analyst sentiment (estimate-revision history is being collected).
Low volatility, shallow drawdowns, low market sensitivity and modest leverage.
- Volatility, 60 days (lower is better)Top 12%
- Maximum drawdown, 3 yearsTop 33%
- Beta vs S&P 500 (lower is better)Top 16%
- Net debt / EBITDA (lower is better)Top 10%
What changed
Latest four quarters versus the same period a year earlier (growth: versus one quarter earlier).
| Measure | Before | Now | |
|---|---|---|---|
| Revenue growth (YoY) | -3.0% | 13.9% | ↑ |
| EPS growth (YoY) | -31.1% | 2.3% | ↑ |
| Gross margin | 61.6% | 72.8% | ↑ |
| Operating margin | 47.8% | 54.3% | ↑ |
| FCF margin | 82.5% | 81.5% | ↓ |
Fundamental momentum
| Measure | Now (TTM) | Year / quarter before | Sector rank | |
|---|---|---|---|---|
| Revenue growth (TTM, YoY) | 13.9% | -3.0% | ↑ | Top 43% |
| EPS growth (TTM, YoY) | 2.3% | -31.1% | ↑ | Bottom 50% |
| Gross margin | 72.8% | 61.6% | ↑ | Top 10% |
| Operating margin | 54.3% | 47.8% | ↑ | Top 8% |
| Net margin | 45.7% | 46.5% | ↓ | — |
| Free-cash-flow margin | 81.5% | 82.5% | ↓ | — |
| Return on invested capital | 34.0% | — | Top 3% | |
| Revenue growth, 3-year CAGR | -3.6% | — | Bottom 39% |
Quality of earnings and balance sheet
- Cash conversion (OCF / net income)Above 1× means profits are backed by cash.
- 1.78×
- Accruals (net income − OCF) / assetsLower is better; high accruals can signal weaker earnings quality.
- -21.9%
- Stock-based compensation / revenueA cost to shareholders through dilution.
- 0.0%
- Receivables growth vs revenue growthReceivables growing much faster than sales can be a warning.
- +2.5 pp
- Net debt / EBITDABelow 1× is conservative; above 3× is high leverage.
- -0.43×
Shareholder returns
- Dividend yield (dividends paid, TTM)
- 9.26%
- Net buyback yield (TTM)
- 0.00%
- Shareholder yield
- 9.26%
- Share count change, 1 year
- +1.9%
- Share count change, 3-year CAGR
- +7.9%
Shareholder yield = dividends + net buybacks over the last four quarters, divided by market cap.
Based on the four quarters through Jun 30, 2026 (filed Aug 6, 2026).
Earnings and expectations
Earnings momentum
- Average 2-day reaction, last 8
- +0.3%
- Positive 20 days after report
- 4 of 8
How the stock reacted to recent reports
| Report date | EPS surprise | 2 days | 5 days | 20 days | 60 days |
|---|---|---|---|---|---|
| Aug 6, 2026 | — | +1.2% | +7.8% | +14.8% | — |
| May 6, 2026 | — | -3.1% | +0.8% | +4.5% | +2.5% |
| Feb 24, 2026 | — | +0.1% | +6.3% | +8.0% | +13.2% |
| Nov 6, 2025 | — | +2.1% | +3.3% | -2.0% | +7.4% |
| Aug 7, 2025 | — | -1.1% | -6.8% | -4.3% | -5.4% |
| May 8, 2025 | — | +2.1% | +5.2% | -0.1% | -1.9% |
| Feb 20, 2025 | — | -1.0% | -4.4% | -7.6% | -12.6% |
| Oct 31, 2024 | — | +2.2% | +3.5% | +9.4% | +2.5% |
Returns from the close before each report. Past reactions do not determine future ones.
Earnings history
| Report date | EPS | Estimate | Surprise | Revenue |
|---|---|---|---|---|
| Aug 6, 2026 | $0.62 | — | — | $56.1M |
| May 6, 2026 | $0.59 | — | — | $58.9M |
| Feb 24, 2026 | $0.32 | — | — | $41.9M |
| Nov 6, 2025 | $0.23 | — | — | $35.4M |
| Aug 7, 2025 | $0.25 | — | — | $32.4M |
| May 8, 2025 | $0.36 | — | — | $43.2M |
| Feb 20, 2025 | $0.24 | — | — | $39.7M |
| Oct 31, 2024 | $0.87 | — | — | $53.5M |
Valuation in context
| Multiple | Now | 5-year median | 5-year percentile | Sector rank (cheapness) |
|---|---|---|---|---|
| P/E (trailing) | 15.8× | 11.5× | 86th | Top 36% |
| EV / EBITDA | 8.3× | — | — | Top 41% |
| EV / Sales | 6.83× | — | — | Bottom 14% |
| Free-cash-flow yield | 11.34% | — | — | Top 18% |
| Earnings yield | 6.32% | — | — | Top 36% |
P/E over the past five years
Range 8.4× – 21.2× since Jun 30, 2021. Each point: price on the filing date divided by trailing-twelve-month EPS known then.
What moved the stock over the past year
- Price return, 1 year
- +10.9%
- Earnings per share growth (TTM)
- +2.3%
- Change in P/E multiple
- -3.8%
Most of the move came from a change in the valuation multiple.
Technical state
Trend checklist
- ✗ Price above 20-day average
- ✓ Price above 50-day average
- ✓ Price above 200-day average
- ✓ 50-day average above 200-day
- ✗ MACD histogram positive
Trend quality
- Days above the 50-day average
- 2
- Days above the 200-day average
- 41
- 50-day average slope (20 days)
- +4.2%
- 200-day average slope (20 days)
- +2.6%
- Distance from 50-day average
- +1.1%
- Distance from 200-day average
- +7.5%
- RSI (14)
- 47.3
- Relative volume
- 0.57×
Risk and drawdowns
- Volatility, 60 days (annualized)
- 23.2%
- Volatility vs own 5-year history
- 32th percentile · Normal for this stock
- Beta vs S&P 500 (2 years, weekly)
- 0.13
- Correlation with S&P 500
- 0.08
- Current drawdown from 1-year high
- -5.8%
- Maximum drawdown, 3 years
- -40.0%
Largest declines in the past six years
| From peak | To low | Decline | Length | Recovery |
|---|---|---|---|---|
| Apr 3, 2024 | Nov 26, 2025 | -40.0% | 415 days | Not yet recovered |
| Jun 2, 2022 | Jul 6, 2022 | -27.2% | 22 days | 256 days (Jul 13, 2023) |
| Oct 8, 2021 | Dec 1, 2021 | -15.8% | 37 days | 23 days (Jan 4, 2022) |
| Jul 20, 2023 | Nov 8, 2023 | -15.7% | 78 days | 49 days (Jan 22, 2024) |
| Jan 25, 2024 | Feb 5, 2024 | -11.9% | 7 days | 30 days (Mar 19, 2024) |
Declines of 10% or more from a closing high, measured on daily closes.
Financial statements
- Market cap
- $1.38B
- P/E (TTM)
- 15.8
- EPS, diluted (TTM)
- $1.81
- Revenue (TTM)
- $192.2M
- Dividend yield
- 11.15%
- 52-week range
- $20.85 – $30.54
| FY 2021 | FY 2022 | FY 2023 | FY 2024 | FY 2025 | |
|---|---|---|---|---|---|
| Revenue | $93.4M | $170.8M | $163.8M | $161.5M | $152.8M |
| Gross profit | $75.4M | $138.8M | $125.3M | $104.4M | $70.7M |
| Operating income | $70.2M | $130.6M | $114.1M | $92.4M | $57.4M |
| Net income | $70.2M | $130.6M | $110.4M | $92.4M | $57.4M |
| EPS (diluted) | $1.94 | $3.35 | $2.85 | $2.13 | $1.20 |
| Q3 2024 | Q4 2024 | Q1 2025 | Q2 2025 | Q3 2025 | Q4 2025 | Q1 2026 | Q2 2026 | |
|---|---|---|---|---|---|---|---|---|
| Revenue | $53.5M | $39.7M | $43.2M | $32.4M | $35.4M | $41.9M | $58.9M | $56.1M |
| Net income | $35.1M | $13.7M | $17.6M | $11.9M | $10.8M | $17.0M | $29.1M | $30.9M |
| EPS (diluted) | $0.87 | $0.29 | $0.36 | $0.25 | $0.23 | $0.36 | $0.60 | $0.62 |
| FY 2021 | FY 2022 | FY 2023 | FY 2024 | FY 2025 | |
|---|---|---|---|---|---|
| Operating cash flow | $70.3M | $147.1M | $139.8M | $132.6M | $132.5M |
| Capital expenditure | $0 | $0 | $0 | $0 | $0 |
| Free cash flow | $70.3M | $147.1M | $139.8M | $132.6M | $132.5M |
| Dividends paid | -$53.9M | -$131.9M | -$131.6M | -$146.5M | -$132.0M |
| Net share buybacks | $0 | $0 | $0 | $0 | $0 |
Cash outflows are shown as negative numbers.
- Cash and short-term investments
- $72.5M
- Total assets
- $314.0M
- Total liabilities
- $10.3M
- Total debt
- $3.5M
- Net debt
- -$69.0M
- Shareholders’ equity
- $303.7M
As of Jun 30, 2026 (filed Aug 6, 2026).
Dividends
| Ex-date | Amount | Paid |
|---|---|---|
| Aug 3, 2026 | $1.27 | Aug 13, 2026 |
| May 4, 2026 | $0.48 | May 14, 2026 |
| Feb 2, 2026 | $0.76 | Feb 12, 2026 |
| Nov 3, 2025 | $0.69 | Nov 13, 2025 |
| Aug 4, 2025 | $0.62 | Aug 14, 2025 |
| May 5, 2025 | $0.73 | May 15, 2025 |
| Feb 3, 2025 | $0.74 | Feb 13, 2025 |
| Oct 28, 2024 | $1.00 | Nov 7, 2024 |
Short interest
- Shares sold short
- 387,275
- Days to cover
- 4.20
- Change vs previous report
- -18.1%
FINRA short interest, settlement date Sep 15, 2026.
Stock splits
- Aug 7, 1989
- 2-for-1
- Nov 2, 1987
- 3-for-1