Analysts
Scores, price targets and rating changes published by the firms we track. Informational, not advice.
Price target forecast
The average analyst target through the past year, and where analysts see the price a year from now.
Nov 6, 20264 analyst targets · 90 days
- Share price
- $19.73
- Average 1Y price target
- $23.33+18.25%
- Agreement
- Good
Analysts agreement range is spread less than 15% from the average
Share priceAverage analyst target (90-day window), shaded 10th–90th percentile12-month range from the lowest to the highest current target, dashed to the average
Rating scores
Each factor is scored 1 (weak) to 5 (strong).
- Overall2
- DCF1
- Return on equity5
- Return on assets4
- Debt / equity1
- P/E1
- P/B1
Average price target
Mean of the targets analysts published in each window.
| Window | Targets | Average |
|---|---|---|
| Last month | 3 | $24.00 |
| Last quarter | 4 | $23.00 |
| Last year | 6 | $21.67 |
| All time | 9 | $15.56 |
Recent rating changes
The latest 40 changes by research firm, newest first.
| Date | Firm | Action | From | To |
|---|---|---|---|---|
| Oct 29, 2026 | StoneX | maintain | Buy | Buy |
| Oct 29, 2026 | Oppenheimer | maintain | Outperform | Outperform |
| Oct 14, 2026 | Craig-Hallum | maintain | Buy | Buy |
| Oct 14, 2026 | B. Riley Securities | maintain | Buy | Buy |
| Sep 25, 2026 | Cantor Fitzgerald | maintain | Overweight | Overweight |
| Aug 3, 2026 | B. Riley Securities | maintain | Buy | Buy |
| Jul 30, 2026 | Keefe, Bruyette & Woods | maintain | Market Perform | Market Perform |
| Jul 30, 2026 | Cantor Fitzgerald | maintain | Overweight | Overweight |
| Jul 30, 2026 | Benchmark | maintain | Buy | Buy |
| Jul 13, 2026 | Keefe, Bruyette & Woods | downgrade | Outperform | Market Perform |
| Apr 29, 2026 | Benchmark | maintain | Buy | Buy |
| Feb 12, 2026 | Keefe, Bruyette & Woods | maintain | Outperform | Outperform |
| Feb 11, 2026 | Keefe, Bruyette & Woods | upgrade | Market Perform | Outperform |
| Sep 22, 2025 | Oppenheimer | maintain | Outperform | Outperform |
| Sep 10, 2025 | Benchmark | maintain | Buy | Buy |
| Aug 13, 2025 | Keefe, Bruyette & Woods | maintain | Market Perform | Market Perform |
| Aug 6, 2025 | Oppenheimer | maintain | Outperform | Outperform |
| Jul 30, 2025 | Benchmark | maintain | Buy | Buy |
| Jul 2, 2025 | Oppenheimer | maintain | Outperform | Outperform |
| May 14, 2025 | Loop Capital | maintain | Buy | Buy |
| May 7, 2025 | Oppenheimer | maintain | Outperform | Outperform |
| May 7, 2025 | Keefe, Bruyette & Woods | maintain | Market Perform | Market Perform |
| May 7, 2025 | Benchmark | maintain | Buy | Buy |
| Mar 21, 2025 | Stephens & Co. | maintain | Overweight | Overweight |
| Mar 3, 2025 | Keefe, Bruyette & Woods | maintain | Market Perform | Market Perform |
| Feb 26, 2025 | Oppenheimer | maintain | Outperform | Outperform |
| Feb 26, 2025 | Loop Capital | upgrade | Hold | Buy |
| Feb 26, 2025 | Benchmark | maintain | Buy | Buy |
| Dec 9, 2024 | Oppenheimer | maintain | Outperform | Outperform |
| Dec 6, 2024 | Craig-Hallum | maintain | Buy | Buy |
| Nov 11, 2024 | Stephens & Co. | maintain | Overweight | Overweight |
| Oct 29, 2024 | Craig-Hallum | maintain | Buy | Buy |
| Oct 29, 2024 | Benchmark | maintain | Buy | Buy |
| Aug 8, 2024 | Oppenheimer | maintain | Outperform | Outperform |
| Aug 8, 2024 | Keefe, Bruyette & Woods | maintain | Market Perform | Market Perform |
| Aug 7, 2024 | Northland Capital Markets | maintain | Outperform | Outperform |
| Aug 7, 2024 | Craig-Hallum | maintain | Buy | Buy |
| Aug 7, 2024 | Benchmark | maintain | Buy | Buy |
| Jul 2, 2024 | Keefe, Bruyette & Woods | maintain | Market Perform | Market Perform |
| Apr 11, 2024 | Stephens & Co. | maintain | Overweight | Overweight |