In millions, except per share items | Dec-31-22 | Jun-30-22 | Mar-31-22 | Dec-31-21 | Sep-30-21 | Jun-30-21 | Mar-31-21 | Dec-31-20 |
| 8-K | 10-Q | 10-Q | 10-K | 10-Q | 10-Q | 10-Q | 10-K |
Revenue: | | | | | | | | |
Total revenue | 77.6 | 68.0 | 62.7 | 70.7 | 65.4 | 59.2 | 54.8 | 62.7 |
Total revenue growth | 9.9% | 14.9% | 14.3% | 12.8% | 15.5% | 12.7% | 2.0% | 3.9% |
Cost of revenue: | | | | | | | | |
Total cost of revenue | 15.7 | 13.5 | 12.8 | 14.2 | 13.2 | 13.6 | 12.5 | 13.5 |
Gross profit | 61.9 | 54.5 | 49.8 | 56.5 | 52.2 | 45.5 | 42.3 | 49.2 |
Gross margin | 79.7% | 80.2% | 79.5% | 79.9% | 79.8% | 77.0% | 77.2% | 78.5% |
|
Operating expenses: | | | | | | | | |
Sales and marketing | 22.4 | 21.8 | 22.8 | 25.5 | 21.4 | 19.7 | 19.1 | 20.1 |
Research and development | 16.9 | 14.2 | 12.9 | 13.0 | 13.6 | 13.5 | 14.0 | 15.6 |
General and administrative | 6.4 | 5.3 | 6.2 | 6.2 | 6.9 | 5.1 | 5.2 | 5.7 |
Total operating expenses | 45.6 | 41.3 | 41.8 | 44.6 | 41.9 | 38.3 | 38.3 | 41.4 |
Income from operations | 16.3 | 13.1 | 8.0 | 11.8 | 10.3 | 7.2 | 4.0 | 7.8 |
Operating margin | 21.0% | 19.3% | 12.8% | 16.8% | 15.8% | 12.2% | 7.3% | 12.4% |
|
Non-operating income (expense): | | | | | | | | |
Interest income | 0.6 | 0.2 | -0.5 | | | 0.1 | -1.2 | |
Interest and other income (expense), net | 0.2 | 0.7 | -0.5 | 3.6 | -0.2 | -0.2 | -1.2 | 2.1 |
Total non-operating income (expense), net | 0.1 | 0.5 | -0.5 | -0.3 | -0.2 | -0.3 | -1.2 | 0.5 |
Income before income taxes | | | | | | | | |
Provision for (benefit from) income taxes | -1.7 | 3.2 | 1.1 | -127.4 | 64.8 | 0.5 | 0.2 | 2.2 |
Net income | 18.0 | 10.4 | 6.3 | 10.7 | 74.9 | 6.6 | 2.7 | 7.8 |
|
Net income (loss) per share - basic (in dollars per share) | $0.25 | $0.14 | $0.08 | $0.14 | $0.97 | $0.09 | $0.03 | $0.10 |
Net income (loss) per share - diluted (in dollars per share) | $0.24 | $0.13 | $0.08 | $0.14 | $0.94 | $0.08 | $0.03 | $0.10 |
|
Net income per share: | | | | | | | | |
Weighted-average shares used in computing net income per share: | | | | | | | | |
Weighted Average Number of Shares Outstanding, Basic | 73.6 | 75.9 | 76.8 | 77.0 | 77.1 | 76.8 | 76.7 | 77.8 |
Weighted Average Number of Shares Outstanding, Diluted | 75.4 | 78.3 | 79.3 | 80.0 | 79.9 | 79.3 | 79.6 | 80.0 |