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, 20260 analyst targets · 90 days
- Share price
- $28.89
- Average 1Y price target
- $27.00-6.54%
- 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).
- Overall4
- DCF5
- Return on equity3
- Return on assets4
- Debt / equity4
- P/E2
- P/B3
Average price target
Mean of the targets analysts published in each window.
| Window | Targets | Average |
|---|---|---|
| Last month | 0 | — |
| Last quarter | 0 | — |
| Last year | 3 | $25.33 |
| All time | 4 | $26.25 |
Recent rating changes
The latest 40 changes by research firm, newest first.
| Date | Firm | Action | From | To |
|---|---|---|---|---|
| Jul 21, 2026 | Canaccord Genuity | maintain | Hold | Hold |
| May 6, 2026 | Canaccord Genuity | maintain | Hold | Hold |
| Dec 17, 2025 | Canaccord Genuity | maintain | Hold | Hold |
| Aug 7, 2025 | Canaccord Genuity | maintain | Hold | Hold |
| May 15, 2025 | Canaccord Genuity | maintain | Hold | Hold |
| Feb 26, 2025 | Canaccord Genuity | maintain | Hold | Hold |
| Feb 6, 2025 | JMP Securities | maintain | Market Perform | Market Perform |
| Oct 23, 2024 | Canaccord Genuity | maintain | Hold | Hold |
| Oct 23, 2024 | Barclays | maintain | Overweight | Overweight |
| Jul 24, 2024 | Canaccord Genuity | maintain | Hold | Hold |
| Feb 22, 2023 | Canaccord Genuity | maintain | Hold | Hold |
| Apr 28, 2021 | Canaccord Genuity | maintain | Hold | Hold |
| Oct 28, 2020 | Canaccord Genuity | maintain | Hold | Hold |
| Dec 20, 2019 | Raymond James | maintain | Market Perform | Perform |
| Jul 11, 2018 | Barrington Research | downgrade | Outperform | Market Perform |
| Jun 14, 2018 | Baird | downgrade | Outperform | Neutral |
| Oct 25, 2017 | Needham | downgrade | Buy | Hold |
| Oct 25, 2017 | Baird | maintain | Outperform | Outperform |
| Jul 26, 2017 | First Analysis | upgrade | Underweight | Equal Weight |
| Jan 23, 2017 | First Analysis | downgrade | Equal Weight | Underweight |
| Dec 2, 2016 | Baird | upgrade | Neutral | Outperform |
| Nov 4, 2016 | Craig-Hallum | downgrade | Buy | Hold |
| Nov 4, 2016 | Canaccord Genuity | downgrade | Buy | Hold |
| Jul 27, 2016 | First Analysis | downgrade | Overweight | Equal Weight |
| Jun 29, 2016 | Barrington Research | maintain | Outperform | Outperform |
| Mar 29, 2016 | FBR Capital | maintain | Outperform | Outperform |
| Feb 17, 2016 | Needham | upgrade | Hold | Buy |
| Aug 3, 2015 | Raymond James | maintain | Market Perform | Perform |
| Jul 22, 2015 | Needham | downgrade | Buy | Hold |
| Jul 16, 2015 | Canaccord Genuity | maintain | Buy | Buy |
| May 20, 2015 | Needham | maintain | Buy | Buy |
| Mar 19, 2015 | Baird | maintain | Neutral | Neutral |
| Aug 1, 2014 | Northland Securities | upgrade | Market Perform | Outperform |
| Aug 1, 2014 | Northland Capital Markets | upgrade | Market Perform | Outperform |
| Jun 17, 2014 | Stifel Nicolaus | maintain | Hold | Hold |
| Apr 2, 2014 | Northland Securities | downgrade | Outperform | Market Perform |
| Apr 2, 2014 | Northland Capital Markets | downgrade | Outperform | Market Perform |
| Apr 1, 2014 | Noble Financial | maintain | Buy | Buy |
| Apr 1, 2014 | Noble Capital Markets | upgrade | Hold | Buy |
| Feb 20, 2014 | First Analysis | downgrade | Equal Weight | Underweight |