Every figure below is the company's own, as filed. Nothing is estimated and
nothing is smoothed — a period the filing does not support is left blank rather than
drawn.
Quarters are the company's own, counted from its financial
year ending 12-31.
Amounts in USD.
Revenue Quarterly
0
70M
140M
210M
Q4 '16: 176.6M
Q4 '16: 170.2M
Q1 '17: 163.3M
Q2 '17: 170.4M
Q3 '17: 179.6M
Q4 '17: 187.6M
Q1 '18: 187.6M
Q2 '18: 191.8M
Q3 '18: 182.2M
Q4 '18: 180.8M
Q1 '19: 176.8M
Q2 '19: 200.6M
Q3 '19: 192.2M
Q4 '19: 179M
Q1 '20: 159.5M
Q2 '20: 124.4M
Q3 '20: 147.9M
Q4 '20: 160.8M
Q1 '21: 153.7M
Q2 '21: 177.7M
Q3 '21: 174.6M
Q4 '21: 171.2M
Q1 '22: 161.7M
Q2 '22: 179M
Q3 '22: 178.5M
Q4 '22: 168.2M
Q1 '23: 168M
Q2 '23: 176M
Q3 '23: 179.4M
Q4 '23: 182.1M
Q1 '24: 184.4M
Q2 '24: 189.8M
Q3 '24: 182.7M
Q4 '24: 172.7M
Q1 '25: 161.6M
Q2 '25: 185.4M
Q3 '25: 195.5M
Q4 '25: 181.5M
Q1 '26: 169M
Q2 '26: 193.1M
Q3 '17
Q4 '18
Q1 '20
Q2 '21
Q3 '22
Q4 '23
Q1 '25
Q2 '26
Gross Profit Quarterly
0
25M
50M
75M
Q4 '16: 52.1M
Q4 '16: 48M
Q1 '17: 43.2M
Q2 '17: 46.3M
Q3 '17: 47.9M
Q4 '17: 50.3M
Q1 '18: 48.1M
Q2 '18: 55.1M
Q3 '18: 52.3M
Q4 '18: 52.3M
Q1 '19: 48.9M
Q2 '19: 60.1M
Q3 '19: 57.8M
Q4 '19: 50.6M
Q1 '20: 40.6M
Q2 '20: 41.2M
Q3 '20: 47.4M
Q4 '20: 49.3M
Q1 '21: 40M
Q2 '21: 55.3M
Q3 '21: 52.2M
Q4 '21: 49.6M
Q1 '22: 39.9M
Q2 '22: 53.6M
Q3 '22: 53.8M
Q4 '22: 50.9M
Q1 '23: 46.1M
Q2 '23: 49.7M
Q3 '23: 54.4M
Q4 '23: 53.6M
Q1 '24: 46.2M
Q2 '24: 51.3M
Q3 '24: 48.9M
Q4 '24: 45.8M
Q1 '25: 40.9M
Q2 '25: 53.9M
Q3 '25: 58.2M
Q4 '25: 51.5M
Q1 '26: 44.7M
Q2 '26: 56.4M
Q3 '17
Q4 '18
Q1 '20
Q2 '21
Q3 '22
Q4 '23
Q1 '25
Q2 '26
Operating Income Quarterly
-120M
-80M
-40M
0
40M
80M
120M
Q4 '16: 12.5M
Q4 '16: 2.9M
Q1 '17: 3.2M
Q2 '17: 5M
Q3 '17: -10.4M
Q4 '17: 6.3M
Q1 '18: 6.4M
Q2 '18: 10.3M
Q3 '18: 3M
Q4 '18: 2.5M
Q1 '19: -4.4M
Q2 '19: 15.4M
Q3 '19: 10.8M
Q4 '19: 2.3M
Q1 '20: -111.2M
Q2 '20: -383K
Q3 '20: 5.7M
Q4 '20: 4.7M
Q1 '21: -4.7M
Q2 '21: 11.4M
Q3 '21: 9.2M
Q4 '21: 2.3M
Q1 '22: -4.7M
Q2 '22: 9.6M
Q3 '22: 9.1M
Q4 '22: 5.8M
Q1 '23: -1.8M
Q2 '23: 3.9M
Q3 '23: -4.7M
Q4 '23: 706K
Q1 '24: 5.6M
Q2 '24: 12M
Q3 '24: 11.9M
Q4 '24: 10.5M
Q1 '25: -1M
Q2 '25: 8.4M
Q3 '25: 20.4M
Q4 '25: 12.8M
Q1 '26: 4.7M
Q2 '26: 12.9M
Q3 '17
Q4 '18
Q1 '20
Q2 '21
Q3 '22
Q4 '23
Q1 '25
Q2 '26
Net Income Quarterly
-105M
-70M
-35M
0
35M
70M
105M
Q4 '16: 7.3M
Q4 '16: 963K
Q1 '17: 1.7M
Q2 '17: 2.2M
Q3 '17: -7M
Q4 '17: 884K
Q1 '18: 2.9M
Q2 '18: 6M
Q3 '18: -1M
Q4 '18: -1.1M
Q1 '19: -5.3M
Q2 '19: 7.4M
Q3 '19: 3.1M
Q4 '19: 829K
Q1 '20: -98.5M
Q2 '20: -2.7M
Q3 '20: 1.5M
Q4 '20: 181K
Q1 '21: -5.4M
Q2 '21: 5.9M
Q3 '21: 3.4M
Q4 '21: -94K
Q1 '22: -5.4M
Q2 '22: 4.6M
Q3 '22: 4.4M
Q4 '22: 2.8M
Q1 '23: -5M
Q2 '23: 337K
Q3 '23: -10.3M
Q4 '23: -2.5M
Q1 '24: 995K
Q2 '24: 6.4M
Q3 '24: 6.4M
Q4 '24: 5.2M
Q1 '25: -3.2M
Q2 '25: 3M
Q3 '25: 13.1M
Q4 '25: 3.9M
Q1 '26: 2.4M
Q2 '26: 7.6M
Q3 '17
Q4 '18
Q1 '20
Q2 '21
Q3 '22
Q4 '23
Q1 '25
Q2 '26
Cost of Revenue Quarterly
0
50M
100M
150M
Q3 '14: 119.7M
Q4 '14: 142.9M
Q1 '15: 119.4M
Q3 '15: 123.4M
Q4 '15: 132.7M
Q1 '16: 112.4M
Q1 '18: 133.8M
Q2 '18: 131.1M
Q3 '18: 124.3M
Q4 '18: 122.9M
Q1 '19: 122.4M
Q2 '19: 135.1M
Q3 '19: 129.2M
Q4 '19: 122.8M
Q1 '20: 113.3M
Q2 '20: 78M
Q3 '20: 94.9M
Q4 '20: 105.6M
Q1 '21: 108.2M
Q2 '21: 116.8M
Q3 '21: 116.8M
Q4 '21: 115.2M
Q1 '22: 115.8M
Q2 '22: 120M
Q3 '22: 119.1M
Q4 '22: 111.7M
Q1 '23: 116.1M
Q2 '23: 120.4M
Q3 '23: 118.8M
Q4 '23: 141.9M
Q1 '24: 132.4M
Q2 '24: 132.5M
Q3 '24: 128.1M
Q4 '24: 120.9M
Q1 '25: 115.3M
Q2 '25: 125.7M
Q3 '25: 131.8M
Q4 '25: 124.3M
Q1 '26: 118.8M
Q2 '26: 131M
Q4 '15
Q4 '18
Q1 '20
Q2 '21
Q3 '22
Q4 '23
Q1 '25
Q2 '26
Operating Cash Flow Quarterly
-15M
0
15M
30M
45M
Q3 '16: 14.3M
Q4 '16: 8.6M
Q1 '17: 13.4M
Q2 '17: 9.6M
Q3 '17: 12.3M
Q4 '17: 20.6M
Q1 '18: 5.8M
Q2 '18: 14.3M
Q3 '18: 4.1M
Q4 '18: 17.5M
Q1 '19: 8.2M
Q2 '19: 12.9M
Q3 '19: 19.4M
Q4 '19: 18.6M
Q1 '20: 6.1M
Q2 '20: 28.8M
Q3 '20: 6.9M
Q4 '20: 26M
Q1 '21: 3.1M
Q2 '21: 15M
Q3 '21: 4.3M
Q4 '21: 19.8M
Q1 '22: -5.4M
Q2 '22: 13.2M
Q3 '22: 2.7M
Q4 '22: 15.9M
Q1 '23: 4.4M
Q2 '23: 13.9M
Q3 '23: -7.6M
Q4 '23: 16.1M
Q1 '24: 604K
Q2 '24: 4.5M
Q3 '24: 19.4M
Q4 '24: 25.7M
Q1 '25: 5.6M
Q2 '25: -9.3M
Q3 '25: 4.5M
Q4 '25: 32.1M
Q1 '26: 2.8M
Q2 '26: 14.9M
Q3 '17
Q4 '18
Q1 '20
Q2 '21
Q3 '22
Q4 '23
Q1 '25
Q2 '26
Free Cash Flow Quarterly
-18M
-9M
0
9M
18M
27M
Q3 '16: 9.9M
Q4 '16: 5.5M
Q1 '17: 10M
Q2 '17: 3.2M
Q3 '17: 7.6M
Q4 '17: 15.7M
Q1 '18: 636K
Q2 '18: 8.5M
Q3 '18: -334K
Q4 '18: 12.3M
Q1 '19: 2.5M
Q2 '19: 7M
Q3 '19: 13.7M
Q4 '19: 13.9M
Q1 '20: 1.8M
Q2 '20: 25.6M
Q3 '20: 3.7M
Q4 '20: 21.3M
Q1 '21: -855K
Q2 '21: 8.8M
Q3 '21: -599K
Q4 '21: 16.8M
Q1 '22: -8.5M
Q2 '22: 9.6M
Q3 '22: 364K
Q4 '22: 12.3M
Q1 '23: 101K
Q2 '23: 8.4M
Q3 '23: -12.2M
Q4 '23: 9.6M
Q1 '24: -4.2M
Q2 '24: -284K
Q3 '24: 14.6M
Q4 '24: 22.1M
Q1 '25: 1.1M
Q2 '25: -14.7M
Q3 '25: -4.1M
Q4 '25: 26M
Q1 '26: -3.2M
Q2 '26: 10.1M
Q3 '17
Q4 '18
Q1 '20
Q2 '21
Q3 '22
Q4 '23
Q1 '25
Q2 '26
Operating cash flow minus capital expenditure.
Shares Outstanding Quarterly
0
15M
30M
45M
Q3 '14: 29.6M
Q4 '14: 29.4M
Q1 '15: 29.5M
Q3 '15: 29.6M
Q4 '15: 29.6M
Q1 '16: 29.9M
Q1 '16: 30M
Q2 '16: 30.2M
Q3 '16: 30.2M
Q3 '16: 30.2M
Q4 '16: 30M
Q1 '17: 29.9M
Q2 '17: 29.6M
Q3 '17: 28.3M
Q1 '18: 29.4M
Q2 '18: 29.3M
Q3 '18: 28.4M
Q1 '19: 28.6M
Q2 '19: 28.9M
Q3 '19: 29.2M
Q1 '20: 29M
Q2 '20: 29.1M
Q3 '20: 29.3M
Q1 '21: 29.4M
Q2 '21: 30.1M
Q3 '21: 30.1M
Q1 '22: 29.6M
Q2 '22: 30.2M
Q3 '22: 30.2M
Q1 '23: 30M
Q2 '23: 30.7M
Q3 '23: 30.4M
Q1 '24: 31.4M
Q2 '24: 31.3M
Q3 '24: 31.7M
Q1 '25: 31.1M
Q2 '25: 31.7M
Q3 '25: 31.9M
Q1 '26: 32.7M
Q2 '26: 32.9M
Q4 '15
Q3 '16
Q1 '18
Q3 '19
Q2 '21
Q1 '23
Q3 '24
Q2 '26
Weighted average diluted, as the filer reports it for each period. An average cannot be added across periods, so this one is always shown per period the filer tagged rather than as a trailing year.
EPS TTM
0.00
0.30
0.60
0.90
Q4 '24: 0.59
Q1 '25: 0.46
Q2 '25: 0.36
Q3 '25: 0.57
Q4 '25: 0.53
Q1 '26: 0.70
Q2 '26: 0.83
Q4 '24
Q1 '25
Q2 '25
Q3 '25
Q4 '25
Q1 '26
Q2 '26
The filer's own published earnings a share for each quarter, four quarters added up. The company page divides trailing net income by the share count instead, which lands within about 1% of this and is not the same sum, so the two are named differently rather than presented as one figure.