| Period | Value | YoY Chg | Change % | Date | Report | Filed | Fiscal Year | Fiscal Period |
|---|---|---|---|---|---|---|---|---|
| Q3 2025 | $113,793,000 | +$10,792,000 | +10% | 30 Sep 2025 | 10-Q | 14 Nov 2025 | 2025 | Q3 |
| Q2 2025 | $110,354,000 | +$9,279,000 | +9.2% | 30 Jun 2025 | 10-Q | 14 Aug 2025 | 2025 | Q2 |
| Q1 2025 | $107,551,000 | +$8,399,000 | +8.5% | 31 Mar 2025 | 10-Q | 14 May 2025 | 2025 | Q1 |
| Q4 2024 | $105,290,000 | +$8,185,000 | +8.4% | 31 Dec 2024 | 10-Q | 14 Nov 2025 | 2025 | Q3 |
| Q3 2024 | $103,001,000 | +$8,102,000 | +8.5% | 30 Sep 2024 | 10-Q | 14 Nov 2024 | 2024 | Q3 |
| Q2 2024 | $101,075,000 | +$8,409,000 | +9.1% | 30 Jun 2024 | 10-Q | 14 Aug 2024 | 2024 | Q2 |
| Q1 2024 | $99,152,000 | +$8,307,000 | +9.1% | 31 Mar 2024 | 10-Q | 14 May 2024 | 2024 | Q1 |
| Q4 2023 | $97,105,000 | +$8,640,000 | +9.8% | 31 Dec 2023 | 10-K | 31 Mar 2025 | 2024 | FY |
| Q3 2023 | $94,899,000 | +$9,097,000 | +11% | 30 Sep 2023 | 10-Q | 14 Nov 2023 | 2023 | Q3 |
| Q2 2023 | $92,666,000 | +$9,113,000 | +11% | 30 Jun 2023 | 10-Q | 11 Aug 2023 | 2023 | Q2 |
| Q1 2023 | $90,845,000 | +$9,125,000 | +11% | 31 Mar 2023 | 10-Q | 15 May 2023 | 2023 | Q1 |
| Q4 2022 | $88,465,000 | +$8,395,000 | +10% | 31 Dec 2022 | 10-K | 29 Mar 2024 | 2023 | FY |
| Q3 2022 | $85,802,000 | +$7,674,000 | +9.8% | 30 Sep 2022 | 10-Q | 14 Nov 2022 | 2022 | Q3 |
| Q2 2022 | $83,553,000 | +$7,484,000 | +9.8% | 30 Jun 2022 | 10-Q | 15 Aug 2022 | 2022 | Q2 |
| Q1 2022 | $81,720,000 | +$7,504,000 | +10% | 31 Mar 2022 | 10-Q | 16 May 2022 | 2022 | Q1 |
| Q4 2021 | $80,070,000 | +$7,915,000 | +11% | 31 Dec 2021 | 10-K | 22 Mar 2023 | 2022 | FY |
| Q3 2021 | $78,128,000 | +$8,016,000 | +11% | 30 Sep 2021 | 10-Q | 12 Nov 2021 | 2021 | Q3 |
| Q2 2021 | $76,069,000 | +$7,892,000 | +12% | 30 Jun 2021 | 10-Q | 13 Aug 2021 | 2021 | Q2 |
| Q1 2021 | $74,216,000 | +$7,667,000 | +12% | 31 Mar 2021 | 10-Q | 14 May 2021 | 2021 | Q1 |
| Q4 2020 | $72,155,000 | +$6,889,000 | +11% | 31 Dec 2020 | 10-K | 14 Mar 2022 | 2021 | FY |
| Q3 2020 | $70,112,000 | +$6,441,000 | +10% | 30 Sep 2020 | 10-Q | 09 Nov 2020 | 2020 | Q3 |
| Q2 2020 | $68,177,000 | +$6,614,000 | +11% | 30 Jun 2020 | 10-Q | 10 Aug 2020 | 2020 | Q2 |
| Q1 2020 | $66,549,000 | +$7,038,000 | +12% | 31 Mar 2020 | 10-Q | 08 May 2020 | 2020 | Q1 |
| Q4 2019 | $65,266,000 | +$7,129,000 | +12% | 31 Dec 2019 | 10-K | 15 Mar 2021 | 2020 | FY |
| Q3 2019 | $63,671,000 | +$7,258,000 | +13% | 30 Sep 2019 | 10-Q | 12 Nov 2019 | 2019 | Q3 |
| Q2 2019 | $61,563,000 | +$6,902,000 | +13% | 30 Jun 2019 | 10-Q | 09 Aug 2019 | 2019 | Q2 |
| Q1 2019 | $59,511,000 | +$6,178,000 | +12% | 31 Mar 2019 | 10-Q | 09 May 2019 | 2019 | Q1 |
| Q4 2018 | $58,137,000 | +$6,165,000 | +12% | 31 Dec 2018 | 10-K | 16 Mar 2020 | 2019 | FY |
| Q3 2018 | $56,413,000 | +$5,646,000 | +11% | 30 Sep 2018 | 10-Q | 09 Nov 2018 | 2018 | Q3 |
| Q2 2018 | $54,661,000 | +$5,269,000 | +11% | 30 Jun 2018 | 10-Q | 08 Aug 2018 | 2018 | Q2 |
| Q1 2018 | $53,333,000 | +$5,430,000 | +11% | 31 Mar 2018 | 10-Q | 09 May 2018 | 2018 | Q1 |
| Q4 2017 | $51,972,000 | +$4,921,000 | +10% | 31 Dec 2017 | 10-K | 13 Mar 2019 | 2018 | FY |
| Q3 2017 | $50,767,000 | +$4,755,000 | +10% | 30 Sep 2017 | 10-Q | 09 Nov 2017 | 2017 | Q3 |
| Q2 2017 | $49,392,000 | +$4,438,000 | +9.9% | 30 Jun 2017 | 10-Q | 08 Aug 2017 | 2017 | Q2 |
| Q1 2017 | $47,903,000 | +$4,031,000 | +9.2% | 31 Mar 2017 | 10-Q | 09 May 2017 | 2017 | Q1 |
| Q4 2016 | $47,051,000 | +$4,060,000 | +9.4% | 31 Dec 2016 | 10-K | 12 Mar 2018 | 2017 | FY |
| Q3 2016 | $46,012,000 | +$3,425,000 | +8% | 30 Sep 2016 | 10-Q | 14 Nov 2016 | 2016 | Q3 |
| Q2 2016 | $44,954,000 | +$3,186,000 | +7.6% | 30 Jun 2016 | 10-Q | 12 Aug 2016 | 2016 | Q2 |
| Q1 2016 | $43,872,000 | +$2,753,000 | +6.7% | 31 Mar 2016 | 10-Q | 13 May 2016 | 2016 | Q1 |
| Q4 2015 | $42,991,000 | +$2,762,000 | +6.9% | 31 Dec 2015 | 10-K | 14 Mar 2017 | 2016 | FY |
| Q3 2015 | $42,587,000 | +$3,037,000 | +7.7% | 30 Sep 2015 | 10-Q | 13 Nov 2015 | 2015 | Q3 |
| Q2 2015 | $41,768,000 | +$3,166,000 | +8.2% | 30 Jun 2015 | 10-Q | 13 Aug 2015 | 2015 | Q2 |
| Q1 2015 | $41,119,000 | +$3,460,000 | +9.2% | 31 Mar 2015 | 10-Q | 13 May 2015 | 2015 | Q1 |
| Q4 2014 | $40,229,000 | +$3,282,000 | +8.9% | 31 Dec 2014 | 10-K | 29 Mar 2016 | 2015 | FY |
| Q3 2014 | $39,550,000 | +$3,289,000 | +9.1% | 30 Sep 2014 | 10-Q | 12 Nov 2014 | 2014 | Q3 |
| Q2 2014 | $38,602,000 | +$3,210,000 | +9.1% | 30 Jun 2014 | 10-Q | 13 Aug 2014 | 2014 | Q2 |
| Q1 2014 | $37,659,000 | +$2,921,000 | +8.4% | 31 Mar 2014 | 10-Q | 13 May 2014 | 2014 | Q1 |
| Q4 2013 | $36,947,000 | +$2,846,000 | +8.3% | 31 Dec 2013 | 10-K | 27 Mar 2015 | 2014 | FY |
| Q3 2013 | $36,261,000 | +$2,880,000 | +8.6% | 30 Sep 2013 | 10-Q | 13 Nov 2013 | 2013 | Q3 |
| Q2 2013 | $35,392,000 | +$2,200,000 | +6.6% | 30 Jun 2013 | 10-Q | 13 Aug 2013 | 2013 | Q2 |
| Q1 2013 | $34,738,000 | +$2,052,000 | +6.3% | 31 Mar 2013 | 10-Q | 13 May 2013 | 2013 | Q1 |
| Q4 2012 | $34,101,000 | +$1,804,000 | +5.6% | 31 Dec 2012 | 10-K | 27 Mar 2014 | 2013 | FY |
| Q3 2012 | $33,381,000 | +$1,597,000 | +5% | 30 Sep 2012 | 10-Q | 13 Nov 2012 | 2012 | Q3 |
| Q2 2012 | $33,192,000 | +$1,972,000 | +6.3% | 30 Jun 2012 | 10-Q | 13 Aug 2012 | 2012 | Q2 |
| Q1 2012 | $32,686,000 | 31 Mar 2012 | 10-Q | 10 May 2012 | 2012 | Q1 | ||
| Q4 2011 | $32,297,000 | +$1,855,000 | +6.1% | 31 Dec 2011 | 10-K | 27 Mar 2013 | 2012 | FY |
| Q3 2011 | $31,784,000 | 30 Sep 2011 | 10-Q | 14 Nov 2011 | 2011 | Q3 | ||
| Q2 2011 | $31,220,000 | 30 Jun 2011 | 10-Q | 11 Aug 2011 | 2011 | Q2 | ||
| Q4 2010 | $30,442,000 | 31 Dec 2010 | 10-K | 22 Mar 2012 | 2011 | FY |