Condensed Consolidated Statements of Stockholders' Equity (Unaudited) - USD ($) shares in Thousands, $ in Thousands | Total | Class A Common Stock | Class B Common Stock | Total stockholders' equity | Common stock Class A Common Stock | Common stock Class B Common Stock | Additional paid in capital | Accumulated deficit | Non-controlling interest |
Beginning balance (in shares) at Dec. 31, 2021 | | | | | 20,198 | 16,909 | | | |
Beginning balance at Dec. 31, 2021 | $ (69,188) | | | $ (14,020) | $ 200 | $ 170 | $ 46,281 | $ (60,671) | $ (55,168) |
Increase (Decrease) in Stockholders' Equity [Roll Forward] | | | | | | | | | |
Net income | (5,383) | | | (2,257) | | | | (2,257) | (3,126) |
Exercise of stock options (in shares) | | | | | 19 | | | | |
Exercise of stock options | 256 | | | 256 | | | 256 | | |
Equity-based compensation | 5,788 | | | 5,788 | | | 5,788 | | |
Activity under employee stock purchase plan (in shares) | | | | | 3 | | | | |
Activity under employee stock purchase plan | 214 | | | 214 | | | 214 | | |
Redemption of LLC Units (in shares) | | | | | 101 | 101 | | | |
Redemption of LLC Units | 0 | | | (344) | $ 1 | $ (1) | (344) | | 344 |
Deferred tax adjustments related to Tax Receivable Agreement | 416 | | | 394 | | | 394 | | 22 |
Reallocation of Non-controlling interest | 0 | | | (478) | | | | (478) | 478 |
Ending balance (in shares) at Mar. 31, 2022 | | | | | 20,321 | 16,808 | | | |
Ending balance at Mar. 31, 2022 | (67,897) | | | (10,447) | $ 201 | $ 169 | 52,589 | (63,406) | (57,450) |
Beginning balance (in shares) at Dec. 31, 2021 | | | | | 20,198 | 16,909 | | | |
Beginning balance at Dec. 31, 2021 | (69,188) | | | (14,020) | $ 200 | $ 170 | 46,281 | (60,671) | (55,168) |
Increase (Decrease) in Stockholders' Equity [Roll Forward] | | | | | | | | | |
Net income | 46 | | | | | | | | |
Activity under employee stock purchase plan | | | | 556 | | | | | |
Redemption of LLC Units | | | | (2,300) | | | | | |
Ending balance (in shares) at Sep. 30, 2022 | | | | | 21,202 | 16,201 | | | |
Ending balance at Sep. 30, 2022 | (45,665) | | | 6,329 | $ 210 | $ 163 | 67,238 | (61,282) | (51,994) |
Beginning balance (in shares) at Mar. 31, 2022 | | | | | 20,321 | 16,808 | | | |
Beginning balance at Mar. 31, 2022 | (67,897) | | | (10,447) | $ 201 | $ 169 | 52,589 | (63,406) | (57,450) |
Increase (Decrease) in Stockholders' Equity [Roll Forward] | | | | | | | | | |
Net income | 2,389 | | | 342 | | | | 342 | 2,047 |
Exercise of stock options (in shares) | | | | | 94 | | | | |
Exercise of stock options | 1,008 | | | 1,008 | $ 1 | | 1,007 | | |
Equity-based compensation | 5,173 | | | 5,173 | | | 5,173 | | |
Activity under employee stock purchase plan (in shares) | | | | | 4 | | | | |
Activity under employee stock purchase plan | 177 | | | 177 | | | 177 | | |
Redemption of LLC Units (in shares) | | | | | 115 | 115 | | | |
Redemption of LLC Units | 0 | | | (377) | $ 1 | $ (1) | (377) | | 377 |
Deferred tax adjustments related to Tax Receivable Agreement | 403 | | | 373 | | | 373 | | 30 |
Reallocation of Non-controlling interest | 0 | | | (226) | | | | (226) | 226 |
Ending balance (in shares) at Jun. 30, 2022 | | | | | 20,534 | 16,693 | | | |
Ending balance at Jun. 30, 2022 | (58,747) | | | (3,977) | $ 203 | $ 168 | 58,942 | (63,290) | (54,770) |
Increase (Decrease) in Stockholders' Equity [Roll Forward] | | | | | | | | | |
Net income | 3,040 | | | 1,979 | | | | 1,979 | 1,061 |
Exercise of stock options (in shares) | | | | | 171 | | | | |
Exercise of stock options | 3,006 | | | 3,006 | $ 2 | | 3,004 | | |
Equity-based compensation | 5,395 | | | 5,395 | | | 5,395 | | |
Activity under employee stock purchase plan (in shares) | | | | | 5 | | | | |
Activity under employee stock purchase plan | 165 | | | 165 | | | 165 | | |
Redemption of LLC Units (in shares) | | | | | 492 | 492 | | | |
Redemption of LLC Units | 0 | | | (1,579) | $ 5 | $ (5) | (1,579) | | 1,579 |
Deferred tax adjustments related to Tax Receivable Agreement | 1,476 | | | 1,311 | | | 1,311 | | 165 |
Reallocation of Non-controlling interest | 0 | | | 29 | | | | 29 | (29) |
Ending balance (in shares) at Sep. 30, 2022 | | | | | 21,202 | 16,201 | | | |
Ending balance at Sep. 30, 2022 | (45,665) | | | 6,329 | $ 210 | $ 163 | 67,238 | (61,282) | (51,994) |
Beginning balance (in shares) at Dec. 31, 2022 | | 23,034 | 14,471 | | 23,034 | 14,471 | | | |
Beginning balance at Dec. 31, 2022 | (33,624) | | | 10,670 | $ 228 | $ 146 | 70,866 | (60,570) | (44,294) |
Increase (Decrease) in Stockholders' Equity [Roll Forward] | | | | | | | | | |
Net income | (181) | | | (81) | | | | (81) | (100) |
Exercise of stock options (in shares) | | | | | 17 | | | | |
Exercise of stock options | 173 | | | 173 | | | 173 | | |
Equity-based compensation | 6,620 | | | 6,620 | | | 6,620 | | |
Activity under employee stock purchase plan (in shares) | | | | | 4 | | | | |
Activity under employee stock purchase plan | 201 | | | 201 | | | 201 | | |
Redemption of LLC Units (in shares) | | | | | 323 | 323 | | | |
Redemption of LLC Units | 0 | | | (990) | $ 3 | $ (3) | (990) | | 990 |
Deferred tax adjustments related to Tax Receivable Agreement | 828 | | | 699 | | | 699 | | 129 |
Reallocation of Non-controlling interest | 0 | | | (103) | | | | (103) | 103 |
Ending balance (in shares) at Mar. 31, 2023 | | | | | 23,379 | 14,147 | | | |
Ending balance at Mar. 31, 2023 | (25,984) | | | 17,189 | $ 231 | $ 143 | 77,569 | (60,754) | (43,173) |
Beginning balance (in shares) at Dec. 31, 2022 | | 23,034 | 14,471 | | 23,034 | 14,471 | | | |
Beginning balance at Dec. 31, 2022 | (33,624) | | | 10,670 | $ 228 | $ 146 | 70,866 | (60,570) | (44,294) |
Increase (Decrease) in Stockholders' Equity [Roll Forward] | | | | | | | | | |
Net income | 18,272 | | | | | | | | |
Activity under employee stock purchase plan | | | | 479 | | | | | |
Redemption of LLC Units (in shares) | | 1,055 | 1,055 | | | | | | |
Redemption of LLC Units | | | | (3,256) | | | | | |
Ending balance (in shares) at Sep. 30, 2023 | | 24,446 | 13,415 | | 24,446 | 13,415 | | | |
Ending balance at Sep. 30, 2023 | 5,761 | | | 46,584 | $ 244 | $ 134 | 96,752 | (50,546) | (40,823) |
Beginning balance (in shares) at Mar. 31, 2023 | | | | | 23,379 | 14,147 | | | |
Beginning balance at Mar. 31, 2023 | (25,984) | | | 17,189 | $ 231 | $ 143 | 77,569 | (60,754) | (43,173) |
Increase (Decrease) in Stockholders' Equity [Roll Forward] | | | | | | | | | |
Net income | 7,180 | | | 3,666 | | | | 3,666 | 3,514 |
Distributions | (5,206) | | | | | | | | (5,206) |
Exercise of stock options (in shares) | | | | | 167 | | | | |
Exercise of stock options | 3,518 | | | 3,518 | $ 2 | | 3,516 | | |
Equity-based compensation | 5,872 | | | 5,872 | | | 5,872 | | |
Activity under employee stock purchase plan (in shares) | | | | | 2 | | | | |
Activity under employee stock purchase plan | 144 | | | 144 | | | 144 | | |
Redemption of LLC Units (in shares) | | | | | 352 | 352 | | | |
Redemption of LLC Units | 0 | | | (1,112) | $ 4 | $ (4) | (1,112) | | 1,112 |
Deferred tax adjustments related to Tax Receivable Agreement | 1,027 | | | 870 | | | 870 | | 157 |
Reallocation of Non-controlling interest | 0 | | | (477) | | | | (477) | 477 |
Ending balance (in shares) at Jun. 30, 2023 | | | | | 23,900 | 13,795 | | | |
Ending balance at Jun. 30, 2023 | (13,448) | | | 29,670 | $ 237 | $ 139 | 86,859 | (57,565) | (43,118) |
Increase (Decrease) in Stockholders' Equity [Roll Forward] | | | | | | | | | |
Net income | 11,273 | | | 6,934 | | | | 6,934 | 4,339 |
Distributions | (3,275) | | | | | | | | (3,275) |
Exercise of stock options (in shares) | | | | | 164 | | | | |
Exercise of stock options | 3,366 | | | 3,366 | $ 2 | | 3,364 | | |
Equity-based compensation | 6,459 | | | 6,459 | | | 6,459 | | |
Activity under employee stock purchase plan (in shares) | | | | | 2 | | | | |
Activity under employee stock purchase plan | 135 | | | 135 | | | 135 | | |
Redemption of LLC Units (in shares) | | 380 | 380 | | 380 | 380 | | | |
Redemption of LLC Units | 0 | | | (1,154) | $ 4 | $ (4) | (1,154) | | 1,154 |
Deferred tax adjustments related to Tax Receivable Agreement | 1,252 | | | 1,090 | | | 1,090 | | 162 |
Reallocation of Non-controlling interest | 0 | | | 85 | | | | 85 | (85) |
Ending balance (in shares) at Sep. 30, 2023 | | 24,446 | 13,415 | | 24,446 | 13,415 | | | |
Ending balance at Sep. 30, 2023 | $ 5,761 | | | $ 46,584 | $ 244 | $ 134 | $ 96,752 | $ (50,546) | $ (40,823) |