| 3/16/2026 | DA Davidson | Boost Target | Buy ➝ Buy | $48.00 ➝ $58.00 | |
| 3/13/2026 | Truist Financial | Boost Target | Hold ➝ Hold | $38.00 ➝ $55.00 | |
| 3/13/2026 | William Blair | Set Target | | $58.00 | |
| 3/13/2026 | Barrington Research | Boost Target | Outperform ➝ Outperform | $51.00 ➝ $56.00 | |
| 3/13/2026 | B. Riley Financial | Boost Target | Buy ➝ Buy | $53.00 ➝ $57.00 | |
| 3/13/2026 | Lake Street Capital | Boost Target | Buy ➝ Buy | $47.00 ➝ $56.00 | |
| 3/4/2026 | Barrington Research | Boost Target | Outperform ➝ Outperform | $40.00 ➝ $51.00 | |
| 2/18/2026 | Northland Securities | Set Target | | $51.00 | |
| 2/4/2026 | DA Davidson | Boost Target | Buy ➝ Buy | $43.00 ➝ $48.00 | |
| 1/30/2026 | Lake Street Capital | Reiterated Rating | Buy ➝ Buy | $47.00 | |
| 1/27/2026 | Griffin Securities | Set Target | | $53.00 | |
| 1/27/2026 | B. Riley Financial | Boost Target | Buy ➝ Buy | $40.00 ➝ $53.00 | |
| 1/12/2026 | Zacks Research | Upgrade | Hold ➝ Strong-Buy | | |
| 12/29/2025 | Weiss Ratings | Reiterated Rating | Hold (C+) ➝ Hold (C+) | | |
| 12/22/2025 | Weiss Ratings | Reiterated Rating | Hold (C+) ➝ Hold (C+) | | |
| 12/15/2025 | Weiss Ratings | Reiterated Rating | Hold (C+) ➝ Hold (C+) | | |
| 12/8/2025 | Weiss Ratings | Reiterated Rating | Hold (C+) ➝ Hold (C+) | | |
| 12/1/2025 | Weiss Ratings | Reiterated Rating | Hold (C+) ➝ Hold (C+) | | |
| 11/24/2025 | Weiss Ratings | Reiterated Rating | Hold (C+) ➝ Hold (C+) | | |
| 11/24/2025 | DA Davidson | Boost Target | Buy ➝ Buy | $41.00 ➝ $43.00 | |
| 11/21/2025 | Truist Financial | Boost Target | Hold ➝ Hold | $35.00 ➝ $38.00 | |
| 11/21/2025 | Lake Street Capital | Boost Target | Buy ➝ Buy | $38.00 ➝ $40.00 | |
| 11/17/2025 | Weiss Ratings | Reiterated Rating | Hold (C+) ➝ Hold (C+) | | |
| 11/12/2025 | Truist Financial | Boost Target | Hold ➝ Hold | $30.00 ➝ $35.00 | |
| 11/11/2025 | DA Davidson | Boost Target | Buy ➝ Buy | $40.00 ➝ $41.00 | |
| 11/11/2025 | B. Riley Financial | Boost Target | Buy ➝ Buy | $37.00 ➝ $40.00 | |
| 11/11/2025 | Barrington Research | Reiterated Rating | Outperform ➝ Outperform | $40.00 | |
| 10/15/2025 | Lake Street Capital | Set Target | Buy ➝ Buy | $38.00 | |
| 10/15/2025 | B. Riley Financial | Reiterated Rating | Buy ➝ Buy | | |
| 10/8/2025 | Weiss Ratings | Reiterated Rating | Hold (C) ➝ Hold (C) | | |
| 9/27/2025 | Weiss Ratings | Reiterated Rating | Hold (C) ➝ Hold (C) | | |
| 9/25/2025 | Northland Securities | Boost Target | Outperform ➝ Outperform | $38.00 ➝ $46.00 | |
| 9/23/2025 | Barrington Research | Boost Target | Outperform ➝ Outperform | $36.00 ➝ $40.00 | |
| 9/9/2025 | DA Davidson | Initiated Coverage | Buy | $40.00 | |
| 8/12/2025 | Zacks Research | Upgrade | Hold | | |
| 8/11/2025 | Barrington Research | Boost Target | Outperform ➝ Outperform | $32.00 ➝ $36.00 | |
| 8/7/2025 | Griffin Securities | Set Target | | $37.00 | |
| 8/7/2025 | B. Riley Financial | Boost Target | Buy ➝ Buy | $36.00 ➝ $37.00 | |
| 6/18/2025 | Northland Securities | Upgrade | Strong-Buy | | |
| 6/18/2025 | Northland Securities | Initiated Coverage | Outperform | $36.00 | |
| 5/14/2025 | Truist Financial | Boost Target | Hold ➝ Hold | $24.00 ➝ $30.00 | |
| 5/13/2025 | B. Riley Financial | Reiterated Rating | Buy ➝ Buy | | |
| 5/13/2025 | Lake Street Capital | Boost Target | Buy ➝ Buy | $30.00 ➝ $35.00 | |
| 5/13/2025 | Barrington Research | Boost Target | Outperform ➝ Outperform | $24.00 ➝ $32.00 | |
| 4/30/2025 | Barrington Research | Reiterated Rating | Outperform ➝ Outperform | $24.00 ➝ $24.00 | |
| 4/25/2025 | Lake Street Capital | Initiated Coverage | Buy | $30.00 | |
| 3/28/2025 | B. Riley Financial | Initiated Coverage | Buy | $28.00 | |
| 3/27/2025 | B. Riley Financial | Upgrade | Strong-Buy | | |
| 3/10/2025 | Truist Financial | Boost Target | Hold ➝ Hold | $20.00 ➝ $24.00 | |
| 3/7/2025 | Barrington Research | Reiterated Rating | Outperform ➝ Outperform | $24.00 ➝ $24.00 | |
| 3/7/2025 | William Blair | Upgrade | Market Perform ➝ Outperform | | |
| 2/24/2025 | Barrington Research | Reiterated Rating | Outperform ➝ Outperform | $24.00 ➝ $24.00 | |
| 11/14/2024 | Truist Financial | Boost Target | Hold ➝ Hold | $15.00 ➝ $20.00 | |
| 11/13/2024 | Barrington Research | Boost Target | Outperform ➝ Outperform | $18.00 ➝ $24.00 | |
| 11/7/2024 | B. Riley Financial | Boost Target | Buy ➝ Buy | $22.00 ➝ $25.00 | |
| 10/29/2024 | Barrington Research | Reiterated Rating | Outperform ➝ Outperform | $18.00 ➝ $18.00 | |
| 8/13/2024 | Truist Financial | Lower Target | Hold ➝ Hold | $20.00 ➝ $15.00 | |
| 8/7/2024 | Barrington Research | Lower Target | Outperform ➝ Outperform | $24.00 ➝ $18.00 | |
| 7/31/2024 | Barrington Research | Boost Target | Outperform ➝ Outperform | $20.00 ➝ $24.00 | |
| 5/8/2024 | Barrington Research | Boost Target | Outperform ➝ Outperform | $17.00 ➝ $20.00 | |
| 4/30/2024 | B. Riley Financial | Boost Target | Buy ➝ Buy | $15.00 ➝ $16.00 | |
| 3/22/2024 | Barrington Research | Boost Target | Outperform ➝ Outperform | $15.00 ➝ $17.00 | |
| 3/6/2024 | Truist Financial | Boost Target | Hold ➝ Hold | $6.00 ➝ $15.00 | |
| 3/6/2024 | Barrington Research | Boost Target | Outperform ➝ Outperform | $8.00 ➝ $15.00 | |
| 3/6/2024 | B. Riley Financial | Reiterated Rating | Buy ➝ Buy | $12.00 ➝ $15.00 | |
| 2/8/2024 | Barrington Research | Reiterated Rating | Outperform ➝ Outperform | $8.00 | |
| 8/10/2023 | Barrington Research | Reiterated Rating | Outperform ➝ Outperform | $8.00 | |
| 5/26/2023 | Truist Financial | Initiated Coverage | Hold | $6.00 | |
| 3/15/2023 | Barrington Research | Lower Target | Outperform | $15.00 ➝ $10.00 | |
| 3/15/2023 | William Blair | Downgrade | Outperform ➝ Market Perform | | |
| 9/23/2022 | Barrington Research | Reiterated Rating | Buy | $15.00 | |
| 8/11/2022 | Truist Financial | Lower Target | Buy | $21.00 ➝ $16.00 | |
| 8/11/2022 | Barrington Research | Lower Target | Outperform | $20.00 ➝ $15.00 | |
| 5/12/2022 | Truist Financial | Lower Target | | $26.00 ➝ $21.00 | |
| 5/11/2022 | Barrington Research | Lower Target | | $25.00 ➝ $20.00 | |
| 3/4/2022 | Truist Financial | Lower Target | Buy | $36.00 ➝ $26.00 | |
| 6/14/2021 | Truist Financial | Lower Target | Positive ➝ Buy | $43.00 ➝ $38.00 | |
| 4/6/2021 | Truist Financial | Initiated Coverage | Buy | $43.00 | |