XML 45 R32.htm IDEA: XBRL DOCUMENT v3.22.4
Summary of Significant Accounting Policies - Narrative (Details)
12 Months Ended
Dec. 31, 2022
USD ($)
segment
reporting_unit
Dec. 31, 2021
USD ($)
Dec. 31, 2020
USD ($)
New Accounting Pronouncements or Change in Accounting Principle [Line Items]      
Number of reporting units | reporting_unit 1    
Product warranty term 12 months    
Total cost of revenue $ 354,379,000 $ 327,102,000 $ 301,765,000
Contract with customer, liability, noncurrent $ 212,000 1,344,000  
Number of reportable segments | segment 1    
Number of operating segments | segment 1    
Software Development      
New Accounting Pronouncements or Change in Accounting Principle [Line Items]      
Development costs $ 1,800,000 0 0
Employee Stock | ESPP      
New Accounting Pronouncements or Change in Accounting Principle [Line Items]      
Maximum percentage of compensation contributed by employees (as a percentage) 15.00%    
ESPP purchase price of common stock, percent of market price 85.00%    
Offering period (in years) 6 months    
Stock Options      
New Accounting Pronouncements or Change in Accounting Principle [Line Items]      
Vesting period 4 years    
Shipping and Handling      
New Accounting Pronouncements or Change in Accounting Principle [Line Items]      
Total cost of revenue $ 3,400,000 2,900,000 2,700,000
Deferred Commission      
New Accounting Pronouncements or Change in Accounting Principle [Line Items]      
Contract with customer, liability, noncurrent 0 0  
Advertising      
New Accounting Pronouncements or Change in Accounting Principle [Line Items]      
Total cost of revenue $ 27,100,000 $ 9,600,000 $ 12,700,000
Minimum      
New Accounting Pronouncements or Change in Accounting Principle [Line Items]      
Subscription contracts term 30 days    
Minimum | RSUs      
New Accounting Pronouncements or Change in Accounting Principle [Line Items]      
Vesting period 3 years    
Maximum      
New Accounting Pronouncements or Change in Accounting Principle [Line Items]      
Subscription contracts term 12 months    
Maximum | RSUs      
New Accounting Pronouncements or Change in Accounting Principle [Line Items]      
Vesting period 4 years    
Customer One | Customer Concentration Risk | Accounts Receivable      
New Accounting Pronouncements or Change in Accounting Principle [Line Items]      
Concentration risk (as a percentage) 28.40% 35.30%  
Customer One | Customer Concentration Risk | Revenue      
New Accounting Pronouncements or Change in Accounting Principle [Line Items]      
Concentration risk (as a percentage) 40.10% 30.80% 20.60%
Customer Two | Customer Concentration Risk | Accounts Receivable      
New Accounting Pronouncements or Change in Accounting Principle [Line Items]      
Concentration risk (as a percentage) 26.80% 20.10%  
Customer Two | Customer Concentration Risk | Revenue      
New Accounting Pronouncements or Change in Accounting Principle [Line Items]      
Concentration risk (as a percentage)   13.00% 17.30%
Customer Three | Customer Concentration Risk | Accounts Receivable      
New Accounting Pronouncements or Change in Accounting Principle [Line Items]      
Concentration risk (as a percentage) 16.60% 10.10%  
Customer Three | Customer Concentration Risk | Revenue      
New Accounting Pronouncements or Change in Accounting Principle [Line Items]      
Concentration risk (as a percentage)     14.60%
Customer Four | Customer Concentration Risk | Accounts Receivable      
New Accounting Pronouncements or Change in Accounting Principle [Line Items]      
Concentration risk (as a percentage) 13.30%    
Customer Four | Customer Concentration Risk | Revenue      
New Accounting Pronouncements or Change in Accounting Principle [Line Items]      
Concentration risk (as a percentage)     12.20%