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
8M
16M
24M
Q3 '16: 15.8M
Q4 '16: 18M
Q1 '17: 14.8M
Q2 '17: 15M
Q3 '17: 13.5M
Q4 '17: 19.9M
Q1 '18: 13.2M
Q2 '18: 17.3M
Q3 '18: 16.8M
Q4 '18: 20.4M
Q1 '19: 15.2M
Q2 '19: 16.4M
Q3 '19: 14.7M
Q4 '19: 20.9M
Q1 '20: 14.5M
Q2 '20: 13.6M
Q3 '20: 15.9M
Q4 '20: 20.2M
Q1 '21: 14.6M
Q2 '21: 17.4M
Q3 '21: 17.1M
Q4 '21: 19.8M
Q1 '22: 18.6M
Q2 '22: 18.1M
Q3 '22: 16.7M
Q4 '22: 20.9M
Q1 '23: 15.2M
Q2 '23: 17.7M
Q3 '23: 18M
Q4 '23: 21.4M
Q1 '24: 15.9M
Q2 '24: 17.2M
Q3 '24: 16.9M
Q4 '24: 22.9M
Q1 '25: 14.5M
Q2 '25: 17M
Q3 '25: 13.3M
Q4 '25: 20.3M
Q1 '26: 18.3M
Q2 '26: 20.5M
Q3 '17
Q4 '18
Q1 '20
Q2 '21
Q3 '22
Q4 '23
Q1 '25
Q2 '26
Gross Profit Quarterly
0
4M
8M
12M
Q3 '16: 7.9M
Q4 '16: 9.9M
Q1 '17: 7.8M
Q2 '17: 7.9M
Q3 '17: 6.5M
Q4 '17: 9.8M
Q1 '18: 6.4M
Q2 '18: 8.6M
Q3 '18: 7.7M
Q4 '18: 8.9M
Q1 '19: 6.2M
Q2 '19: 7.5M
Q3 '19: 4.2M
Q4 '19: 7.5M
Q1 '20: 5.4M
Q2 '20: 4.9M
Q3 '20: 4.5M
Q4 '20: 4.9M
Q1 '21: 5.6M
Q2 '21: 8.3M
Q3 '21: 7.6M
Q4 '21: 8.5M
Q1 '22: 7.1M
Q2 '22: 8.4M
Q3 '22: 7.6M
Q4 '22: 9.8M
Q1 '23: 6.9M
Q2 '23: 8.6M
Q3 '23: 8.4M
Q4 '23: 9.7M
Q1 '24: 7.7M
Q2 '24: 8.8M
Q3 '24: 8.1M
Q4 '24: 10.5M
Q1 '25: 6.6M
Q2 '25: 7.8M
Q3 '25: 6.3M
Q4 '25: 10M
Q1 '26: 7.9M
Q2 '26: 8.6M
Q3 '17
Q4 '18
Q1 '20
Q2 '21
Q3 '22
Q4 '23
Q1 '25
Q2 '26
Operating Income Quarterly
-4.5M
-3M
-1.5M
0
1.5M
3M
4.5M
Q2 '16: 1M
Q3 '16: 1.1M
Q4 '16: 3.5M
Q1 '17: 1.2M
Q2 '17: 1.4M
Q3 '17: -152K
Q4 '17: 3.1M
Q1 '18: -843K
Q2 '18: 1.7M
Q3 '18: 724K
Q4 '18: 1.5M
Q1 '19: -863K
Q2 '19: -1.8M
Q3 '19: -4.2M
Q4 '19: 77K
Q1 '20: -2.1M
Q2 '20: -2.2M
Q3 '20: -1.5M
Q4 '20: -3M
Q1 '21: -866K
Q2 '21: 1.4M
Q3 '21: 613K
Q4 '21: -868K
Q1 '22: 38K
Q2 '22: 440K
Q3 '22: -342K
Q4 '22: 1.8M
Q1 '23: -893K
Q2 '23: 532K
Q3 '23: 396K
Q4 '23: 1.9M
Q1 '24: -1.1M
Q2 '24: -46K
Q3 '24: -301K
Q1 '25: -1.5M
Q2 '25: -443K
Q3 '25: -1.2M
Q4 '25: -589K
Q1 '26: -579K
Q2 '26: 36K
Q2 '17
Q3 '18
Q4 '19
Q1 '21
Q2 '22
Q3 '23
Q1 '25
Q2 '26
Net Income Quarterly
-4M
-2M
0
2M
4M
6M
Q3 '16: 657K
Q4 '16: 1.9M
Q1 '17: 749K
Q2 '17: 898K
Q3 '17: -206K
Q4 '17: 4.7M
Q1 '18: -845K
Q2 '18: 1.2M
Q3 '18: 766K
Q4 '18: 886K
Q1 '19: -858K
Q2 '19: -1.2M
Q3 '19: -3.2M
Q4 '19: -172K
Q1 '20: -1.4M
Q2 '20: -1.6M
Q3 '20: -1.3M
Q4 '20: -2M
Q1 '21: -847K
Q2 '21: 4.7M
Q3 '21: 284K
Q4 '21: -990K
Q1 '22: -157K
Q2 '22: 318K
Q3 '22: -425K
Q4 '22: 1.3M
Q1 '23: -612K
Q2 '23: 546K
Q3 '23: 1.7M
Q4 '23: 1.5M
Q1 '24: -633K
Q2 '24: 128K
Q3 '24: 38K
Q4 '24: 1.3M
Q1 '25: -936K
Q2 '25: -131K
Q3 '25: 943K
Q4 '25: 737K
Q1 '26: -630K
Q2 '26: -346K
Q3 '17
Q4 '18
Q1 '20
Q2 '21
Q3 '22
Q4 '23
Q1 '25
Q2 '26
Cost of Revenue Quarterly
0
6M
12M
18M
Q3 '16: 7.9M
Q4 '16: 8.1M
Q1 '17: 7.1M
Q2 '17: 7.1M
Q3 '17: 7M
Q4 '17: 10.8M
Q1 '18: 6.9M
Q2 '18: 8.7M
Q3 '18: 9.1M
Q4 '18: 12.9M
Q1 '19: 8.9M
Q2 '19: 8.9M
Q3 '19: 10.5M
Q4 '19: 13.7M
Q1 '20: 9M
Q2 '20: 8.7M
Q3 '20: 11.4M
Q4 '20: 15.3M
Q1 '21: 8.9M
Q2 '21: 9.1M
Q3 '21: 9.6M
Q4 '21: 11.3M
Q1 '22: 11.5M
Q2 '22: 9.7M
Q3 '22: 9.1M
Q4 '22: 11.1M
Q1 '23: 8.3M
Q2 '23: 9.1M
Q3 '23: 9.6M
Q4 '23: 11.7M
Q1 '24: 8.2M
Q2 '24: 8.5M
Q3 '24: 8.8M
Q4 '24: 12.4M
Q1 '25: 7.8M
Q2 '25: 9.2M
Q3 '25: 7M
Q4 '25: 10.3M
Q1 '26: 10.4M
Q2 '26: 11.9M
Q3 '17
Q4 '18
Q1 '20
Q2 '21
Q3 '22
Q4 '23
Q1 '25
Q2 '26
Operating Cash Flow Quarterly
-5M
-2.5M
0
2.5M
5M
7.5M
Q1 '16: 1.5M
Q2 '16: 3.9M
Q3 '16: 2.5M
Q4 '16: 2.3M
Q1 '17: -1.8M
Q2 '17: 3.8M
Q3 '17: 2.1M
Q4 '17: 2.4M
Q1 '18: -3.5M
Q2 '18: 4.6M
Q3 '18: 4.5M
Q4 '18: 3M
Q1 '19: -1.5M
Q2 '19: 4.3M
Q3 '19: 179K
Q4 '19: 663K
Q1 '20: 1.7M
Q2 '20: 2.5M
Q3 '20: 4.9M
Q4 '20: 4.4M
Q1 '21: 2.5M
Q2 '21: 7M
Q3 '21: 3.8M
Q4 '21: 5.5M
Q1 '22: 474K
Q2 '22: 5.7M
Q3 '22: 2.8M
Q1 '23: -3.2M
Q2 '23: 5M
Q3 '23: 908K
Q4 '23: 3.3M
Q1 '24: -3.7M
Q2 '24: 4.6M
Q3 '24: 1.5M
Q4 '24: 231K
Q1 '25: 113K
Q2 '25: 540K
Q3 '25: 2.5M
Q1 '26: 2.4M
Q2 '26: 6.3M
Q1 '17
Q2 '18
Q3 '19
Q4 '20
Q1 '22
Q3 '23
Q4 '24
Q2 '26
Free Cash Flow Quarterly
-5M
-2.5M
0
2.5M
5M
7.5M
Q1 '16: -2.3M
Q2 '16: 1.6M
Q3 '16: -445K
Q4 '16: -3.6M
Q1 '17: -4.9M
Q2 '17: 73K
Q3 '17: -3.2M
Q4 '17: 428K
Q1 '18: -4.7M
Q2 '18: 3.2M
Q3 '18: 2.6M
Q4 '18: 1.5M
Q1 '19: -2.7M
Q2 '19: 3.4M
Q3 '19: -1.8M
Q4 '19: -607K
Q1 '20: 1.3M
Q2 '20: 1.5M
Q3 '20: 3.8M
Q4 '20: 3.9M
Q1 '21: 2.3M
Q2 '21: 5.9M
Q3 '21: 2.8M
Q4 '21: 3.3M
Q1 '22: 194K
Q2 '22: 4.3M
Q3 '22: 892K
Q1 '23: -3.7M
Q2 '23: 2M
Q3 '23: -3.1M
Q4 '23: 1.7M
Q1 '24: -4.1M
Q2 '24: 3.1M
Q3 '24: -795K
Q4 '24: -864K
Q1 '25: -74K
Q2 '25: -861K
Q3 '25: 1.1M
Q1 '26: 1.8M
Q2 '26: 5.5M
Q1 '17
Q2 '18
Q3 '19
Q4 '20
Q1 '22
Q3 '23
Q4 '24
Q2 '26
Operating cash flow minus capital expenditure.
Shares Outstanding Quarterly
0
8M
16M
24M
Q2 '20: 23.2M
Q3 '20: 23.2M
Q1 '21: 23.2M
Q2 '21: 22.9M
Q3 '21: 22.5M
Q1 '22: 22.5M
Q2 '22: 22.4M
Q3 '22: 22.3M
Q1 '23: 21.4M
Q2 '23: 21.4M
Q3 '23: 21.3M
Q1 '24: 20.9M
Q2 '24: 20.8M
Q3 '24: 20.8M
Q1 '25: 20.6M
Q2 '25: 20.6M
Q3 '25: 20.6M
Q1 '26: 20.6M
Q2 '26: 20.6M
Q2 '20
Q2 '21
Q2 '22
Q2 '23
Q2 '24
Q2 '25
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.30
-0.20
-0.10
0.00
0.10
0.20
0.30
Q3 '16: 0.14
Q4 '16: 0.14
Q1 '17: 0.16
Q2 '17: 0.18
Q3 '17: 0.14
Q4 '17: 0.26
Q1 '18: 0.19
Q2 '18: 0.20
Q3 '18: 0.24
Q4 '18: 0.08
Q1 '19: 0.08
Q2 '19: -0.02
Q3 '19: -0.19
Q4 '19: -0.22
Q1 '20: -0.24
Q2 '20: -0.26
Q3 '20: -0.18
Q4 '20: -0.28
Q1 '21: -0.26
Q2 '21: 0.02
Q3 '21: 0.09
Q4 '21: 0.14
Q1 '22: 0.17
Q2 '22: -0.03
Q3 '22: -0.06
Q4 '22: 0.04
Q1 '23: 0.02
Q2 '23: 0.04
Q3 '23: 0.14
Q4 '23: 0.15
Q1 '24: 0.15
Q2 '24: 0.13
Q3 '24: 0.05
Q4 '24: 0.04
Q1 '25: 0.02
Q2 '25: -0.00
Q3 '25: 0.05
Q4 '25: 0.03
Q1 '26: 0.05
Q2 '26: 0.04
Q3 '17
Q4 '18
Q1 '20
Q2 '21
Q3 '22
Q4 '23
Q1 '25
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.