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
- Net debt is 3.1× EBITDA, a high level of leverage.
- The stock is in a downtrend: below its 200-day average, with the 50-day average below the 200-day.
- Revenue over the last four quarters was $189.4M, up 15.4% from a year earlier, accelerating from 11.3% a quarter 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 38%
- EPS growth (TTM, YoY)Top 41%
- Revenue growth, 3-year CAGRTop 8%
- Revenue growth accelerationBottom 48%
Returns on capital, margins, earnings quality and balance-sheet strength.
- Return on invested capitalBottom 38%
- Gross marginTop 33%
- Operating marginTop 31%
- Cash conversion (OCF / net income)Top 14%
- Accruals (lower is better)Top 44%
- Net debt / EBITDA (lower is better)Bottom 24%
- Interest coverBottom 41%
How cheap the shares are relative to earnings, cash flow and their own history.
- Earnings yieldTop 47%
- Free-cash-flow yieldBottom 16%
- EBITDA / enterprise valueTop 33%
- Sales / enterprise valueBottom 25%
- P/E vs own 5-year history (lower is better)Top 35%
Strength and persistence of the price trend, including versus the S&P 500.
- 12-month return excluding last monthTop 48%
- 6-month returnBottom 37%
- 1-year return vs S&P 500Top 44%
- Distance from 52-week highBottom 42%
- Trend checklist (0–4)Bottom 18%
Earnings surprises and analyst sentiment (estimate-revision history is being collected).
- Average EPS surprise, last 4 quartersBottom 44%
- Consecutive EPS beatsBottom 20%
- Share of analysts rating BuyTop 29%
- Upside to consensus price targetTop 16%
Low volatility, shallow drawdowns, low market sensitivity and modest leverage.
- Volatility, 60 days (lower is better)Top 38%
- Maximum drawdown, 3 yearsTop 34%
- Beta vs S&P 500 (lower is better)Bottom 18%
- Net debt / EBITDA (lower is better)Bottom 24%
What changed
Latest four quarters versus the same period a year earlier (growth: versus one quarter earlier).
| Measure | Before | Now | |
|---|---|---|---|
| Revenue growth (YoY) | 11.3% | 15.4% | ↑ |
| EPS growth (YoY) | 27.4% | 13.4% | ↓ |
| Gross margin | 42.4% | 44.2% | ↑ |
| Operating margin | 21.6% | 23.1% | ↑ |
| FCF margin | -12.9% | -16.5% | ↓ |
Fundamental momentum
| Measure | Now (TTM) | Year / quarter before | Sector rank | |
|---|---|---|---|---|
| Revenue growth (TTM, YoY) | 15.4% | 11.3% | ↑ | Top 38% |
| EPS growth (TTM, YoY) | 13.4% | 27.4% | ↓ | Top 41% |
| Gross margin | 44.2% | 42.4% | ↑ | Top 33% |
| Operating margin | 23.1% | 21.6% | ↑ | Top 31% |
| Net margin | 10.8% | 10.9% | ↓ | — |
| Free-cash-flow margin | -16.5% | -12.9% | ↓ | — |
| Return on invested capital | 4.7% | — | Bottom 38% | |
| Revenue growth, 3-year CAGR | 26.6% | — | Top 8% |
Quality of earnings and balance sheet
- Cash conversion (OCF / net income)Above 1× means profits are backed by cash.
- 3.00×
- Accruals (net income − OCF) / assetsLower is better; high accruals can signal weaker earnings quality.
- -8.2%
- Stock-based compensation / revenueA cost to shareholders through dilution.
- 1.4%
- Receivables growth vs revenue growthReceivables growing much faster than sales can be a warning.
- -27.8 pp
- Net debt / EBITDABelow 1× is conservative; above 3× is high leverage.
- 3.15×
- Interest cover (operating income / interest)How many times operating profit covers interest.
- 2.9×
Shareholder returns
- Dividend yield (dividends paid, TTM)
- 1.11%
- Net buyback yield (TTM)
- -0.27%
- Shareholder yield
- 0.84%
- Share count change, 1 year
- +1.7%
- Share count change, 3-year CAGR
- +1.2%
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 10, 2026).
Earnings and expectations
Earnings momentum
- Consecutive EPS beats
- 0
- Beats in the last 8 reports
- 5 of 8
- Average EPS surprise, last 4
- +4.7%
- Average 2-day reaction, last 8
- +3.0%
- Positive 20 days after report
- 6 of 8
Analysts
- Consensus price target
- $54.00
- Target vs current price
- +62.8%
- Analysts with a rating
- 16
- Share rating Buy or Strong Buy
- 69%
- Consensus rating
- Buy
How the stock reacted to recent reports
| Report date | EPS surprise | 2 days | 5 days | 20 days | 60 days |
|---|---|---|---|---|---|
| Aug 10, 2026 | -25.0% | -0.1% | +2.6% | -1.8% | — |
| May 11, 2026 | +17.8% | +3.6% | +9.4% | +6.1% | -5.3% |
| Mar 16, 2026 | -13.5% | +2.8% | +9.7% | +9.7% | +14.0% |
| Nov 10, 2025 | +39.4% | +4.0% | +1.2% | +8.9% | +19.0% |
| Aug 11, 2025 | +28.1% | +2.3% | -1.5% | +4.9% | +13.4% |
| May 12, 2025 | +40.7% | +5.5% | +21.6% | +21.7% | +19.1% |
| Mar 17, 2025 | -14.8% | +4.4% | -4.4% | -18.2% | +10.8% |
| Nov 14, 2024 | +73.9% | +1.2% | +7.5% | +11.9% | +11.9% |
Returns from the close before each report. Past reactions do not determine future ones.
Earnings history
| Report date | EPS | Estimate | Surprise | Revenue |
|---|---|---|---|---|
| Aug 10, 2026 | $0.30 | $0.40 | -25.0% | $51.4M |
| May 11, 2026 | $0.53 | $0.45 | +17.8% | $48.5M |
| Mar 16, 2026 | $0.32 | $0.37 | -13.5% | $46.1M |
| Nov 10, 2025 | $0.46 | $0.33 | +39.4% | $43.4M |
| Aug 11, 2025 | $0.41 | $0.32 | +28.1% | $41.4M |
| May 12, 2025 | $0.38 | $0.27 | +40.7% | $41.4M |
| Mar 17, 2025 | $0.23 | $0.27 | -14.8% | $40.7M |
| Nov 14, 2024 | $0.40 | $0.23 | +73.9% | $40.7M |
Valuation in context
| Multiple | Now | 5-year median | 5-year percentile | Sector rank (cheapness) |
|---|---|---|---|---|
| P/E (trailing) | 20.6× | 21.7× | 50th | Top 47% |
| P/E (forward) | 19.1× | — | — | — |
| EV / EBITDA | 7.2× | — | — | Top 33% |
| EV / Sales | 3.94× | — | — | Bottom 25% |
| Free-cash-flow yield | -7.47% | — | — | Bottom 16% |
| Earnings yield | 4.85% | — | — | Top 47% |
P/E over the past five years
Range 16.0× – 74.0× since Sep 30, 2023. 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
- +18.1%
- Earnings per share growth (TTM)
- +13.4%
- Change in P/E multiple
- +28.6%
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
- 0
- Days above the 200-day average
- 0
- 50-day average slope (20 days)
- -6.0%
- 200-day average slope (20 days)
- +0.8%
- Distance from 50-day average
- -6.7%
- Distance from 200-day average
- -11.9%
- RSI (14)
- 40.4
- Relative volume
- 0.94×
Risk and drawdowns
- Volatility, 60 days (annualized)
- 34.8%
- Volatility vs own 5-year history
- 22th percentile · Normal for this stock
- Beta vs S&P 500 (2 years, weekly)
- 1.03
- Correlation with S&P 500
- 0.36
- Current drawdown from 1-year high
- -24.8%
- Maximum drawdown, 3 years
- -40.9%
Largest declines in the past six years
| From peak | To low | Decline | Length | Recovery |
|---|---|---|---|---|
| Jan 21, 2025 | Apr 8, 2025 | -40.9% | 54 days | 149 days (Nov 10, 2025) |
| Jun 6, 2022 | Jul 12, 2022 | -37.4% | 24 days | 305 days (Sep 27, 2023) |
| Dec 10, 2020 | Jan 27, 2021 | -33.6% | 31 days | 174 days (Oct 5, 2021) |
| Apr 24, 2024 | Aug 5, 2024 | -28.6% | 70 days | 69 days (Nov 11, 2024) |
| Jun 23, 2026 | Sep 29, 2026 | -27.5% | 68 days | Not yet recovered |
Declines of 10% or more from a closing high, measured on daily closes.
Financial statements
- Market cap
- $419.1M
- P/E (TTM)
- 20.6
- EPS, diluted (TTM)
- $1.61
- Revenue (TTM)
- $189.4M
- Dividend yield
- 1.57%
- 52-week range
- $25.53 – $44.61
| FY 2021 | FY 2022 | FY 2023 | FY 2024 | FY 2025 | |
|---|---|---|---|---|---|
| Revenue | $72.4M | $84.8M | $121.2M | $156.7M | $172.3M |
| Gross profit | $1.7M | $14.4M | $32.2M | $56.6M | $63.9M |
| Operating income | -$12.4M | $431,000 | $10.5M | $33.3M | $40.4M |
| Net income | -$9.2M | -$569,000 | $4.7M | $17.2M | $19.9M |
| EPS (diluted) | -$0.70 | -$0.05 | $0.38 | $1.37 | $1.57 |
| Q3 2024 | Q4 2024 | Q1 2025 | Q2 2025 | Q3 2025 | Q4 2025 | Q1 2026 | Q2 2026 | |
|---|---|---|---|---|---|---|---|---|
| Revenue | $40.7M | $40.7M | $41.4M | $41.4M | $43.4M | $46.1M | $48.5M | $51.4M |
| Net income | $5.0M | $2.9M | $4.9M | $5.2M | $5.8M | $4.1M | $6.8M | $3.8M |
| EPS (diluted) | $0.40 | $0.23 | $0.38 | $0.41 | $0.46 | $0.32 | $0.53 | $0.30 |
| FY 2021 | FY 2022 | FY 2023 | FY 2024 | FY 2025 | |
|---|---|---|---|---|---|
| Operating cash flow | $28.3M | $27.8M | $18.0M | $66.5M | $62.9M |
| Capital expenditure | -$25.7M | -$65.1M | -$153.9M | -$71.9M | -$121.5M |
| Free cash flow | $2.6M | -$37.4M | -$135.9M | -$5.4M | -$58.6M |
| Dividends paid | $0 | $0 | $0 | $0 | -$2.6M |
| Net share buybacks | -$7.9M | -$6.7M | -$983,000 | $293,000 | $168,000 |
Cash outflows are shown as negative numbers.
- Cash and short-term investments
- $84,000
- Total assets
- $718.3M
- Total liabilities
- $423.9M
- Total debt
- $328.0M
- Net debt
- $327.9M
- Shareholders’ equity
- $294.5M
As of Jun 30, 2026 (filed Aug 10, 2026).
Dividends
| Ex-date | Amount | Paid |
|---|---|---|
| Aug 19, 2026 | $0.15 | Sep 2, 2026 |
| May 20, 2026 | $0.15 | Jun 3, 2026 |
| Feb 18, 2026 | $0.11 | Mar 4, 2026 |
| Nov 20, 2025 | $0.11 | Dec 3, 2025 |
| Aug 8, 2025 | $0.10 | Aug 22, 2025 |
Short interest
- Shares sold short
- 472,974
- Days to cover
- 3.86
- Change vs previous report
- +5.5%
FINRA short interest, settlement date Sep 15, 2026.