In millions, except per share items | Dec-31-22 | Dec-31-21 | Dec-31-20 | Dec-31-19 | Dec-31-18 | Dec-31-17 | Dec-31-16 | Dec-31-15 |
| 10-K | 10-K | 10-K | 10-K | 10-K | 10-K | 10-K | 10-K |
Revenue | | | | | | | | |
Revenue | 1,058.1 | 927.7 | 913.2 | 900.4 | 848.6 | 788.5 | 731.6 | 637.9 |
Revenue growth | 14.1% | 1.6% | 1.4% | 6.1% | 7.6% | 7.8% | 14.7% | 13.0% |
Cost of revenue | | | | | | | | |
Cost of revenue | 505.4 | 443.2 | 428.1 | 418.4 | 381.7 | 361.9 | 339.2 | |
Gross profit | 552.7 | 484.5 | 485.2 | 482.0 | 466.9 | 426.6 | 392.4 | 333.3 |
Gross margin | 52.2% | 52.2% | 53.1% | 53.5% | 55.0% | 54.1% | 53.6% | 52.2% |
|
Operating expenses | | | | | | | | |
Sales, marketing and customer success | 221.5 | 186.3 | 209.8 | 224.2 | 192.8 | 169.6 | 150.2 | 123.6 |
Research and development | 156.9 | 124.6 | 100.1 | 106.2 | 98.8 | 89.9 | 89.9 | 84.6 |
General and administrative | 199.9 | 146.3 | 134.9 | 113.4 | 106.4 | 94.9 | 81.3 | 76.1 |
Amortization | 2.9 | 2.2 | 2.9 | 5.3 | 4.8 | 3.3 | 2.8 | 2.2 |
Total operating expenses | 581.2 | 459.6 | 447.9 | 454.9 | 407.4 | 358.4 | 324.2 | 286.6 |
Income (loss) from operations | -28.5 | 24.9 | 37.2 | 27.1 | 59.4 | 68.2 | 68.2 | 46.7 |
Operating margin | -2.7% | 2.7% | 4.1% | 3.0% | 7.0% | 8.6% | 9.3% | 7.3% |
Interest expense | -35.8 | -18.0 | -17.3 | -20.6 | -15.9 | -12.1 | -10.6 | -8.1 |
Other income, net | 8.7 | 0.2 | 1.7 | 4.1 | 1.1 | 2.3 | 0.3 | |
Income tax benefit | -10.2 | 1.4 | 13.9 | -1.3 | -0.2 | -15.3 | 11.9 | 11.3 |
Net income (loss) | -45.4 | 5.7 | 7.7 | 11.9 | 44.8 | 73.6 | 45.4 | 25.6 |
|
Earnings (loss) per share | | | | | | | | |
Basic earnings per share | ($0.88) | $0.12 | $0.16 | $0.25 | $0.95 | $1.58 | $0.98 | $0.56 |
Diluted earnings per share | ($0.88) | $0.12 | $0.16 | $0.25 | $0.93 | $1.54 | $0.96 | $0.55 |
|
Common shares and equivalents outstanding | | | | | | | | |
Basic weighted average shares | 51.6 | 47.4 | 48.2 | 47.7 | 47.2 | 46.7 | 46.1 | 45.6 |
Diluted weighted average shares outstanding | 51.6 | 48.2 | 48.7 | 48.3 | 48.0 | 47.8 | 47.3 | 46.5 |
|
Other comprehensive income (loss) | | | | | | | | |
Foreign currency translation adjustment | -16.2 | 0.7 | 4.6 | 2.6 | -5.2 | -0.8 | 0.2 | 0.1 |
Unrealized gain (loss) on derivative instruments, net of tax | 18.6 | 8.4 | -1.8 | | | | | |
Total other comprehensive income (loss) | 2.4 | 9.0 | 2.8 | -0.2 | -4.6 | 0.0 | 0.2 | 0.2 |
Comprehensive income (loss) | -43.0 | 14.7 | 10.5 | 11.7 | 40.2 | 73.6 | 45.7 | 25.9 |