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
3.5M
7M
10.5M
Q2 '16: 3.1M
Q3 '16: 2.9M
Q4 '16: 2.8M
Q1 '17: 2.9M
Q2 '17: 3.4M
Q3 '17: 2.9M
Q4 '17: 3.4M
Q1 '18: 3.5M
Q2 '18: 3.8M
Q3 '18: 3.3M
Q4 '18: 3.6M
Q1 '19: 4.2M
Q2 '19: 4.1M
Q3 '19: 4M
Q4 '19: 4M
Q1 '20: 4M
Q2 '20: 4.9M
Q3 '20: 4.9M
Q4 '20: 4.7M
Q1 '21: 5M
Q2 '21: 5.7M
Q3 '21: 5.5M
Q4 '21: 5.7M
Q1 '22: 5.3M
Q2 '22: 5.8M
Q3 '22: 5.3M
Q4 '22: 7.1M
Q1 '23: 8.6M
Q2 '23: 9.7M
Q3 '23: 7.6M
Q1 '24: 5.6M
Q2 '24: 6M
Q3 '24: 5.6M
Q4 '24: 5.8M
Q1 '25: 5.5M
Q2 '25: 5.6M
Q3 '25: 5.7M
Q4 '25: 5.8M
Q1 '26: 5.3M
Q2 '26: 5.6M
Q2 '17
Q3 '18
Q4 '19
Q1 '21
Q2 '22
Q3 '23
Q1 '25
Q2 '26
Gross Profit Quarterly
-2.5M
0
2.5M
5M
7.5M
Q3 '16: 2.1M
Q4 '16: 2.1M
Q1 '17: 2.1M
Q2 '17: 2.5M
Q3 '17: 2.1M
Q4 '17: 2.5M
Q1 '18: 2.5M
Q2 '18: 2.8M
Q3 '18: 2.3M
Q4 '18: 2.6M
Q1 '19: 2.9M
Q2 '19: 2.9M
Q3 '19: 2.8M
Q4 '19: 2.7M
Q1 '20: 2.8M
Q2 '20: 3.5M
Q3 '20: 3.5M
Q4 '20: 3.3M
Q1 '21: 3.6M
Q2 '21: 4.2M
Q3 '21: 4.1M
Q4 '21: 4.2M
Q1 '22: 4.1M
Q2 '22: 4.4M
Q3 '22: 4.1M
Q4 '22: 5.3M
Q1 '23: 6.8M
Q2 '23: 7.3M
Q3 '23: 5.8M
Q4 '23: -962K
Q1 '24: 4.2M
Q2 '24: 4.6M
Q3 '24: 4.2M
Q4 '24: 4.4M
Q1 '25: 4.3M
Q2 '25: 4.3M
Q3 '25: 4.3M
Q4 '25: 4.5M
Q1 '26: 4M
Q2 '26: 4.1M
Q3 '17
Q4 '18
Q1 '20
Q2 '21
Q3 '22
Q4 '23
Q1 '25
Q2 '26
Operating Income Quarterly
-15M
-10M
-5M
0
5M
10M
15M
Q2 '16: 466K
Q3 '16: 294K
Q4 '16: 484K
Q1 '17: 375K
Q2 '17: 733K
Q3 '17: 481K
Q4 '17: 440K
Q1 '18: 315K
Q2 '18: 595K
Q3 '18: 119K
Q4 '18: 134K
Q1 '19: 147K
Q2 '19: 130K
Q3 '19: 180K
Q4 '19: 17K
Q1 '20: 248K
Q2 '20: 1M
Q3 '20: 1.1M
Q4 '20: 369K
Q1 '21: 707K
Q2 '21: 1.4M
Q3 '21: 977K
Q4 '21: 698K
Q1 '22: 688K
Q2 '22: 1.1M
Q3 '22: 789K
Q4 '22: 44K
Q1 '23: 581K
Q2 '23: 1.7M
Q3 '23: 593K
Q1 '24: -862K
Q2 '24: -531K
Q3 '24: -604K
Q4 '24: -14.3M
Q1 '25: -677K
Q2 '25: -249K
Q3 '25: -184K
Q4 '25: -761K
Q1 '26: -718K
Q2 '26: -307K
Q2 '17
Q3 '18
Q4 '19
Q1 '21
Q2 '22
Q3 '23
Q1 '25
Q2 '26
Net Income Quarterly
-10.5M
-7M
-3.5M
0
3.5M
7M
10.5M
Q3 '16: 195K
Q4 '16: 510K
Q1 '17: 325K
Q2 '17: 493K
Q3 '17: 308K
Q4 '17: 745K
Q1 '18: 320K
Q2 '18: 366K
Q3 '18: 86K
Q4 '18: 65K
Q1 '19: 205K
Q2 '19: 212K
Q3 '19: 200K
Q4 '19: 69K
Q1 '20: 226K
Q2 '20: 772K
Q3 '20: 789K
Q4 '20: 319K
Q1 '21: 545K
Q2 '21: 1.1M
Q3 '21: 1M
Q4 '21: 616K
Q1 '22: 516K
Q1 '22: 516K
Q2 '22: 841K
Q3 '22: 686K
Q1 '23: -144K
Q2 '23: 1.4M
Q3 '23: 273K
Q4 '23: -726K
Q1 '24: -139K
Q2 '24: 7K
Q3 '24: -466K
Q4 '24: -10.2M
Q1 '25: 5.4M
Q2 '25: -475K
Q3 '25: -45K
Q4 '25: -576K
Q1 '26: -611K
Q2 '26: -482K
Q3 '17
Q4 '18
Q1 '20
Q2 '21
Q2 '22
Q4 '23
Q1 '25
Q2 '26
Cost of Revenue Quarterly
0
800K
1.6M
2.4M
Q2 '16: 824K
Q3 '16: 739K
Q4 '16: 692K
Q1 '17: 746K
Q2 '17: 909K
Q3 '17: 821K
Q4 '17: 919K
Q1 '18: 1M
Q2 '18: 1M
Q3 '18: 981K
Q4 '18: 1.1M
Q1 '19: 1.3M
Q2 '19: 1.2M
Q3 '19: 1.2M
Q4 '19: 1.3M
Q1 '20: 1.3M
Q2 '20: 1.4M
Q3 '20: 1.4M
Q4 '20: 1.4M
Q1 '21: 1.4M
Q2 '21: 1.5M
Q3 '21: 1.4M
Q4 '21: 1.5M
Q1 '22: 1.2M
Q2 '22: 1.4M
Q3 '22: 1.2M
Q4 '22: 1.9M
Q1 '23: 1.8M
Q2 '23: 2.3M
Q3 '23: 1.8M
Q1 '24: 1.4M
Q2 '24: 1.4M
Q3 '24: 1.4M
Q4 '24: 1.4M
Q1 '25: 1.2M
Q2 '25: 1.3M
Q3 '25: 1.5M
Q4 '25: 1.3M
Q1 '26: 1.4M
Q2 '26: 1.5M
Q2 '17
Q3 '18
Q4 '19
Q1 '21
Q2 '22
Q3 '23
Q1 '25
Q2 '26
Operating Cash Flow Quarterly
-600K
0
600K
1.2M
1.8M
Q3 '16: 534K
Q4 '16: 741K
Q1 '17: 647K
Q2 '17: 810K
Q3 '17: 638K
Q4 '17: 417K
Q1 '18: 537K
Q2 '18: 1.1M
Q3 '18: 564K
Q4 '18: 716K
Q1 '19: 536K
Q2 '19: 259K
Q3 '19: 1.2M
Q4 '19: 909K
Q1 '20: 602K
Q2 '20: 1.5M
Q3 '20: 1.3M
Q4 '20: 986K
Q1 '21: 1.3M
Q2 '21: 812K
Q3 '21: 1.2M
Q4 '21: 1.4M
Q1 '22: 548K
Q2 '22: 1.1M
Q3 '22: 1.4M
Q4 '22: 994K
Q1 '23: 272K
Q2 '23: 1.7M
Q3 '23: 287K
Q4 '23: 770K
Q1 '24: 986K
Q2 '24: -190K
Q3 '24: 1.5M
Q4 '24: 866K
Q1 '25: 747K
Q2 '25: 135K
Q3 '25: -582K
Q4 '25: 258K
Q1 '26: 871K
Q2 '26: 173K
Q3 '17
Q4 '18
Q1 '20
Q2 '21
Q3 '22
Q4 '23
Q1 '25
Q2 '26
Free Cash Flow Quarterly
-600K
0
600K
1.2M
1.8M
Q3 '16: 520K
Q4 '16: 688K
Q1 '17: 645K
Q2 '17: 806K
Q3 '17: 635K
Q4 '17: 415K
Q1 '18: 512K
Q2 '18: 1M
Q3 '18: 555K
Q4 '18: 713K
Q1 '19: 530K
Q2 '19: 259K
Q3 '19: 864K
Q4 '19: 791K
Q1 '20: 602K
Q2 '20: 1.5M
Q3 '20: 1.3M
Q4 '20: 974K
Q1 '21: 1.3M
Q2 '21: 788K
Q3 '21: 1.2M
Q4 '21: 1.4M
Q1 '22: 527K
Q2 '22: 1.1M
Q3 '22: 1.4M
Q4 '22: 980K
Q1 '23: 267K
Q2 '23: 1.7M
Q3 '23: 272K
Q4 '23: 769K
Q1 '24: 970K
Q2 '24: -190K
Q3 '24: 1.5M
Q4 '24: 866K
Q1 '25: 735K
Q2 '25: 135K
Q3 '25: -590K
Q4 '25: 258K
Q1 '26: 862K
Q2 '26: 160K
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
1.5M
3M
4.5M
Q2 '13: 2.1M
Q3 '13: 2.3M
Q1 '14: 2M
Q2 '14: 2.1M
Q3 '14: 2.1M
Q1 '15: 2.4M
Q2 '15: 2.4M
Q3 '15: 2.6M
Q1 '16: 2.9M
Q2 '16: 2.9M
Q3 '16: 2.9M
Q1 '17: 3M
Q2 '17: 3K
Q3 '17: 3M
Q1 '18: 3.1K
Q2 '18: 3.1K
Q3 '18: 3.6K
Q1 '19: 3.9K
Q2 '19: 3.9K
Q3 '19: 3.9K
Q1 '20: 3.8K
Q2 '20: 3.8K
Q3 '20: 3.8K
Q1 '21: 3.8K
Q2 '21: 3.8K
Q3 '21: 3.8K
Q1 '22: 3.8M
Q2 '22: 3.8K
Q3 '22: 3.6K
Q1 '23: 3.8K
Q2 '23: 3.8M
Q3 '23: 3.8K
Q1 '24: 3.8K
Q2 '24: 3.8M
Q3 '24: 3.8K
Q1 '25: 3.8M
Q2 '25: 3.9M
Q3 '25: 3.9K
Q1 '26: 3.9M
Q2 '26: 3.9M
Q3 '14
Q2 '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.20
0.00
0.20
0.40
0.60
Q4 '09: 0.03
Q1 '10: 0.02
Q2 '10: 0.01
Q3 '10: -0.01
Q4 '10: 0.10
Q1 '11: 0.10
Q2 '11: 0.26
Q3 '11: 0.32
Q4 '11: 0.14
Q1 '12: 0.11
Q2 '12: -0.04
Q3 '12: 0.03
Q4 '12: 0.15
Q1 '13: 0.29
Q2 '13: 0.45
Q3 '13: 0.39
Q4 '14: 0.02
Q1 '15: 0.14
Q2 '15: 0.14
Q3 '15: 0.15
Q4 '16: 0.54
Q1 '17: 0.48
Q4 '09
Q3 '10
Q2 '11
Q1 '12
Q4 '12
Q3 '13
Q2 '15
Q1 '17
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.