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 stock is in an uptrend: above its 200-day average for 186 trading days, with the 50-day average above the 200-day.
- Diluted EPS over the last four quarters was $2.05, up 33.1% year over year.
- The shares trade at 6.3× trailing earnings, lower than 81% of the company's own readings over the past five years.
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)Bottom 41%
- EPS growth (TTM, YoY)Top 29%
- FCF growth (TTM, YoY)Bottom 32%
- Revenue growth, 3-year CAGRBottom 38%
- Revenue growth accelerationBottom 49%
Returns on capital, margins, earnings quality and balance-sheet strength.
- Return on invested capitalTop 27%
- Gross marginBottom 47%
- Operating marginBottom 32%
- Cash conversion (OCF / net income)Bottom 17%
- Accruals (lower is better)Bottom 12%
- Net debt / EBITDA (lower is better)Top 48%
- Interest coverTop 33%
How cheap the shares are relative to earnings, cash flow and their own history.
- Earnings yieldTop 5%
- Free-cash-flow yieldTop 10%
- EBITDA / enterprise valueTop 5%
- Sales / enterprise valueTop 3%
- P/E vs own 5-year history (lower is better)Top 9%
Strength and persistence of the price trend, including versus the S&P 500.
- 12-month return excluding last monthBottom 32%
- 6-month returnTop 30%
- 1-year return vs S&P 500Bottom 45%
- Distance from 52-week highTop 5%
- Trend checklist (0–4)Top 5%
Earnings surprises and analyst sentiment (estimate-revision history is being collected).
- Average EPS surprise, last 4 quartersBottom 14%
- Consecutive EPS beatsBottom 20%
Low volatility, shallow drawdowns, low market sensitivity and modest leverage.
- Volatility, 60 days (lower is better)Top 1%
- Maximum drawdown, 3 yearsTop 18%
- Beta vs S&P 500 (lower is better)Top 26%
- Net debt / EBITDA (lower is better)Top 48%
What changed
Latest four quarters versus the same period a year earlier (growth: versus one quarter earlier).
| Measure | Before | Now | |
|---|---|---|---|
| Revenue growth (YoY) | 3.1% | 7.6% | ↑ |
| EPS growth (YoY) | 41.5% | 33.1% | ↓ |
| Gross margin | 29.7% | 30.5% | ↑ |
| Operating margin | 5.1% | 5.8% | ↑ |
| FCF margin | 4.6% | 3.0% | ↓ |
Fundamental momentum
| Measure | Now (TTM) | Year / quarter before | Sector rank | |
|---|---|---|---|---|
| Revenue growth (TTM, YoY) | 7.6% | 3.1% | ↑ | Bottom 41% |
| EPS growth (TTM, YoY) | 33.1% | 41.5% | ↓ | Top 29% |
| Gross margin | 30.5% | 29.7% | ↑ | Bottom 47% |
| Operating margin | 5.8% | 5.1% | ↑ | Bottom 32% |
| Net margin | 3.9% | 3.0% | ↑ | — |
| Free-cash-flow margin | 3.0% | 4.6% | ↓ | — |
| Return on invested capital | 10.9% | — | Top 27% | |
| Revenue growth, 3-year CAGR | -3.8% | — | Bottom 38% |
Quality of earnings and balance sheet
- Cash conversion (OCF / net income)Above 1× means profits are backed by cash.
- 0.97×
- Accruals (net income − OCF) / assetsLower is better; high accruals can signal weaker earnings quality.
- 0.2%
- 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.
- +16.2 pp
- Net debt / EBITDABelow 1× is conservative; above 3× is high leverage.
- 1.39×
- Interest cover (operating income / interest)How many times operating profit covers interest.
- 7.4×
Shareholder returns
- Dividend yield (dividends paid, TTM)
- 6.28%
- Net buyback yield (TTM)
- 2.62%
- Shareholder yield
- 8.91%
- Share count change, 1 year
- -4.4%
- Share count change, 3-year CAGR
- -2.7%
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 5, 2026).
Earnings and expectations
Earnings momentum
- Consecutive EPS beats
- 0
- Beats in the last 8 reports
- 0 of 5
- Average EPS surprise, last 4
- -93.2%
- Average 2-day reaction, last 8
- +0.7%
- 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 5, 2026 | — | +0.5% | -1.3% | +0.0% | — |
| May 6, 2026 | — | +2.2% | -0.5% | -0.2% | -2.6% |
| Feb 4, 2026 | — | +1.4% | +0.2% | +0.8% | -2.5% |
| Dec 8, 2025 | — | +2.2% | -0.4% | +1.4% | +10.6% |
| Aug 6, 2025 | — | +0.3% | -1.8% | +0.2% | -2.9% |
| May 7, 2025 | — | +1.6% | -1.8% | -3.4% | -4.8% |
| Feb 5, 2025 | — | -0.8% | +1.7% | +4.0% | -1.9% |
| Dec 4, 2024 | — | -1.4% | -5.4% | -8.4% | +5.4% |
Returns from the close before each report. Past reactions do not determine future ones.
Earnings history
| Report date | EPS | Estimate | Surprise | Revenue |
|---|---|---|---|---|
| Aug 5, 2026 | -$0.84 | — | — | $358.1M |
| May 6, 2026 | $2.66 | — | — | $766.7M |
| Feb 4, 2026 | $0.89 | — | — | $539.3M |
| Dec 8, 2025 | -$0.84 | — | — | $247.7M |
| Aug 6, 2025 | -$0.48 | — | — | $305.6M |
| May 7, 2025 | $2.01 | — | — | $743.0M |
| Feb 5, 2025 | $0.79 | — | — | $488.1M |
| Dec 4, 2024 | -$1.00 | — | — | $240.3M |
Valuation in context
| Multiple | Now | 5-year median | 5-year percentile | Sector rank (cheapness) |
|---|---|---|---|---|
| P/E (trailing) | 6.3× | 7.7× | 19th | Top 5% |
| P/E (forward) | 15.9× | — | — | — |
| EV / EBITDA | 3.8× | — | — | Top 5% |
| EV / Sales | 0.35× | — | — | Top 3% |
| Free-cash-flow yield | 13.44% | — | — | Top 10% |
| Earnings yield | 15.92% | — | — | Top 5% |
P/E over the past five years
Range 5.1× – 133.8× 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.0%
- Earnings per share growth (TTM)
- +33.1%
- Change in P/E multiple
- -18.5%
Most of the move came from earnings growth.
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
- 6
- Days above the 200-day average
- 186
- 50-day average slope (20 days)
- -0.5%
- 200-day average slope (20 days)
- +0.7%
- Distance from 50-day average
- +1.3%
- Distance from 200-day average
- +1.7%
- RSI (14)
- 55.2
- Relative volume
- 0.83×
Risk and drawdowns
- Volatility, 60 days (annualized)
- 13.2%
- Volatility vs own 5-year history
- 2th percentile · Low for this stock
- Beta vs S&P 500 (2 years, weekly)
- 0.22
- Correlation with S&P 500
- 0.19
- Current drawdown from 1-year high
- -4.2%
- Maximum drawdown, 3 years
- -28.5%
Largest declines in the past six years
| From peak | To low | Decline | Length | Recovery |
|---|---|---|---|---|
| Jun 9, 2023 | May 15, 2024 | -34.0% | 234 days | Not yet recovered |
| Jul 28, 2021 | Sep 27, 2022 | -31.6% | 294 days | 55 days (Dec 14, 2022) |
| Jan 17, 2023 | Feb 2, 2023 | -14.4% | 12 days | 38 days (Mar 29, 2023) |
Declines of 10% or more from a closing high, measured on daily closes.
Financial statements
- Market cap
- $422.9M
- P/E (TTM)
- 6.3
- EPS, diluted (TTM)
- $2.05
- Revenue (TTM)
- $1.91B
- Dividend yield
- 5.94%
- 52-week range
- $11.39 – $13.53
| FY 2021 | FY 2022 | FY 2023 | FY 2024 | FY 2025 | |
|---|---|---|---|---|---|
| Revenue | $1.50B | $2.01B | $1.95B | $1.77B | $1.78B |
| Gross profit | $444.2M | $451.6M | $438.4M | $470.3M | $527.5M |
| Operating income | $130.2M | $73.2M | $59.0M | $75.5M | $96.2M |
| Net income | $87.7M | $32.1M | $29.3M | $32.1M | $63.1M |
| EPS (diluted) | $2.15 | $0.85 | $0.81 | $0.90 | $1.82 |
| Q4 2024 | Q1 2025 | Q2 2025 | Q3 2025 | Q4 2025 | Q1 2026 | Q2 2026 | Q3 2026 | |
|---|---|---|---|---|---|---|---|---|
| Revenue | $240.3M | $488.1M | $743.0M | $305.6M | $247.7M | $539.3M | $766.7M | $358.1M |
| Net income | -$27.5M | $27.5M | $70.4M | -$16.6M | -$22.3M | $35.4M | $88.6M | -$27.7M |
| EPS (diluted) | -$0.78 | $0.79 | $2.01 | -$0.48 | -$0.65 | $0.89 | $2.66 | -$0.85 |
| FY 2021 | FY 2022 | FY 2023 | FY 2024 | FY 2025 | |
|---|---|---|---|---|---|
| Operating cash flow | $68.9M | $33.9M | $123.7M | $111.0M | $71.0M |
| Capital expenditure | -$15.1M | -$18.7M | -$9.0M | -$10.7M | -$14.9M |
| Free cash flow | $53.8M | $15.2M | $114.6M | $100.3M | $56.0M |
| Dividends paid | -$23.4M | -$23.2M | -$23.7M | -$25.0M | -$26.1M |
| Net share buybacks | -$42.8M | -$30.8M | -$4.5M | -$11.1M | -$15.6M |
Cash outflows are shown as negative numbers.
- Cash and short-term investments
- $27.0M
- Total assets
- $1.01B
- Total liabilities
- $621.2M
- Total debt
- $269.9M
- Net debt
- $242.9M
- Shareholders’ equity
- $388.8M
As of Jun 30, 2026 (filed Aug 5, 2026).
Dividends
| Ex-date | Amount | Paid |
|---|---|---|
| Jul 27, 2026 | $0.20 | Aug 5, 2026 |
| Apr 27, 2026 | $0.20 | May 6, 2026 |
| Jan 26, 2026 | $0.19 | Feb 4, 2026 |
| Oct 27, 2025 | $0.19 | Nov 5, 2025 |
| Jul 28, 2025 | $0.19 | Aug 6, 2025 |
| Apr 28, 2025 | $0.19 | May 7, 2025 |
| Jan 27, 2025 | $0.17 | Feb 5, 2025 |
| Oct 28, 2024 | $0.17 | Nov 6, 2024 |
Short interest
- Shares sold short
- 44,174
- Days to cover
- 2.70
- Change vs previous report
- -5.4%
FINRA short interest, settlement date Sep 15, 2026.
Stock splits
- Dec 23, 2013
- 20-for-1