Cover
Cover - shares | 3 Months Ended | |
Mar. 31, 2024 | Apr. 18, 2024 | |
Cover [Abstract] | ||
Document Type | 10-Q | |
Document Quarterly Report | true | |
Document Period End Date | Mar. 31, 2024 | |
Document Transition Report | false | |
Entity File Number | 001-34702 | |
Entity Registrant Name | SPS COMMERCE, INC. | |
Entity Incorporation, State or Country Code | DE | |
Entity Tax Identification Number | 41-2015127 | |
Entity Address, Address Line One | 333 South Seventh Street | |
Entity Address, Address Line Two | Suite 1000 | |
Entity Address, City or Town | Minneapolis | |
Entity Address, State or Province | MN | |
Entity Address, Postal Zip Code | 55402 | |
City Area Code | 612 | |
Local Phone Number | 435-9400 | |
Title of 12(b) Security | Common Stock, par value $0.001 per share | |
Trading Symbol | SPSC | |
Security Exchange Name | NASDAQ | |
Entity Current Reporting Status | Yes | |
Entity Interactive Data Current | Yes | |
Entity Filer Category | Large Accelerated Filer | |
Entity Small Business | false | |
Entity Emerging Growth Company | false | |
Entity Shell Company | false | |
Entity Common Stock, Shares Outstanding | 37,032,475 | |
Entity Central Index Key | 0001092699 | |
Current Fiscal Year End Date | --12-31 | |
Document Fiscal Year Focus | 2024 | |
Document Fiscal Period Focus | Q1 | |
Amendment Flag | false |
Condensed Consolidated Balance
Condensed Consolidated Balance Sheets - USD ($) $ in Thousands | Mar. 31, 2024 | Dec. 31, 2023 |
Current assets | ||
Cash and cash equivalents | $ 234,637 | $ 219,081 |
Short-term investments | 56,174 | 56,359 |
Accounts receivable | 55,724 | 50,160 |
Allowance for credit losses | (3,589) | (3,320) |
Accounts receivable, net | 52,135 | 46,840 |
Deferred costs | 63,647 | 62,403 |
Other assets | 13,695 | 16,758 |
Total current assets | 420,288 | 401,441 |
Property and equipment, net | 34,971 | 36,043 |
Operating lease right-of-use assets | 7,285 | 7,862 |
Goodwill | 248,813 | 249,176 |
Intangible assets, net | 99,289 | 107,344 |
Other assets | ||
Deferred costs, non-current | 20,601 | 20,347 |
Deferred income tax assets | 7,483 | 505 |
Other assets, non-current | 1,117 | 1,126 |
Total assets | 839,847 | 823,844 |
Current liabilities | ||
Accounts payable | 12,303 | 7,420 |
Accrued compensation | 32,990 | 41,588 |
Accrued expenses | 10,744 | 8,014 |
Deferred revenue | 73,701 | 69,187 |
Operating lease liabilities | 4,478 | 4,460 |
Total current liabilities | 134,216 | 130,669 |
Other liabilities | ||
Deferred revenue, non-current | 6,473 | 6,930 |
Operating lease liabilities, non-current | 8,425 | 9,569 |
Deferred income tax liabilities | 7,536 | 8,972 |
Other liabilities, non-current | 232 | 229 |
Total liabilities | 156,882 | 156,369 |
Commitments and contingencies | ||
Stockholders' equity | ||
Preferred stock, $0.001 par value; 5,000,000 shares authorized; 0 shares issued and outstanding | 0 | 0 |
Common stock, $0.001 par value; $110,000,000 shares authorized; $39,309,579 and $38,971,146 shares issued; and $37,049,001 and $36,820,048 shares outstanding, respectively | 39 | 39 |
Treasury stock, at cost; $2,260,578 and $2,151,098 shares, respectively | (148,892) | (128,892) |
Additional paid-in capital | 557,998 | 537,061 |
Retained earnings | 277,048 | 259,045 |
Accumulated other comprehensive gain (loss) | (3,228) | 222 |
Total stockholders’ equity | 682,965 | 667,475 |
Total liabilities and stockholders’ equity | $ 839,847 | $ 823,844 |
Condensed Consolidated Balanc_2
Condensed Consolidated Balance Sheets (Parenthetical) - $ / shares | Mar. 31, 2024 | Dec. 31, 2023 |
Statement of Financial Position [Abstract] | ||
Preferred stock, par value (in dollars per share) | $ 0.001 | $ 0.001 |
Preferred stock, shares authorized (in shares) | 5,000,000 | 5,000,000 |
Preferred stock, shares issued (in shares) | 0 | 0 |
Preferred stock, shares outstanding (in shares) | 0 | 0 |
Common stock, par value (in dollars per share) | $ 0.001 | $ 0.001 |
Common stock, shares authorized (in shares) | 110,000,000 | 110,000,000 |
Common stock, shares issued (in shares) | 39,309,579 | 38,971,146 |
Common stock, shares outstanding (in shares) | 37,049,001 | 36,820,048 |
Treasury stock, shares (in shares) | 2,260,578 | 2,151,098 |
Condensed Consolidated Statemen
Condensed Consolidated Statements of Comprehensive Income - USD ($) shares in Thousands, $ in Thousands | 3 Months Ended | |
Mar. 31, 2024 | Mar. 31, 2023 | |
Income Statement [Abstract] | ||
Revenues | $ 149,576 | $ 125,868 |
Cost of revenues | 51,487 | 42,964 |
Gross profit | 98,089 | 82,904 |
Operating expenses | ||
Sales and marketing | 36,432 | 29,083 |
Research and development | 16,009 | 12,563 |
General and administrative | 25,907 | 20,677 |
Amortization of intangible assets | 4,338 | 3,851 |
Total operating expenses | 82,686 | 66,174 |
Income from operations | 15,403 | 16,730 |
Other income, net | 3,132 | 1,276 |
Income before income taxes | 18,535 | 18,006 |
Income tax expense | 532 | 2,717 |
Net income | 18,003 | 15,289 |
Other comprehensive income (expense) | ||
Foreign currency translation adjustments | (3,317) | (95) |
Unrealized gain on investments, net of tax of $171 and $133, respectively | 513 | 399 |
Reclassification of gain on investments into earnings, net of tax of $(215) and $(125), respectively | (646) | (376) |
Total other comprehensive income (expense) | (3,450) | (72) |
Comprehensive income | $ 14,553 | $ 15,217 |
Net income per share | ||
Basic (in dollars per share) | $ 0.49 | $ 0.42 |
Diluted (in dollars per share) | $ 0.48 | $ 0.41 |
Weighted average common shares used to compute net income per share | ||
Basic (in shares) | 37,049 | 36,427 |
Diluted (in shares) | 37,686 | 37,155 |
Condensed Consolidated Statem_2
Condensed Consolidated Statements of Comprehensive Income (Parenthetical) - USD ($) $ in Thousands | 3 Months Ended | |
Mar. 31, 2024 | Mar. 31, 2023 | |
Income Statement [Abstract] | ||
Unrealized gain (loss) on investments, tax | $ 171 | $ 133 |
Reclassification of gain on investments into earnings, net of tax | $ (215) | $ (125) |
Condensed Consolidated Statem_3
Condensed Consolidated Statements of Stockholders' Equity - USD ($) $ in Thousands | Total | Common Stock | Treasury Stock | Additional Paid-in Capital | Retained Earnings | Accumulated Other Comprehensive Gain (Loss) |
Beginning balance (in shares) at Dec. 31, 2022 | 36,158,046 | |||||
Beginning balance at Dec. 31, 2022 | $ 537,073 | $ 38 | $ (128,892) | $ 476,117 | $ 193,221 | $ (3,411) |
Beginning balance (in shares) at Dec. 31, 2022 | 2,151,098 | |||||
Increase (Decrease) in Stockholders' Equity [Roll Forward] | ||||||
Stock-based compensation | 11,175 | 11,175 | ||||
Shares issued pursuant to stock awards (in shares) | 372,161 | |||||
Shares issued pursuant to stock awards | 2,184 | $ 1 | 2,183 | |||
Employee stock purchase plan activity (in shares) | 2,549 | |||||
Employee stock purchase plan activity | $ 241 | 241 | ||||
Repurchases of common stock, net of costs (in shares) | 0 | |||||
Repurchases of common stock, net of costs | $ 0 | |||||
Net income | 15,289 | 15,289 | ||||
Foreign currency translation adjustments | (95) | (95) | ||||
Unrealized gain on investments, net of tax | 399 | 399 | ||||
Reclassification of gain on investments into earnings, net of tax | (376) | (376) | ||||
Ending balance (in shares) at Mar. 31, 2023 | 36,532,756 | |||||
Ending balance at Mar. 31, 2023 | $ 565,890 | $ 39 | $ (128,892) | 489,716 | 208,510 | (3,483) |
Ending balance (in shares) at Mar. 31, 2023 | 2,151,098 | |||||
Beginning balance (in shares) at Dec. 31, 2023 | 36,820,048 | 36,820,048 | ||||
Beginning balance at Dec. 31, 2023 | $ 667,475 | $ 39 | $ (128,892) | 537,061 | 259,045 | 222 |
Beginning balance (in shares) at Dec. 31, 2023 | 2,151,098 | 2,151,098 | ||||
Increase (Decrease) in Stockholders' Equity [Roll Forward] | ||||||
Stock-based compensation | $ 19,285 | 19,285 | ||||
Shares issued pursuant to stock awards (in shares) | 336,035 | |||||
Shares issued pursuant to stock awards | 1,261 | 1,261 | ||||
Employee stock purchase plan activity (in shares) | 2,398 | |||||
Employee stock purchase plan activity | $ 391 | 391 | ||||
Repurchases of common stock, net of costs (in shares) | (109,480) | (109,480) | (109,480) | |||
Repurchases of common stock, net of costs | $ (20,000) | $ (20,000) | ||||
Net income | 18,003 | 18,003 | ||||
Foreign currency translation adjustments | (3,317) | (3,317) | ||||
Unrealized gain on investments, net of tax | 513 | 513 | ||||
Reclassification of gain on investments into earnings, net of tax | $ (646) | (646) | ||||
Ending balance (in shares) at Mar. 31, 2024 | 37,049,001 | 37,049,001 | ||||
Ending balance at Mar. 31, 2024 | $ 682,965 | $ 39 | $ (148,892) | $ 557,998 | $ 277,048 | $ (3,228) |
Ending balance (in shares) at Mar. 31, 2024 | 2,260,578 | 2,260,578 |
Condensed Consolidated Statem_4
Condensed Consolidated Statements of Cash Flows - USD ($) $ in Thousands | 3 Months Ended | |
Mar. 31, 2024 | Mar. 31, 2023 | |
Cash flows from operating activities | ||
Net income | $ 18,003 | $ 15,289 |
Reconciliation of net income to net cash provided by operating activities | ||
Deferred income taxes | (7,070) | (5,147) |
Depreciation and amortization of property and equipment | 4,694 | 4,626 |
Amortization of intangible assets | 4,338 | 3,851 |
Provision for credit losses | 1,408 | 1,206 |
Stock-based compensation | 20,018 | 11,780 |
Other, net | (431) | 502 |
Changes in assets and liabilities | ||
Accounts receivable | (6,759) | (6,220) |
Deferred costs | (1,651) | (1,679) |
Other assets and liabilities | 3,030 | 602 |
Accounts payable | 5,098 | (4,849) |
Accrued compensation | (9,518) | (4,417) |
Accrued expenses | (674) | 721 |
Deferred revenue | 4,129 | 5,818 |
Operating leases | (551) | (452) |
Net cash provided by operating activities | 34,064 | 21,631 |
Cash flows from investing activities | ||
Purchases of property and equipment | (3,533) | (5,261) |
Purchases of investments | (44,412) | (34,329) |
Maturities of investments | 45,000 | 35,000 |
Net cash used in investing activities | (2,945) | (4,590) |
Cash flows from financing activities | ||
Repurchases of common stock | (16,540) | 0 |
Net proceeds from exercise of options to purchase common stock | 1,260 | 2,184 |
Net proceeds from employee stock purchase plan activity | 391 | 241 |
Net cash provided by (used in) financing activities | (14,889) | 2,425 |
Effect of foreign currency exchange rate changes | (674) | (55) |
Net increase in cash and cash equivalents | 15,556 | 19,411 |
Cash and cash equivalents at beginning of period | 219,081 | 162,893 |
Cash and cash equivalents at end of period | $ 234,637 | $ 182,304 |
General
General | 3 Months Ended |
Mar. 31, 2024 | |
Organization, Consolidation and Presentation of Financial Statements [Abstract] | |
General | General Business Description SPS Commerce is a leading provider of cloud-based supply chain management services across our global retail network. Our products make it easier for retailers, grocers, distributors, suppliers, and logistics firms to communicate and collaborate by simplifying how they manage and share item, inventory, order and sales data across omnichannel retail channels. We deliver our products using a full-service model, which includes industry-leading technology and a team of experts that optimize, update, and operate the technology on customers' behalf. Our products enable customers to increase supply chain performance, optimize inventory levels and sell-through, reduce operational costs, improve order visibility, and satisfy consumer demands for a seamless omnichannel experience. Basis of Presentation The accompanying unaudited condensed consolidated financial statements have been prepared in conformity with accounting principles generally accepted in the United States of America (“GAAP”) and include the accounts of SPS Commerce, Inc. and its subsidiaries. All intercompany accounts and transactions have been eliminated in the condensed consolidated financial statements. This interim financial information has been prepared under the instructions to Form 10-Q and Rule 10-01 of Regulation S-X. Accordingly, these condensed consolidated financial statements do not include all of the information and notes required by GAAP. Therefore, these condensed consolidated financial statements should be read in conjunction with the consolidated financial statements and notes included in our Annual Report on Form 10-K for the year ended December 31, 2023, as filed with the Securities and Exchange Commission (“SEC”). We have included all normal recurring adjustments considered necessary to provide a fair presentation of our financial position, results of operations, stockholders’ equity, and cash flows for the interim periods presented. Operating results for these interim periods are not necessarily indicative of the results to be expected for the full year. Use of Estimates Preparing financial statements in conformity with GAAP requires management to make estimates, judgments, and assumptions that affect the reported amounts of assets and liabilities, disclosure of contingent assets and liabilities at the date of the financial statements, and the reported amounts of revenues and expenses during the reporting periods. Actual results could differ from those estimates. Significant Accounting Policies There were no material changes in our significant accounting policies during the three months ended March 31, 2024 . See Note A to the consolidated financial statements included in our Annual Report on Form 10-K for the year ended December 31, 2023 , as filed with the SEC, for additional information regarding our significant accounting policies. Accounting Pronouncements Recently Issued and Adopted Standard Date of Issuance Description Date of Adoption Effect on the Financial Statements ASU 2023-07 , Segment Reporting (Topic 280) - Improvements to Reportable Segment Disclosures November 2023 This amendment requires that an entity disclose significant segment expenses impacting profit and loss that are regularly provided to the chief operating decision maker. 2024 The adoption will result in additional disclosure in our Annual Report on Form 10-K for the year ended December 31, 2024. ASU 2023-09 , Income Taxes (Topic 740) - Improvements to Income Tax Disclosures December 2023 This amendment requires that an entity disclose specific categories in the effective tax rate reconciliation table as well as provide disclosure of disaggregated information related to income tax expense, income before income taxes, and income taxes paid. 2025 We are currently evaluating the adoption on our financial statements and anticipate the impact will result in additional disclosure. |
Business Acquisitions
Business Acquisitions | 3 Months Ended |
Mar. 31, 2024 | |
Business Combination and Asset Acquisition [Abstract] | |
Business Acquisitions | Business Acquisitions TIE Kinetix Effective September 13, 2023, we acquired all of the outstanding equity ownership interests of TIE Kinetix Holding B.V. ("TIE Kinetix"), a leading provider of supply chain digitalization including EDI and e-invoicing in Europe and the United States ("U.S."). Pursuant to the definitive agreement, the purchase price was €63.9 million ($68.7 million at the September 13, 2023 exchange rate), net of cash acquired. The purchase accounting for the acquisition has not been finalized as of March 31, 2024; provisional amounts are primarily related to tax components. We expect to finalize the allocation of the purchase price within the one-year measurement period following the acquisition. Purchase Price Allocation We accounted for the acquisition as a business combination. We allocated the purchase price to the tangible and identifiable intangible assets acquired and liabilities assumed based on their estimated fair values as of the acquisition date. The following table summarizes the estimated fair values of the assets acquired and liabilities assumed at the acquisition date: (in thousands) Acquisition Date Estimated Fair Value as of Adjustment Acquisition Date Estimated Fair Value as of Cash paid $ 73,558 $ — $ 73,558 Estimated fair value of assets and liabilities acquired: Cash $ 4,859 $ — $ 4,859 Accounts receivable 1,347 (36) 1,311 Other assets 2,981 736 3,717 Intangible assets Subscriber relationships 18,183 6,769 24,952 Developed technology 12,122 (2,773) 9,349 Current liabilities (3,606) (232) (3,838) Deferred revenue (6,421) — (6,421) Deferred income tax liabilities, net (6,112) (704) (6,816) Total fair value of assets and liabilities acquired $ 23,353 $ 3,760 $ 27,113 Goodwill $ 50,205 $ (3,760) $ 46,445 The following table summarizes the estimated useful lives for each acquired intangible asset: Estimated Useful Life Subscriber relationships 8.0 years Developed technology 7.0 years Other Acquisition Activity On April 10, 2024, the Company entered into an Asset Purchase Agreement (the "Agreement") to acquire Vision33's SAP Business One SPS Integration Technology. Pursuant to the Agreement, the purchase price, denominated in Canadian dollars ("CAD"), was $5.8 million CAD ($4.3 million U.S. dollars ["USD"] at the Agreement date exchange rate), of which $4.5 million CAD ($3.3 million USD) was paid in cash at close, with the remainder payable in cash within two years, subject to certain closing conditions. Given the timing of the acquisition, the Company is currently in the process of determining the impact on its financial statements. |
Revenue
Revenue | 3 Months Ended |
Mar. 31, 2024 | |
Revenue from Contract with Customer [Abstract] | |
Revenue | Revenue We derive our revenues from the following revenue streams: Three Months Ended (in thousands) 2024 2023 Recurring revenues: Fulfillment $ 121,853 $ 101,668 Analytics 14,014 12,370 Other 3,817 3,263 Recurring revenues 139,684 117,301 One-time revenues 9,892 8,567 Total revenue $ 149,576 $ 125,868 Revenues are the amount that reflects the consideration we are contractually and legally entitled to, as well as the amount we expect to collect, in exchange for those services. Revenue by Geographic Area Domestic revenue, which we define as revenue that was attributable to customers based within the U.S., was as follows: Three Months Ended 2024 2023 Domestic revenue 83 % 84 % No single jurisdiction outside of the U.S. had revenues in excess of 10%. Recurring Revenues Recurring revenues consist of recurring subscriptions from customers that utilize our Fulfillment, Analytics, and Other supply chain management products. Revenue for these products is generally recognized on a ratable basis over the contract term beginning on the date that our service is made available to the customer. Our contracts with our recurring revenue customers are recurring in nature, generally ranging from monthly to annual, and generally allow the customer to cancel the contract for any reason with 30 to 90 days’ notice. Timing of billings varies by customer and by contract type and generally are either in advance or within 30 days of the service being performed. Given that the recurring revenue contracts are for one year or less, we have applied the optional exemption to not disclose information about the remaining performance obligations for recurring revenue contracts. One-time Revenues One-time revenues consist of set-up fees and miscellaneous fees from customers. Set-up revenues Set-up fees are specific for each connection a customer has with a trading partner. These nonrefundable fees are necessary for our customers to utilize our services and do not provide any standalone value. Many of our customers have connections with numerous trading partners. Set-up fees constitute a material renewal option right that provide customers a significant future incentive that would not be otherwise available to that customer unless they entered into the contract, as the set-up fees will not be incurred again upon contract renewal. As such, set-up fees and related costs are deferred and recognized ratably generally over two years which is the estimated period for which a material right is present for our customers. The table below presents the activity of the portion of the deferred revenue liability relating to set-up fees: Three Months Ended (in thousands) 2024 2023 Balance, beginning of period $ 17,603 $ 14,999 Invoiced set-up fees 4,167 4,251 Recognized set-up fees (4,352) (3,963) Balance, end of period $ 17,418 $ 15,287 Miscellaneous one-time revenues Miscellaneous one-time fees consist of professional services and testing and certification. The contract period for these one-time fees is for one year or less and recognized at the time service is provided. We have applied the optional exemption to not disclose information about the remaining performance obligations for miscellaneous one-time fee contracts since they have original durations of one year or less. |
Deferred Costs
Deferred Costs | 3 Months Ended |
Mar. 31, 2024 | |
Deferred Costs [Abstract] | |
Deferred Costs | Deferred Costs The deferred costs activity was as follows: Three Months Ended (in thousands) 2024 2023 Balance, beginning of period $ 82,750 $ 70,179 Incurred deferred costs 21,930 18,234 Amortized deferred costs (20,432) (16,604) Balance, end of period $ 84,248 $ 71,809 |
Fair Value Measurements
Fair Value Measurements | 3 Months Ended |
Mar. 31, 2024 | |
Fair Value Disclosures [Abstract] | |
Fair Value Measurements | Fair Value Measurements Cash equivalents and investments, as measured at fair value on a recurring basis, consisted of the following: March 31, 2024 December 31, 2023 Fair Value Level Amortized Cost Unrealized Gains (Losses), net Fair Value Amortized Cost Unrealized Gains (Losses), net Fair Value (in thousands) Cash equivalents: Money market funds Level 1 $ 169,948 $ — $ 169,948 $ 161,233 $ — $ 161,233 Investments: Certificates of deposit Level 1 6,523 — 6,523 6,805 — 6,805 Marketable securities: Commercial paper Level 2 49,133 518 49,651 48,860 694 49,554 $ 225,604 $ 518 $ 226,122 $ 216,898 $ 694 $ 217,592 |
Allowance for Credit Losses
Allowance for Credit Losses | 3 Months Ended |
Mar. 31, 2024 | |
Allowance for Credit Loss [Abstract] | |
Allowance for Credit Losses | Allowance for Credit Losses The allowance for credit losses activity, included in accounts receivable, net, was as follows: Three Months Ended (in thousands) 2024 2023 Balance, beginning of period $ 3,320 $ 3,066 Provision for credit losses 1,408 1,206 Write-offs, net of recoveries (1,139) (1,055) Balance, end of period $ 3,589 $ 3,217 |
Property and Equipment, Net
Property and Equipment, Net | 3 Months Ended |
Mar. 31, 2024 | |
Property, Plant and Equipment [Abstract] | |
Property and Equipment, Net | Property and Equipment, Net Property and equipment, net consisted of the following: (in thousands) March 31, December 31, 2023 Internally developed software $ 63,495 $ 60,396 Computer equipment 34,510 34,402 Leasehold improvements 15,368 15,387 Office equipment and furniture 10,952 10,966 Property and equipment, cost 124,325 121,151 Less: accumulated depreciation and amortization (89,354) (85,108) Total property and equipment, net $ 34,971 $ 36,043 Property and equipment, net located at subsidiary and office locations outside of the U.S. was as follows: March 31, December 31, 2023 International property and equipment 16 % 15 % |
Goodwill and Intangible Assets,
Goodwill and Intangible Assets, Net | 3 Months Ended |
Mar. 31, 2024 | |
Goodwill and Intangible Assets Disclosure [Abstract] | |
Goodwill and Intangible Assets, Net | Goodwill and Intangible Assets, Net Goodwill The activity in goodwill was as follows: Three Months Ended (in thousands) 2024 Balance, beginning of period $ 249,176 Foreign currency translation (2,062) Remeasurement from provisional purchase accounting amount 1,699 Balance, end of period $ 248,813 Intangible Assets Intangible assets, net consisted of the following: March 31, 2024 ($ in thousands) Gross Accumulated Foreign Net Weighted Average Remaining Amortization Period Subscriber relationships $ 102,042 $ (35,000) $ (585) $ 66,457 6.3 years Developed technology 50,439 (17,360) (247) 32,832 5.1 years $ 152,481 $ (52,360) $ (832) $ 99,289 5.9 years December 31, 2023 ($ in thousands) Gross Accumulated Foreign Net Weighted Average Remaining Amortization Period Subscriber relationships $ 105,228 $ (32,097) $ 724 $ 73,855 6.6 years Developed technology 48,843 (15,669) 315 33,489 5.0 years $ 154,071 $ (47,766) $ 1,039 $ 107,344 6.1 years The estimated future annual amortization expense related to intangible assets is as follows: (in thousands) Remainder of 2024 $ 14,475 2025 17,930 2026 16,926 2027 16,452 2028 15,189 Thereafter 18,317 Total future amortization $ 99,289 |
Commitments and Contingencies
Commitments and Contingencies | 3 Months Ended |
Mar. 31, 2024 | |
Commitments and Contingencies Disclosure [Abstract] | |
Commitments and Contingencies | Commitments and Contingencies Leases The components of lease expense were as follows: Three Months Ended (in thousands) 2024 2023 Operating lease cost $ 814 $ 798 Variable lease cost 954 928 $ 1,768 $ 1,726 Supplemental cash flow information related to leases was as follows: Three Months Ended (in thousands) 2024 2023 Cash paid for amounts included in the measurement of lease liabilities Operating cash flows from operating leases $ 1,203 $ 1,247 Supplemental balance sheet information related to operating leases was as follows: March 31, December 31, 2023 Weighted-average remaining lease term 2.9 years 3.1 years Weighted-average discount rate 4.0 % 4.0 % At March 31, 2024, our future minimum payments under operating leases were as follows: (in thousands) Remainder of 2024 $ 3,943 2025 4,414 2026 3,946 2027 1,298 Thereafter 124 Total future gross payments $ 13,725 Less: imputed interest (822) Total operating lease liabilities $ 12,903 Purchase Commitments We have entered into separate noncancelable agreements with computing infrastructure, productivity software, customer relationship management, and performance and security data analytics vendors for services through 2026. At March 31, 2024, our remaining purchase commitments and estimated purchase timing were as follows: (in thousands) Remainder of 2024 $ 11,783 2025 14,187 2026 5,775 Total estimated future purchases $ 31,745 |
Stockholders' Equity
Stockholders' Equity | 3 Months Ended |
Mar. 31, 2024 | |
Equity [Abstract] | |
Stockholders' Equity | Stockholders’ Equity Share Repurchase Program Our board of directors has authorized a program to repurchase our common stock. Details of the program and activity thereunder through March 31, 2024 were as follows: (in thousands) Effective Date Expiration Date Share Value Authorized for Repurchase Share Value Repurchased Unused & Expired Share Repurchase Value Share Value Available for Future Repurchase 2022 Program August 2022 July 2024 $ 50,000 $ 22,990 N/A $ 27,010 Share repurchases are accounted for as the trade date occurs and are reflected in the condensed consolidated financial statements net of the costs incurred to acquire the shares. Share repurchases that have not yet settled in cash are included in accrued expenses in the condensed consolidated balance sheet. The share repurchase activity by period was as follows: Three Months Ended (in thousands, except shares and per share amounts) 2024 2023 Number of shares repurchased 109,480 — Total share repurchased cost $ 20,000 $ — Average total cost per repurchased share $ 182.68 $ — |
Stock-Based Compensation
Stock-Based Compensation | 3 Months Ended |
Mar. 31, 2024 | |
Share-Based Payment Arrangement [Abstract] | |
Stock-Based Compensation | Stock-Based Compensation Our equity compensation plans provide for the grant of incentive and nonqualified stock options, as well as other stock-based awards including performance share units (“PSUs”), restricted stock awards (“RSAs”), restricted stock units (“RSUs”), and deferred stock units (“DSUs”), to employees, non-employee directors and other consultants who provide services to us. We also provide an employee stock purchase plan (“ESPP”) and 401(k) match to eligible participants. We recognize stock-based compensation expense based on grant date award fair value. This cost is recognized over the period for which the employee is required to provide service in exchange for the award or the award performance period, except for expenses relating to retirement-eligible employees. If retirement-eligible employees have not given their required notice, expense is recognized on a pro-rata basis over the notice period prior to retirement; if they have given their notice, expense is recognized over the notice period; if they have given their notice and completed the notice period, expense is recognized upon grant. At March 31, 2024, there were 12.3 million shares available for grant under approved equity compensation plans. Stock-based compensation expense was allocated in the condensed consolidated statements of comprehensive income as follows: Three Months Ended (in thousands) 2024 2023 Cost of revenues $ 4,082 $ 2,503 Operating expenses Sales and marketing 4,444 2,423 Research and development 3,242 1,777 General and administrative 8,250 5,077 $ 20,018 $ 11,780 Stock-based compensation expense by grant type or plan was as follows: Three Months Ended (in thousands) 2024 2023 Stock options $ 497 $ 490 PSUs 2,445 3,926 RSUs & DSUs 15,491 6,062 RSAs 126 108 ESPP 721 589 401(k) stock match 738 605 $ 20,018 $ 11,780 As of March 31, 2024, there was $83.7 million of unrecognized stock-based compensation expense under our equity compensation plans, which is expected to be recognized on a primarily straight-line basis over a weighted average period of 2.8 years. Stock Options Our stock option activity was as follows: Three Months Ended Options (#) Weighted Average Outstanding, beginning of period 346,822 $ 80.02 Granted 26,717 196.67 Exercised (25,947) 48.59 Forfeited (131) 91.53 Outstanding, end of period 347,461 $ 91.34 Of the total outstanding options at March 31, 2024, 0.3 million were exercisable. The outstanding and exercisable options had a weighted average exercise price of $72.75 per share and a weighted average remaining contractual life of 3.1 years. The weighted average grant date fair value of options granted during the three months ended March 31, 2024 was $67.30 per share. This was estimated on the date of grant using the Black-Scholes option pricing model with the following weighted-average assumptions: Life (in years) 3.9 Volatility 36.4 % Dividend yield — Risk-free interest rate 4.3 % Performance Share Units, Restricted Stock Units and Awards, and Deferred Stock Units In each of the quarters ended March 31, 2024, 2023, 2022, and 2021 we granted PSU awards with a target performance level. These awards are earned based upon our Company’s total shareholder return as compared to an indexed total shareholder return over the course of a fiscal based three-year performance period, starting in the year of grant. Earned awards vest in the quarter following the conclusion of the performance period. In the three months ended March 31, 2024, PSU awards granted in 2021 vested at the maximum performance level and 0.1 million shares of common stock were issued. Activity for our PSUs, RSUs, RSAs, and DSUs in aggregate was as follows: Three Months Ended # Weighted Average Grant Outstanding, beginning of period 773,414 $ 147.50 Granted 319,848 179.12 Vested and common stock issued (310,823) 117.46 Forfeited (549) 151.07 Outstanding, end of period 781,890 $ 172.37 The number of PSUs, RSUs, RSAs, and DSUs outstanding at March 31, 2024 included less than 0.1 million units that have vested, but the shares of common stock have not yet been issued, pursuant to the terms of the underlying agreements. Employee Stock Purchase Plan Our ESPP activity was as follows: Three Months Ended (in thousands, except shares) 2024 2023 Amounts for shares purchased $ 391 $ 241 Shares purchased 2,398 2,549 A total of 1.7 million shares of common stock are reserved for issuance under the plan at March 31, 2024. The fair value was estimated based on the market price of our common stock at the beginning of the offering period using the following assumptions: Life (in years) 0.5 Volatility 29.6 % Dividend yield — Risk-free interest rate 5.5 % |
Income Taxes
Income Taxes | 3 Months Ended |
Mar. 31, 2024 | |
Income Tax Disclosure [Abstract] | |
Income Taxes | Income Taxes We record our interim provision for income taxes by applying our estimated annual effective tax rate to our year-to-date pre-tax income and adjust the provision for discrete tax items recorded in the period. Our provisions for income taxes includes current federal, state, and foreign income tax expense, as well as deferred tax expense. |
Other Income and Expense
Other Income and Expense | 3 Months Ended |
Mar. 31, 2024 | |
Other Income and Expenses [Abstract] | |
Other Income and Expense | Other Income and Expense Other income, net included the following: Three Months Ended (in thousands) 2024 2023 Investment income $ 2,879 $ 1,127 Realized gain from foreign currency on cash and investments held 304 137 Other income (expense), net (51) 12 Total other income, net $ 3,132 $ 1,276 |
Net Income Per Share
Net Income Per Share | 3 Months Ended |
Mar. 31, 2024 | |
Earnings Per Share [Abstract] | |
Net Income Per Share | Net Income Per Share The components and computation of basic and diluted net income per share were as follows: Three Months Ended (in thousands, except per share amounts) 2024 2023 Numerator Net income $ 18,003 $ 15,289 Denominator Weighted average common shares outstanding, basic 37,049 36,427 Options to purchase common stock and ESPP 177 307 PSUs, RSUs, RSAs, and DSUs 460 421 Weighted average common shares outstanding, diluted 37,686 37,155 Net income per share Basic $ 0.49 $ 0.42 Diluted $ 0.48 $ 0.41 The number of outstanding potential common shares that were excluded from the calculation of diluted net income per share as they were anti-dilutive was as follows: Three Months Ended (in thousands) 2024 2023 Anti-dilutive shares 145 108 |
Pay vs Performance Disclosure
Pay vs Performance Disclosure - USD ($) $ in Thousands | 3 Months Ended | |
Mar. 31, 2024 | Mar. 31, 2023 | |
Pay vs Performance Disclosure | ||
Net income | $ 18,003 | $ 15,289 |
Insider Trading Arrangements
Insider Trading Arrangements | 3 Months Ended |
Mar. 31, 2024 shares | |
Trading Arrangements, by Individual | |
Non-Rule 10b5-1 Arrangement Adopted | false |
Rule 10b5-1 Arrangement Terminated | false |
Non-Rule 10b5-1 Arrangement Terminated | false |
Philip Soran [Member] | |
Trading Arrangements, by Individual | |
Material Terms of Trading Arrangement | During the three months ended March 31, 2024, the following directors and officers (as defined in Rule 16a-1(f) of the Exchange Act) adopted written plans for the sale of our securities that are intended to satisfy the affirmative defense of Rule 10b5-1(c) of the Exchange Act: Name Title Adoption Date Earliest Sale Date Expiration or Termination Date Aggregate Number of Shares of the Company's Common Stock to be Sold (1) Philip Soran Director March 14, 2024 June 13, 2024 May 28, 2025 6,570 (1) |
Name | Philip Soran |
Title | Director |
Rule 10b5-1 Arrangement Adopted | true |
Adoption Date | March 14, 2024 |
Arrangement Duration | 440 days |
Aggregate Available | 6,570 |
General (Policies)
General (Policies) | 3 Months Ended |
Mar. 31, 2024 | |
Organization, Consolidation and Presentation of Financial Statements [Abstract] | |
Business Description | Business Description SPS Commerce is a leading provider of cloud-based supply chain management services across our global retail network. Our products make it easier for retailers, grocers, distributors, suppliers, and logistics firms to communicate and collaborate by simplifying how they manage and share item, inventory, order and sales data across omnichannel retail channels. We deliver our products using a full-service model, which includes industry-leading technology and a team of experts that optimize, update, and operate the technology on customers' behalf. Our products enable customers to increase supply chain performance, optimize inventory levels and sell-through, reduce operational costs, improve order visibility, and satisfy consumer demands for a seamless omnichannel experience. |
Basis of Presentation | Basis of Presentation The accompanying unaudited condensed consolidated financial statements have been prepared in conformity with accounting principles generally accepted in the United States of America (“GAAP”) and include the accounts of SPS Commerce, Inc. and its subsidiaries. All intercompany accounts and transactions have been eliminated in the condensed consolidated financial statements. This interim financial information has been prepared under the instructions to Form 10-Q and Rule 10-01 of Regulation S-X. Accordingly, these condensed consolidated financial statements do not include all of the information and notes required by GAAP. Therefore, these condensed consolidated financial statements should be read in conjunction with the consolidated financial statements and notes included in our Annual Report on Form 10-K for the year ended December 31, 2023, as filed with the Securities and Exchange Commission (“SEC”). We have included all normal recurring adjustments considered necessary to provide a fair presentation of our financial position, results of operations, stockholders’ equity, and cash flows for the interim periods presented. Operating results for these interim periods are not necessarily indicative of the results to be expected for the full year. |
Use of Estimates | Use of Estimates Preparing financial statements in conformity with GAAP requires management to make estimates, judgments, and assumptions that affect the reported amounts of assets and liabilities, disclosure of contingent assets and liabilities at the date of the financial statements, and the reported amounts of revenues and expenses during the reporting periods. Actual results could differ from those estimates. |
Significant Accounting Policies | Significant Accounting Policies There were no material changes in our significant accounting policies during the three months ended March 31, 2024 . See Note A to the consolidated financial statements included in our Annual Report on Form 10-K for the year ended December 31, 2023 , as filed with the SEC, for additional information regarding our significant accounting policies. Accounting Pronouncements Recently Issued and Adopted Standard Date of Issuance Description Date of Adoption Effect on the Financial Statements ASU 2023-07 , Segment Reporting (Topic 280) - Improvements to Reportable Segment Disclosures November 2023 This amendment requires that an entity disclose significant segment expenses impacting profit and loss that are regularly provided to the chief operating decision maker. 2024 The adoption will result in additional disclosure in our Annual Report on Form 10-K for the year ended December 31, 2024. ASU 2023-09 , Income Taxes (Topic 740) - Improvements to Income Tax Disclosures December 2023 This amendment requires that an entity disclose specific categories in the effective tax rate reconciliation table as well as provide disclosure of disaggregated information related to income tax expense, income before income taxes, and income taxes paid. 2025 We are currently evaluating the adoption on our financial statements and anticipate the impact will result in additional disclosure. |
General (Tables)
General (Tables) | 3 Months Ended |
Mar. 31, 2024 | |
Organization, Consolidation and Presentation of Financial Statements [Abstract] | |
Summary of Accounting Pronouncements Recently Adopted | Accounting Pronouncements Recently Issued and Adopted Standard Date of Issuance Description Date of Adoption Effect on the Financial Statements ASU 2023-07 , Segment Reporting (Topic 280) - Improvements to Reportable Segment Disclosures November 2023 This amendment requires that an entity disclose significant segment expenses impacting profit and loss that are regularly provided to the chief operating decision maker. 2024 The adoption will result in additional disclosure in our Annual Report on Form 10-K for the year ended December 31, 2024. ASU 2023-09 , Income Taxes (Topic 740) - Improvements to Income Tax Disclosures December 2023 This amendment requires that an entity disclose specific categories in the effective tax rate reconciliation table as well as provide disclosure of disaggregated information related to income tax expense, income before income taxes, and income taxes paid. 2025 We are currently evaluating the adoption on our financial statements and anticipate the impact will result in additional disclosure. |
Business Acquisitions (Tables)
Business Acquisitions (Tables) | 3 Months Ended |
Mar. 31, 2024 | |
Business Combination and Asset Acquisition [Abstract] | |
Summary of Estimated Fair Values of Assets Acquired and Liabilities Assumed at Acquisition Date | The following table summarizes the estimated fair values of the assets acquired and liabilities assumed at the acquisition date: (in thousands) Acquisition Date Estimated Fair Value as of Adjustment Acquisition Date Estimated Fair Value as of Cash paid $ 73,558 $ — $ 73,558 Estimated fair value of assets and liabilities acquired: Cash $ 4,859 $ — $ 4,859 Accounts receivable 1,347 (36) 1,311 Other assets 2,981 736 3,717 Intangible assets Subscriber relationships 18,183 6,769 24,952 Developed technology 12,122 (2,773) 9,349 Current liabilities (3,606) (232) (3,838) Deferred revenue (6,421) — (6,421) Deferred income tax liabilities, net (6,112) (704) (6,816) Total fair value of assets and liabilities acquired $ 23,353 $ 3,760 $ 27,113 Goodwill $ 50,205 $ (3,760) $ 46,445 |
Summary of Estimated Useful Lives for each acquired Intangible Asset | The following table summarizes the estimated useful lives for each acquired intangible asset: Estimated Useful Life Subscriber relationships 8.0 years Developed technology 7.0 years |
Revenue (Tables)
Revenue (Tables) | 3 Months Ended |
Mar. 31, 2024 | |
Revenue from Contract with Customer [Abstract] | |
Summary of Revenues by Revenue Stream | We derive our revenues from the following revenue streams: Three Months Ended (in thousands) 2024 2023 Recurring revenues: Fulfillment $ 121,853 $ 101,668 Analytics 14,014 12,370 Other 3,817 3,263 Recurring revenues 139,684 117,301 One-time revenues 9,892 8,567 Total revenue $ 149,576 $ 125,868 |
Summary of Percentage of Domestic Revenue | Domestic revenue, which we define as revenue that was attributable to customers based within the U.S., was as follows: Three Months Ended 2024 2023 Domestic revenue 83 % 84 % |
Summary of Deferred Revenue Liability Relating to Set-Up Fees | The table below presents the activity of the portion of the deferred revenue liability relating to set-up fees: Three Months Ended (in thousands) 2024 2023 Balance, beginning of period $ 17,603 $ 14,999 Invoiced set-up fees 4,167 4,251 Recognized set-up fees (4,352) (3,963) Balance, end of period $ 17,418 $ 15,287 |
Deferred Costs (Tables)
Deferred Costs (Tables) | 3 Months Ended |
Mar. 31, 2024 | |
Deferred Costs [Abstract] | |
Summary of Deferred Costs Activity | The deferred costs activity was as follows: Three Months Ended (in thousands) 2024 2023 Balance, beginning of period $ 82,750 $ 70,179 Incurred deferred costs 21,930 18,234 Amortized deferred costs (20,432) (16,604) Balance, end of period $ 84,248 $ 71,809 |
Fair Value Measurements (Tables
Fair Value Measurements (Tables) | 3 Months Ended |
Mar. 31, 2024 | |
Fair Value Disclosures [Abstract] | |
Summary of Cash Equivalents and Investments | Cash equivalents and investments, as measured at fair value on a recurring basis, consisted of the following: March 31, 2024 December 31, 2023 Fair Value Level Amortized Cost Unrealized Gains (Losses), net Fair Value Amortized Cost Unrealized Gains (Losses), net Fair Value (in thousands) Cash equivalents: Money market funds Level 1 $ 169,948 $ — $ 169,948 $ 161,233 $ — $ 161,233 Investments: Certificates of deposit Level 1 6,523 — 6,523 6,805 — 6,805 Marketable securities: Commercial paper Level 2 49,133 518 49,651 48,860 694 49,554 $ 225,604 $ 518 $ 226,122 $ 216,898 $ 694 $ 217,592 |
Allowance for Credit Losses (Ta
Allowance for Credit Losses (Tables) | 3 Months Ended |
Mar. 31, 2024 | |
Allowance for Credit Loss [Abstract] | |
Summary of Allowance for Credit Losses Activity Included in Accounts Receivable Net | The allowance for credit losses activity, included in accounts receivable, net, was as follows: Three Months Ended (in thousands) 2024 2023 Balance, beginning of period $ 3,320 $ 3,066 Provision for credit losses 1,408 1,206 Write-offs, net of recoveries (1,139) (1,055) Balance, end of period $ 3,589 $ 3,217 |
Property and Equipment, Net (Ta
Property and Equipment, Net (Tables) | 3 Months Ended |
Mar. 31, 2024 | |
Property, Plant and Equipment [Abstract] | |
Summary of Property and Equipment, Net | Property and equipment, net consisted of the following: (in thousands) March 31, December 31, 2023 Internally developed software $ 63,495 $ 60,396 Computer equipment 34,510 34,402 Leasehold improvements 15,368 15,387 Office equipment and furniture 10,952 10,966 Property and equipment, cost 124,325 121,151 Less: accumulated depreciation and amortization (89,354) (85,108) Total property and equipment, net $ 34,971 $ 36,043 |
Summary of Percentage of Property and Equipment Net Located at Subsidiary and Office Locations Outside of Unites States | Property and equipment, net located at subsidiary and office locations outside of the U.S. was as follows: March 31, December 31, 2023 International property and equipment 16 % 15 % |
Goodwill and Intangible Asset_2
Goodwill and Intangible Assets, Net (Tables) | 3 Months Ended |
Mar. 31, 2024 | |
Goodwill and Intangible Assets Disclosure [Abstract] | |
Summary of Activity in Goodwill | The activity in goodwill was as follows: Three Months Ended (in thousands) 2024 Balance, beginning of period $ 249,176 Foreign currency translation (2,062) Remeasurement from provisional purchase accounting amount 1,699 Balance, end of period $ 248,813 |
Summary of Intangible Assets, Net | Intangible assets, net consisted of the following: March 31, 2024 ($ in thousands) Gross Accumulated Foreign Net Weighted Average Remaining Amortization Period Subscriber relationships $ 102,042 $ (35,000) $ (585) $ 66,457 6.3 years Developed technology 50,439 (17,360) (247) 32,832 5.1 years $ 152,481 $ (52,360) $ (832) $ 99,289 5.9 years December 31, 2023 ($ in thousands) Gross Accumulated Foreign Net Weighted Average Remaining Amortization Period Subscriber relationships $ 105,228 $ (32,097) $ 724 $ 73,855 6.6 years Developed technology 48,843 (15,669) 315 33,489 5.0 years $ 154,071 $ (47,766) $ 1,039 $ 107,344 6.1 years |
Summary of Estimated Annual Amortization Expense Related to Intangible Assets | The estimated future annual amortization expense related to intangible assets is as follows: (in thousands) Remainder of 2024 $ 14,475 2025 17,930 2026 16,926 2027 16,452 2028 15,189 Thereafter 18,317 Total future amortization $ 99,289 |
Commitments and Contingencies (
Commitments and Contingencies (Tables) | 3 Months Ended |
Mar. 31, 2024 | |
Commitments and Contingencies Disclosure [Abstract] | |
Summary of Components of Lease Expense | The components of lease expense were as follows: Three Months Ended (in thousands) 2024 2023 Operating lease cost $ 814 $ 798 Variable lease cost 954 928 $ 1,768 $ 1,726 |
Summary of Supplemental Cash Flow Information Related to Leases | Supplemental cash flow information related to leases was as follows: Three Months Ended (in thousands) 2024 2023 Cash paid for amounts included in the measurement of lease liabilities Operating cash flows from operating leases $ 1,203 $ 1,247 |
Summary of Supplemental Balance Sheet Information Related to Leases | Supplemental balance sheet information related to operating leases was as follows: March 31, December 31, 2023 Weighted-average remaining lease term 2.9 years 3.1 years Weighted-average discount rate 4.0 % 4.0 % |
Summary of Future Minimum Payments Under Operating Leases | At March 31, 2024, our future minimum payments under operating leases were as follows: (in thousands) Remainder of 2024 $ 3,943 2025 4,414 2026 3,946 2027 1,298 Thereafter 124 Total future gross payments $ 13,725 Less: imputed interest (822) Total operating lease liabilities $ 12,903 |
Summary of Remaining Purchase Commitments and Estimated Purchase Timing | At March 31, 2024, our remaining purchase commitments and estimated purchase timing were as follows: (in thousands) Remainder of 2024 $ 11,783 2025 14,187 2026 5,775 Total estimated future purchases $ 31,745 |
Stockholders' Equity (Tables)
Stockholders' Equity (Tables) | 3 Months Ended |
Mar. 31, 2024 | |
Equity [Abstract] | |
Summary of Share Repurchase Programs | Details of the program and activity thereunder through March 31, 2024 were as follows: (in thousands) Effective Date Expiration Date Share Value Authorized for Repurchase Share Value Repurchased Unused & Expired Share Repurchase Value Share Value Available for Future Repurchase 2022 Program August 2022 July 2024 $ 50,000 $ 22,990 N/A $ 27,010 The share repurchase activity by period was as follows: Three Months Ended (in thousands, except shares and per share amounts) 2024 2023 Number of shares repurchased 109,480 — Total share repurchased cost $ 20,000 $ — Average total cost per repurchased share $ 182.68 $ — |
Stock-Based Compensation (Table
Stock-Based Compensation (Tables) | 3 Months Ended |
Mar. 31, 2024 | |
Share-Based Payment Arrangement [Abstract] | |
Summary of Stock-Based Compensation Expense | Stock-based compensation expense was allocated in the condensed consolidated statements of comprehensive income as follows: Three Months Ended (in thousands) 2024 2023 Cost of revenues $ 4,082 $ 2,503 Operating expenses Sales and marketing 4,444 2,423 Research and development 3,242 1,777 General and administrative 8,250 5,077 $ 20,018 $ 11,780 Stock-based compensation expense by grant type or plan was as follows: Three Months Ended (in thousands) 2024 2023 Stock options $ 497 $ 490 PSUs 2,445 3,926 RSUs & DSUs 15,491 6,062 RSAs 126 108 ESPP 721 589 401(k) stock match 738 605 $ 20,018 $ 11,780 |
Summary of Stock Option Activity | Our stock option activity was as follows: Three Months Ended Options (#) Weighted Average Outstanding, beginning of period 346,822 $ 80.02 Granted 26,717 196.67 Exercised (25,947) 48.59 Forfeited (131) 91.53 Outstanding, end of period 347,461 $ 91.34 |
Summary of Weighted Average Fair Value Per Share of Options Granted, Assumptions | This was estimated on the date of grant using the Black-Scholes option pricing model with the following weighted-average assumptions: Life (in years) 3.9 Volatility 36.4 % Dividend yield — Risk-free interest rate 4.3 % |
Summary of PSU, RSU, RSA, and DSU | Activity for our PSUs, RSUs, RSAs, and DSUs in aggregate was as follows: Three Months Ended # Weighted Average Grant Outstanding, beginning of period 773,414 $ 147.50 Granted 319,848 179.12 Vested and common stock issued (310,823) 117.46 Forfeited (549) 151.07 Outstanding, end of period 781,890 $ 172.37 |
Summary of ESPP Activity | Our ESPP activity was as follows: Three Months Ended (in thousands, except shares) 2024 2023 Amounts for shares purchased $ 391 $ 241 Shares purchased 2,398 2,549 |
Summary of Fair Value Estimation of Common Stock, Assumptions | The fair value was estimated based on the market price of our common stock at the beginning of the offering period using the following assumptions: Life (in years) 0.5 Volatility 29.6 % Dividend yield — Risk-free interest rate 5.5 % |
Other Income and Expense (Table
Other Income and Expense (Tables) | 3 Months Ended |
Mar. 31, 2024 | |
Other Income and Expenses [Abstract] | |
Summary of Other Income, Net | Other income, net included the following: Three Months Ended (in thousands) 2024 2023 Investment income $ 2,879 $ 1,127 Realized gain from foreign currency on cash and investments held 304 137 Other income (expense), net (51) 12 Total other income, net $ 3,132 $ 1,276 |
Net Income Per Share (Tables)
Net Income Per Share (Tables) | 3 Months Ended |
Mar. 31, 2024 | |
Earnings Per Share [Abstract] | |
Summary of Components and Computation of Basic and Diluted Net Income Per Share | The components and computation of basic and diluted net income per share were as follows: Three Months Ended (in thousands, except per share amounts) 2024 2023 Numerator Net income $ 18,003 $ 15,289 Denominator Weighted average common shares outstanding, basic 37,049 36,427 Options to purchase common stock and ESPP 177 307 PSUs, RSUs, RSAs, and DSUs 460 421 Weighted average common shares outstanding, diluted 37,686 37,155 Net income per share Basic $ 0.49 $ 0.42 Diluted $ 0.48 $ 0.41 |
Summary of Anti-dilutive Common Shares Excluded from Calculation of Diluted Net Income Per Share | The number of outstanding potential common shares that were excluded from the calculation of diluted net income per share as they were anti-dilutive was as follows: Three Months Ended (in thousands) 2024 2023 Anti-dilutive shares 145 108 |
Business Acquisitions - Narrati
Business Acquisitions - Narrative (Details) € in Millions, $ in Millions, $ in Millions | Apr. 10, 2024 USD ($) | Apr. 10, 2024 CAD ($) | Sep. 13, 2023 EUR (€) | Sep. 13, 2023 USD ($) |
Subsequent Event | Vision33's SAP Business One SPS Integration Technology | ||||
Business Acquisition [Line Items] | ||||
Total purchase price | $ 4.3 | $ 5.8 | ||
Cash paid for acquisition | $ 3.3 | $ 4.5 | ||
Asset acquisition, remainder payable term | 2 years | 2 years | ||
TIE Kinetix | ||||
Business Acquisition [Line Items] | ||||
Purchase price | € 63.9 | $ 68.7 |
Business Acquisitions - Summary
Business Acquisitions - Summary of Estimated Fair Values of Assets Acquired and Liabilities Assumed at Acquisition Date (Details) - USD ($) $ in Thousands | 3 Months Ended | 6 Months Ended | |||
Mar. 31, 2024 | Sep. 30, 2023 | Mar. 31, 2024 | Mar. 31, 2024 | Dec. 31, 2023 | |
Estimated fair value of assets and liabilities acquired: | |||||
Goodwill | $ 248,813 | $ 248,813 | $ 248,813 | $ 249,176 | |
Adjustment, goodwill | 1,699 | ||||
TIE Kinetix | |||||
Business Acquisition [Line Items] | |||||
Cash paid | 73,558 | $ 73,558 | |||
Estimated fair value of assets and liabilities acquired: | |||||
Cash | 4,859 | 4,859 | 4,859 | 4,859 | |
Accounts receivable | 1,311 | 1,347 | 1,311 | 1,311 | |
Adjustment, accounts receivable | (36) | ||||
Other assets | 3,717 | 2,981 | 3,717 | 3,717 | |
Adjustment, other assets | 736 | ||||
Current liabilities | (3,838) | (3,606) | (3,838) | (3,838) | |
Adjustment, current liabilities | (232) | ||||
Deferred revenue | (6,421) | (6,421) | (6,421) | (6,421) | |
Deferred income tax liabilities, net | (6,816) | (6,112) | (6,816) | (6,816) | |
Adjustment, deferred income tax liabilities | (704) | ||||
Total fair value of assets and liabilities acquired | 27,113 | 23,353 | 27,113 | 27,113 | |
Adjustment, Total fair value of assets and liabilities acquired | 3,760 | ||||
Goodwill | 46,445 | 50,205 | 46,445 | 46,445 | |
Adjustment, goodwill | (3,760) | ||||
TIE Kinetix | Subscriber relationships | |||||
Estimated fair value of assets and liabilities acquired: | |||||
Intangible assets | 24,952 | 18,183 | 24,952 | 24,952 | |
Adjustment, intangible assets | 6,769 | ||||
TIE Kinetix | Developed technology | |||||
Estimated fair value of assets and liabilities acquired: | |||||
Intangible assets | $ 9,349 | $ 12,122 | $ 9,349 | 9,349 | |
Adjustment, intangible assets | $ (2,773) |
Business Acquisitions - Summa_2
Business Acquisitions - Summary of Estimated Useful Lives for each acquired Intangible Asset (Details) - TIE Kinetix | Mar. 31, 2024 |
Subscriber relationships | |
Business Acquisition [Line Items] | |
Intangible assets useful life | 8 years |
Developed technology | |
Business Acquisition [Line Items] | |
Intangible assets useful life | 7 years |
Revenue - Summary of Revenues b
Revenue - Summary of Revenues by Revenue Stream (Details) - USD ($) $ in Thousands | 3 Months Ended | |
Mar. 31, 2024 | Mar. 31, 2023 | |
Revenue Recognition [Line Items] | ||
Total revenue | $ 149,576 | $ 125,868 |
Recurring revenues | ||
Revenue Recognition [Line Items] | ||
Total revenue | 139,684 | 117,301 |
One-time revenues | ||
Revenue Recognition [Line Items] | ||
Total revenue | 9,892 | 8,567 |
Fulfillment | Recurring revenues | ||
Revenue Recognition [Line Items] | ||
Total revenue | 121,853 | 101,668 |
Analytics | Recurring revenues | ||
Revenue Recognition [Line Items] | ||
Total revenue | 14,014 | 12,370 |
Other | Recurring revenues | ||
Revenue Recognition [Line Items] | ||
Total revenue | $ 3,817 | $ 3,263 |
Revenue - Summary of Percentage
Revenue - Summary of Percentage of Domestic Revenue (Details) | 3 Months Ended | |
Mar. 31, 2024 | Mar. 31, 2023 | |
Revenue Benchmark | Geographic Concentration Risk | Domestic revenue | ||
Disaggregation Of Revenue [Line Items] | ||
Concentration risk, percentage | 83% | 84% |
Revenue - Narrative (Details)
Revenue - Narrative (Details) | 3 Months Ended |
Mar. 31, 2024 | |
Disaggregation Of Revenue [Line Items] | |
Latest timing of billings | 30 days |
Contract term maximum | 1 year |
Set up fees recognized period | 2 years |
Maximum recognition period for miscellaneous one-time fee | 1 year |
Minimum | |
Disaggregation Of Revenue [Line Items] | |
Customer contract cancellation period | 30 days |
Maximum | |
Disaggregation Of Revenue [Line Items] | |
Customer contract cancellation period | 90 days |
Revenue - Summary of Deferred R
Revenue - Summary of Deferred Revenue Liability Relating to Set-Up Fees (Details) - Set-Up Fees - USD ($) $ in Thousands | 3 Months Ended | |
Mar. 31, 2024 | Mar. 31, 2023 | |
Deferred Revenue Arrangement [Roll Forward] | ||
Balance, beginning of period | $ 17,603 | $ 14,999 |
Invoiced set-up fees | 4,167 | 4,251 |
Recognized set-up fees | (4,352) | (3,963) |
Balance, end of period | $ 17,418 | $ 15,287 |
Deferred Costs (Details)
Deferred Costs (Details) - USD ($) $ in Thousands | 3 Months Ended | |
Mar. 31, 2024 | Mar. 31, 2023 | |
Deferred Costs [Roll Forward] | ||
Balance, beginning of period | $ 82,750 | $ 70,179 |
Incurred deferred costs | 21,930 | 18,234 |
Amortized deferred costs | (20,432) | (16,604) |
Balance, end of period | $ 84,248 | $ 71,809 |
Fair Value Measurements (Detail
Fair Value Measurements (Details) - USD ($) $ in Thousands | Mar. 31, 2024 | Dec. 31, 2023 |
Schedule of Financial Instruments [Line Items] | ||
Amortized Cost | $ 225,604 | $ 216,898 |
Unrealized Gains (Losses), net | 518 | 694 |
Fair Value | 226,122 | 217,592 |
Certificates of deposit | ||
Schedule of Financial Instruments [Line Items] | ||
Amortized Cost | 6,523 | 6,805 |
Unrealized Gains (Losses), net | 0 | 0 |
Fair Value | 6,523 | 6,805 |
Cash equivalents: | Money market funds | ||
Schedule of Financial Instruments [Line Items] | ||
Amortized Cost | 169,948 | 161,233 |
Unrealized Gains (Losses), net | 0 | 0 |
Fair Value | 169,948 | 161,233 |
Marketable securities: | Commercial paper | ||
Schedule of Financial Instruments [Line Items] | ||
Amortized Cost | 49,133 | 48,860 |
Unrealized Gains (Losses), net | 518 | 694 |
Fair Value | $ 49,651 | $ 49,554 |
Allowance for Credit Losses (De
Allowance for Credit Losses (Details) - USD ($) $ in Thousands | 3 Months Ended | |
Mar. 31, 2024 | Mar. 31, 2023 | |
Accounts Receivable, Allowance for Credit Loss [Roll Forward] | ||
Balance, beginning of period | $ 3,320 | $ 3,066 |
Provision for credit losses | 1,408 | 1,206 |
Write-offs, net of recoveries | (1,139) | (1,055) |
Balance, end of period | $ 3,589 | $ 3,217 |
Property and Equipment, Net - S
Property and Equipment, Net - Summary of Property and Equipment, Net (Details) - USD ($) $ in Thousands | Mar. 31, 2024 | Dec. 31, 2023 |
Property, Plant and Equipment [Line Items] | ||
Property and equipment, cost | $ 124,325 | $ 121,151 |
Less: accumulated depreciation and amortization | (89,354) | (85,108) |
Total property and equipment, net | 34,971 | 36,043 |
Internally developed software | ||
Property, Plant and Equipment [Line Items] | ||
Property and equipment, cost | 63,495 | 60,396 |
Computer equipment | ||
Property, Plant and Equipment [Line Items] | ||
Property and equipment, cost | 34,510 | 34,402 |
Leasehold improvements | ||
Property, Plant and Equipment [Line Items] | ||
Property and equipment, cost | 15,368 | 15,387 |
Office equipment and furniture | ||
Property, Plant and Equipment [Line Items] | ||
Property and equipment, cost | $ 10,952 | $ 10,966 |
Property and Equipment, Net -_2
Property and Equipment, Net - Summary of Percentage of Property and Equipment Net Located at Subsidiary and Office Locations Outside of Unites States (Details) | 3 Months Ended | 12 Months Ended |
Mar. 31, 2024 | Dec. 31, 2023 | |
International property and equipment | Geographic Concentration Risk | International property and equipment | ||
Property, Plant and Equipment [Line Items] | ||
Concentration risk, percentage | 16% | 15% |
Goodwill and Intangible Asset_3
Goodwill and Intangible Assets, Net - Summary of Activity in Goodwill (Details) $ in Thousands | 3 Months Ended |
Mar. 31, 2024 USD ($) | |
Goodwill [Roll Forward] | |
Balance, beginning of period | $ 249,176 |
Foreign currency translation | (2,062) |
Remeasurement from provisional purchase accounting amount | 1,699 |
Balance, end of period | $ 248,813 |
Goodwill and Intangible Asset_4
Goodwill and Intangible Assets, Net - Summary of Intangible Assets, Net (Details) - USD ($) $ in Thousands | Mar. 31, 2024 | Dec. 31, 2023 |
Finite-Lived Intangible Assets [Line Items] | ||
Gross Carrying Amount | $ 152,481 | $ 154,071 |
Accumulated Amortization | (52,360) | (47,766) |
Foreign Currency Translation | (832) | 1,039 |
Total future amortization | $ 99,289 | $ 107,344 |
Weighted Average Remaining Amortization Period | 5 years 10 months 24 days | 6 years 1 month 6 days |
Subscriber relationships | ||
Finite-Lived Intangible Assets [Line Items] | ||
Gross Carrying Amount | $ 102,042 | $ 105,228 |
Accumulated Amortization | (35,000) | (32,097) |
Foreign Currency Translation | (585) | 724 |
Total future amortization | $ 66,457 | $ 73,855 |
Weighted Average Remaining Amortization Period | 6 years 3 months 18 days | 6 years 7 months 6 days |
Developed technology | ||
Finite-Lived Intangible Assets [Line Items] | ||
Gross Carrying Amount | $ 50,439 | $ 48,843 |
Accumulated Amortization | (17,360) | (15,669) |
Foreign Currency Translation | (247) | 315 |
Total future amortization | $ 32,832 | $ 33,489 |
Weighted Average Remaining Amortization Period | 5 years 1 month 6 days | 5 years |
Goodwill and Intangible Asset_5
Goodwill and Intangible Assets, Net - Summary of Estimated Future Annual Amortization Expense Related to Intangible Assets (Details) - USD ($) $ in Thousands | Mar. 31, 2024 | Dec. 31, 2023 |
Goodwill and Intangible Assets Disclosure [Abstract] | ||
Remainder of 2024 | $ 14,475 | |
2025 | 17,930 | |
2026 | 16,926 | |
2027 | 16,452 | |
2028 | 15,189 | |
Thereafter | 18,317 | |
Total future amortization | $ 99,289 | $ 107,344 |
Commitments and Contingencies -
Commitments and Contingencies - Summary of Components of Lease Expense (Details) - USD ($) $ in Thousands | 3 Months Ended | |
Mar. 31, 2024 | Mar. 31, 2023 | |
Commitments and Contingencies Disclosure [Abstract] | ||
Operating lease cost | $ 814 | $ 798 |
Variable lease cost | 954 | 928 |
Total Lease expense | $ 1,768 | $ 1,726 |
Commitments and Contingencies_2
Commitments and Contingencies - Summary of Supplemental Cash Flow Information Related to Leases (Details) - USD ($) $ in Thousands | 3 Months Ended | |
Mar. 31, 2024 | Mar. 31, 2023 | |
Cash paid for amounts included in the measurement of lease liabilities | ||
Operating cash flows from operating leases | $ 1,203 | $ 1,247 |
Commitments and Contingencies_3
Commitments and Contingencies - Summary of Supplemental Balance Sheet Information Related to Leases (Details) | Mar. 31, 2024 | Dec. 31, 2023 |
Commitments and Contingencies Disclosure [Abstract] | ||
Weighted-average remaining lease term | 2 years 10 months 24 days | 3 years 1 month 6 days |
Weighted-average discount rate | 4% | 4% |
Commitments and Contingencies_4
Commitments and Contingencies - Summary of Future Minimum Payments Under Operating Leases (Details) $ in Thousands | Mar. 31, 2024 USD ($) |
Commitments and Contingencies Disclosure [Abstract] | |
Remainder of 2024 | $ 3,943 |
2025 | 4,414 |
2026 | 3,946 |
2027 | 1,298 |
Thereafter | 124 |
Total future gross payments | 13,725 |
Less: imputed interest | (822) |
Total operating lease liabilities | $ 12,903 |
Commitments and Contingencies_5
Commitments and Contingencies - Summary of Remaining Purchase Commitments (Details) $ in Thousands | Mar. 31, 2024 USD ($) |
Commitments and Contingencies Disclosure [Abstract] | |
Remainder of 2024 | $ 11,783 |
2025 | 14,187 |
2026 | 5,775 |
Total estimated future purchases | $ 31,745 |
Stockholders' Equity - Summary
Stockholders' Equity - Summary of Share Repurchase Plan (Details) - USD ($) $ in Thousands | Mar. 31, 2024 | Dec. 31, 2023 |
Schedule Of Stockholders Equity [Line Items] | ||
Share Value Repurchased | $ 148,892 | $ 128,892 |
Common Stock | 2022 Program | ||
Schedule Of Stockholders Equity [Line Items] | ||
Share Value Authorized for Repurchase | 50,000 | |
Share Value Repurchased | 22,990 | |
Share Value Available for Future Repurchase | $ 27,010 |
Stockholders' Equity - Summar_2
Stockholders' Equity - Summary of Stock Repurchase Activity by Period (Details) - USD ($) $ / shares in Units, $ in Thousands | 3 Months Ended | |
Mar. 31, 2024 | Mar. 31, 2023 | |
Equity [Abstract] | ||
Number of shares repurchased (in shares) | 109,480 | 0 |
Total share repurchased cost | $ 20,000 | $ 0 |
Average cost per repurchased share (in dollars per share) | $ 182.68 | $ 0 |
Stock-Based Compensation - Narr
Stock-Based Compensation - Narrative (Details) - USD ($) $ / shares in Units, shares in Millions, $ in Millions | 3 Months Ended | |||
Mar. 31, 2024 | Mar. 31, 2023 | Mar. 31, 2022 | Mar. 31, 2021 | |
Share-based Compensation Arrangement by Share-based Payment Award [Line Items] | ||||
Shares available for grant (in shares) | 12.3 | |||
Unrecognized stock-based compensation expense | $ 83.7 | |||
Unrecognized stock-based compensation, expected to be recognized, weighted average period | 2 years 9 months 18 days | |||
Employee Stock Purchase Plan | ||||
Share-based Compensation Arrangement by Share-based Payment Award [Line Items] | ||||
Common stock reserved for future issuance (in shares) | 1.7 | |||
Stock options | ||||
Share-based Compensation Arrangement by Share-based Payment Award [Line Items] | ||||
Outstanding and exercisable options (in shares) | 0.3 | |||
Weighted average exercise price (in dollars per share) | $ 72.75 | |||
Weighted average remaining contractual life | 3 years 1 month 6 days | |||
Weighted average fair value per share of options granted (in dollars per share) | $ 67.30 | |||
PSUs | ||||
Share-based Compensation Arrangement by Share-based Payment Award [Line Items] | ||||
Vesting period | 3 years | 3 years | 3 years | 3 years |
Shares issued (in shares) | 0.1 | |||
PSUs, RSUs, RSAs and DSUs | Maximum | ||||
Share-based Compensation Arrangement by Share-based Payment Award [Line Items] | ||||
Vested at period end (in shares) | 0.1 |
Stock-Based Compensation - Stoc
Stock-Based Compensation - Stock-Based Compensation Expense (Details) - USD ($) $ in Thousands | 3 Months Ended | |
Mar. 31, 2024 | Mar. 31, 2023 | |
Share-based Compensation Arrangement by Share-based Payment Award, Compensation Cost [Line Items] | ||
Stock-based compensation expense | $ 20,018 | $ 11,780 |
Stock options | ||
Share-based Compensation Arrangement by Share-based Payment Award, Compensation Cost [Line Items] | ||
Stock-based compensation expense | 497 | 490 |
PSUs | ||
Share-based Compensation Arrangement by Share-based Payment Award, Compensation Cost [Line Items] | ||
Stock-based compensation expense | 2,445 | 3,926 |
RSUs & DSUs | ||
Share-based Compensation Arrangement by Share-based Payment Award, Compensation Cost [Line Items] | ||
Stock-based compensation expense | 15,491 | 6,062 |
RSAs | ||
Share-based Compensation Arrangement by Share-based Payment Award, Compensation Cost [Line Items] | ||
Stock-based compensation expense | 126 | 108 |
ESPP | ||
Share-based Compensation Arrangement by Share-based Payment Award, Compensation Cost [Line Items] | ||
Stock-based compensation expense | 721 | 589 |
401(k) stock match | ||
Share-based Compensation Arrangement by Share-based Payment Award, Compensation Cost [Line Items] | ||
Stock-based compensation expense | 738 | 605 |
Cost of revenues | ||
Share-based Compensation Arrangement by Share-based Payment Award, Compensation Cost [Line Items] | ||
Stock-based compensation expense | 4,082 | 2,503 |
Sales and marketing | ||
Share-based Compensation Arrangement by Share-based Payment Award, Compensation Cost [Line Items] | ||
Stock-based compensation expense | 4,444 | 2,423 |
Research and development | ||
Share-based Compensation Arrangement by Share-based Payment Award, Compensation Cost [Line Items] | ||
Stock-based compensation expense | 3,242 | 1,777 |
General and administrative | ||
Share-based Compensation Arrangement by Share-based Payment Award, Compensation Cost [Line Items] | ||
Stock-based compensation expense | $ 8,250 | $ 5,077 |
Stock-Based Compensation - St_2
Stock-Based Compensation - Stock Option Activity (Details) | 3 Months Ended |
Mar. 31, 2024 $ / shares shares | |
# | |
Beginning balance (in shares) | shares | 346,822 |
Granted (in shares) | shares | 26,717 |
Exercised (in shares) | shares | (25,947) |
Forfeited (in shares) | shares | (131) |
Ending balance (in shares) | shares | 347,461 |
Weighted Average Grant Date Fair Value ($/share) | |
Beginning Balance (in dollars per share) | $ / shares | $ 80.02 |
Granted (in dollars per share) | $ / shares | 196.67 |
Exercised (in dollars per share) | $ / shares | 48.59 |
Forfeited (in dollars per share) | $ / shares | 91.53 |
Ending Balance (in dollars per share) | $ / shares | $ 91.34 |
Stock-Based Compensation - Weig
Stock-Based Compensation - Weighted Average Grant Date Fair Value of Options Granted, Assumptions (Details) - Stock options | 3 Months Ended |
Mar. 31, 2024 | |
Share-based Compensation Arrangement by Share-based Payment Award [Line Items] | |
Life (in years) | 3 years 10 months 24 days |
Volatility | 36.40% |
Dividend yield | 0% |
Risk-free interest rate | 4.30% |
Stock-Based Compensation - PSU,
Stock-Based Compensation - PSU, RSU, RSA, and DSU (Details) - PSUs, RSUs, RSAs and DSUs | 3 Months Ended |
Mar. 31, 2024 $ / shares shares | |
Number of Shares | |
Beginning balance (in shares) | shares | 773,414 |
Granted (in shares) | shares | 319,848 |
Vested and common stock issued (in shares) | shares | (310,823) |
Forfeited (in shares) | shares | (549) |
Ending balance (in shares) | shares | 781,890 |
Weighted Average Grant Date Fair Value ($/share) | |
Beginning balance (in dollars per share) | $ / shares | $ 147.50 |
Granted (in dollars per share) | $ / shares | 179.12 |
Vested and common stock issued (in dollars per share) | $ / shares | 117.46 |
Forfeited (in dollars per share) | $ / shares | 151.07 |
Ending balance (in dollars per share) | $ / shares | $ 172.37 |
Stock-Based Compensation - Summ
Stock-Based Compensation - Summary of ESPP Activity (Details) - Employee Stock Purchase Plan - USD ($) $ in Thousands | 3 Months Ended | |
Mar. 31, 2024 | Mar. 31, 2023 | |
Share-based Compensation Arrangement by Share-based Payment Award [Line Items] | ||
Amounts for shares purchased | $ 391 | $ 241 |
Shares purchased (in shares) | 2,398 | 2,549 |
Stock-Based Compensation - Fair
Stock-Based Compensation - Fair Value Estimation of Common Stock, Assumptions (Details) - Employee Stock Purchase Plan | 3 Months Ended |
Mar. 31, 2024 | |
Share-based Compensation Arrangement by Share-based Payment Award [Line Items] | |
Life (in years) | 6 months |
Volatility | 29.60% |
Dividend yield | 0% |
Risk-free interest rate | 5.50% |
Other Income and Expense - Summ
Other Income and Expense - Summary of Other Income, Net (Details) - USD ($) $ in Thousands | 3 Months Ended | |
Mar. 31, 2024 | Mar. 31, 2023 | |
Other Income and Expenses [Abstract] | ||
Investment income | $ 2,879 | $ 1,127 |
Realized gain from foreign currency on cash and investments held | 304 | 137 |
Other income (expense), net | (51) | 12 |
Total other income, net | $ 3,132 | $ 1,276 |
Net Income Per Share - Componen
Net Income Per Share - Components and Computation of Basic and Diluted Net Income Per Share (Details) - USD ($) $ / shares in Units, shares in Thousands, $ in Thousands | 3 Months Ended | |
Mar. 31, 2024 | Mar. 31, 2023 | |
Numerator | ||
Net income | $ 18,003 | $ 15,289 |
Weighted average common shares used to compute net income per share | ||
Weighted average common shares outstanding, basic (in shares) | 37,049 | 36,427 |
Options to purchase common stock and ESPP (in shares) | 177 | 307 |
PSUs, RSUs, RSAs, and DSUs (in shares) | 460 | 421 |
Weighted average common shares outstanding, diluted (in shares) | 37,686 | 37,155 |
Net income per share | ||
Basic (in dollars per share) | $ 0.49 | $ 0.42 |
Diluted (in dollars per share) | $ 0.48 | $ 0.41 |
Net Income Per Share - Summary
Net Income Per Share - Summary of Anti-dilutive Common Shares Excluded from Calculation of Diluted Net Income Per Share (Details) - shares shares in Thousands | 3 Months Ended | |
Mar. 31, 2024 | Mar. 31, 2023 | |
Earnings Per Share [Abstract] | ||
Anti-dilutive shares (in shares) | 145 | 108 |