XML 24 R8.htm IDEA: XBRL DOCUMENT v3.24.0.1
CONSOLIDATED STATEMENTS OF CASH FLOWS - USD ($)
$ in Thousands
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Dec. 31, 2021
Statement of Cash Flows [Abstract]      
Net income $ 8,881 $ 28,705 $ 56,604
Adjustments to reconcile net income to net cash provided by operating activities:      
Depreciation and amortization 44,770 34,249 23,073
Unrealized (gain) loss and impairment of equity investment 0 5,948 (5,433)
Stock-based compensation 28,862 20,646 14,107
Provision for doubtful accounts 5,675 0 0
Deferred income taxes (13,406) (7,166) 4,753
Accretion of discount on marketable securities (4,093) (577) (45)
Non-cash lease expense 6,145 5,831 2,042
Other 45 90 45
Changes in operating assets and liabilities:      
Accounts receivable (75,716) (24,408) (67,405)
Prepaid expenses and other current assets 3,918 (1,595) (7,681)
Accounts payable 79,687 29,763 68,301
Accrued liabilities 3,035 (1,024) 3,530
Operating lease liabilities (5,789) (5,539) (2,283)
Other liabilities, non-current (893) 2,289 (927)
Net cash provided by operating activities 81,121 87,212 88,681
CASH FLOWS FROM INVESTING ACTIVITIES:      
Purchases of and deposits on property and equipment (10,601) (35,869) (30,432)
Capitalized software development costs (17,687) (13,024) (8,929)
Purchases of marketable securities (140,603) (137,793) (90,562)
Proceeds from sales of marketable securities 18,873 0 0
Proceeds from maturities of marketable securities 111,000 133,400 33,200
Business combination, net of cash acquired 0 (28,085) 0
Net cash used in investing activities (39,018) (81,371) (96,723)
CASH FLOWS FROM FINANCING ACTIVITIES:      
Proceeds from initial public offering, net of underwriting discounts and commissions 0 0 (806)
Proceeds from issuance of common stock for employee stock purchase plan 1,869 2,960 4,804
Proceeds from exercise of stock options 1,549 1,195 5,423
Principal payments on finance lease obligations (126) (119) (10)
Payments to acquire treasury stock (59,268) 0 (52)
Net cash provided by (used in) financing activities (55,976) 4,036 9,359
NET INCREASE (DECREASE) IN CASH AND CASH EQUIVALENTS (13,873) 9,877 1,317
CASH AND CASH EQUIVALENTS - Beginning of Year 92,382 82,505 81,188
CASH AND CASH EQUIVALENTS - End of Year 78,509 92,382 82,505
SUPPLEMENTAL DISCLOSURES OF CASH FLOW INFORMATION:      
Income taxes paid 15,631 9,190 6,786
SUPPLEMENTAL DISCLOSURES OF NON-CASH INVESTING AND FINANCING INFORMATION:      
Stock-based compensation capitalized as internal use software costs 2,462 1,475 903
Property and equipment included in accounts payable and accrued expenses 203 749 49
Capitalized software costs included in accounts payable and accrued expenses 2,966 1,796 1,794
Business combination purchase consideration - indemnification claims holdback $ 2,148 $ 2,148 $ 0