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
2M
4M
6M
Q1 '10: 3.6M
Q2 '10: 3.7M
Q3 '10: 3.8M
Q4 '10: 2.6M
Q1 '11: 3.6M
Q2 '11: 4.1M
Q3 '11: 3.3M
Q4 '11: 3.3M
Q1 '12: 3.9M
Q2 '12: 3.7M
Q3 '12: 3.5M
Q4 '12: 2.7M
Q1 '13: 4M
Q2 '13: 3.6M
Q3 '13: 3.4M
Q4 '13: 4.4M
Q1 '14: 4M
Q2 '14: 3M
Q3 '14: 2.5M
Q4 '14: 4M
Q1 '15: 4.4M
Q2 '15: 4.1M
Q3 '15: 3.6M
Q4 '15: 1.9M
Q1 '16: 2.3M
Q2 '16: 2.1M
Q3 '16: 3.5M
Q4 '16: 2.9M
Q1 '17: 2.8M
Q2 '17: 3.8M
Q3 '17: 3.2M
Q4 '17: 3.2M
Q1 '18: 3.5M
Q2 '18: 3.9M
Q3 '18: 3.3M
Q4 '18: 2.8M
Q1 '19: 3.2M
Q2 '19: 3.3M
Q3 '19: 3.3M
Q1 '20: 3.3M
Q2 '20: 3M
Q3 '20: 2.3M
Q4 '20: 2.4M
Q1 '21: 3.4M
Q2 '21: 3.7M
Q3 '21: 3.2M
Q4 '21: 3.7M
Q1 '22: 3.9M
Q2 '22: 3.6M
Q3 '22: 2.4M
Q4 '22: 2.8M
Q1 '23: 2.6M
Q2 '23: 2.7M
Q3 '23: 3.1M
Q4 '23: 2.6M
Q1 '24: 3.3M
Q2 '24: 3.4M
Q3 '24: 3.1M
Q4 '24: 2.5M
Q1 '25: 2.5M
Q2 '25: 2.8M
Q3 '25: 2.3M
Q4 '25: 3M
Q1 '26: 2.9M
Q2 '26: 3.1M
Q2 '10
Q3 '12
Q4 '14
Q1 '17
Q2 '19
Q4 '21
Q1 '24
Q2 '26
Gross Profit Quarterly
Nothing in this filer's XBRL supports this figure for the periods asked
for, so there is nothing to draw. That is a gap in the filing, not a zero.
Operating Income Quarterly
0
800K
1.6M
2.4M
Q1 '10: 1.5M
Q2 '10: 780.8K
Q3 '10: 1.8M
Q4 '10: 933.1K
Q1 '11: 1.7M
Q2 '11: 1.7M
Q3 '11: 1.6M
Q4 '11: 1.2M
Q1 '12: 1.7M
Q2 '12: 1.7M
Q3 '12: 1.6M
Q4 '12: 1M
Q1 '13: 2M
Q2 '13: 1.6M
Q3 '13: 1.5M
Q4 '13: 2.2M
Q1 '14: 1.9M
Q2 '14: 1.3M
Q3 '14: 543.8K
Q4 '14: 1.8M
Q1 '15: 2.1M
Q2 '15: 2.1M
Q3 '15: 1.7M
Q4 '15: 414.2K
Q1 '16: 719.7K
Q2 '16: 508.3K
Q3 '16: 1.2M
Q4 '16: 917.1K
Q1 '17: 869.1K
Q2 '17: 1.5M
Q3 '17: 1.5M
Q4 '17: 1.4M
Q1 '18: 1.4M
Q2 '18: 1.7M
Q3 '18: 1.5M
Q4 '18: 884.4K
Q1 '19: 1.2M
Q2 '19: 1.2M
Q3 '19: 1.3M
Q4 '19: 1.7M
Q1 '20: 1.3M
Q2 '20: 1.1M
Q3 '20: 753.6K
Q4 '20: 508K
Q1 '21: 1.5M
Q2 '21: 1.5M
Q3 '21: 1.3M
Q4 '21: 1.4M
Q1 '22: 1.5M
Q2 '22: 1.2M
Q3 '22: 687.7K
Q4 '22: 645.7K
Q1 '23: 831.8K
Q2 '23: 518.1K
Q3 '23: 721.9K
Q4 '23: 791.3K
Q1 '24: 1M
Q2 '24: 1.1M
Q3 '24: 949.1K
Q4 '24: 556.4K
Q1 '25: 610.9K
Q2 '25: 695.5K
Q3 '25: 215.1K
Q4 '25: 721.9K
Q1 '26: 642.4K
Q2 '26: 754.1K
Q3 '10
Q4 '12
Q1 '15
Q2 '17
Q3 '19
Q4 '21
Q1 '24
Q2 '26
Net Income Quarterly
0
600K
1.2M
1.8M
Q1 '10: 1.1M
Q2 '10: 624.5K
Q3 '10: 1.2M
Q4 '10: 835.5K
Q1 '11: 1.2M
Q2 '11: 1.2M
Q3 '11: 1.4M
Q4 '11: 956.4K
Q1 '12: 1.2M
Q2 '12: 1.2M
Q3 '12: 1.1M
Q4 '12: 1.3M
Q1 '13: 1.6M
Q2 '13: 1.3M
Q3 '13: 1.3M
Q4 '13: 1.7M
Q1 '14: 1.3M
Q2 '14: 901.3K
Q3 '14: 411.4K
Q4 '14: 1.4M
Q1 '15: 1.5M
Q2 '15: 1.5M
Q3 '15: 1.2M
Q4 '15: 418.4K
Q1 '16: 525.1K
Q2 '16: 405.4K
Q3 '16: 900.1K
Q4 '16: 750.5K
Q1 '17: 634.4K
Q2 '17: 1.1M
Q3 '17: 1.1M
Q4 '17: 1M
Q1 '18: 1.1M
Q2 '18: 1.4M
Q3 '18: 1.3M
Q4 '18: 583.3K
Q1 '19: 1.2M
Q2 '19: 1.1M
Q3 '19: 1.1M
Q4 '19: 1.4M
Q1 '20: 790.3K
Q2 '20: 1.2M
Q3 '20: 717.5K
Q4 '20: 610.5K
Q1 '21: 1.2M
Q2 '21: 1.3M
Q3 '21: 1M
Q4 '21: 1.1M
Q1 '22: 911.5K
Q2 '22: 633.3K
Q3 '22: 345.5K
Q4 '22: 679.2K
Q1 '23: 756.1K
Q2 '23: 461.1K
Q3 '23: 626.8K
Q4 '23: 737.4K
Q1 '24: 925.4K
Q2 '24: 956.2K
Q3 '24: 865.5K
Q4 '24: 503.7K
Q1 '25: 560.9K
Q2 '25: 626.8K
Q3 '25: 268.4K
Q4 '25: 649.6K
Q1 '26: 818.9K
Q2 '26: 728.6K
Q3 '10
Q4 '12
Q1 '15
Q2 '17
Q3 '19
Q4 '21
Q1 '24
Q2 '26
Cost of Revenue Quarterly
0
600K
1.2M
1.8M
Q1 '10: 1.4M
Q2 '10: 1.4M
Q3 '10: 1.5M
Q4 '10: 988.1K
Q1 '11: 1.5M
Q2 '11: 1.6M
Q3 '11: 1.2M
Q4 '11: 1.3M
Q1 '12: 1.5M
Q2 '12: 1.5M
Q3 '12: 1.3M
Q4 '12: 879.5K
Q1 '13: 1.4M
Q2 '13: 1.4M
Q3 '13: 1.2M
Q4 '13: 1.6M
Q1 '14: 1.4M
Q2 '14: 1.1M
Q3 '14: 1.3M
Q4 '14: 1.5M
Q1 '15: 1.7M
Q2 '15: 1.4M
Q3 '15: 1.3M
Q4 '15: 788.2K
Q1 '16: 897.7K
Q2 '16: 1M
Q3 '16: 1.6M
Q4 '16: 1.4M
Q1 '17: 1.3M
Q2 '17: 1.7M
Q3 '17: 1.1M
Q4 '17: 1.3M
Q1 '18: 1.5M
Q2 '18: 1.5M
Q3 '18: 1.2M
Q4 '18: 1.2M
Q1 '19: 1.3M
Q2 '19: 1.5M
Q3 '19: 1.4M
Q4 '19: 1.5M
Q1 '20: 1.4M
Q2 '20: 1.3M
Q3 '20: 974.8K
Q4 '20: 1.2M
Q1 '21: 1.4M
Q2 '21: 1.5M
Q3 '21: 1.3M
Q4 '21: 1.6M
Q1 '22: 1.7M
Q2 '22: 1.7M
Q3 '22: 1.1M
Q4 '22: 1.5M
Q1 '23: 1.1M
Q2 '23: 1.4M
Q3 '23: 1.7M
Q4 '23: 1.2M
Q1 '24: 1.6M
Q2 '24: 1.6M
Q3 '24: 1.4M
Q4 '24: 1.2M
Q1 '25: 1.1M
Q2 '25: 1.3M
Q3 '25: 1.3M
Q4 '25: 1.6M
Q1 '26: 1.4M
Q2 '26: 1.6M
Q3 '10
Q4 '12
Q1 '15
Q2 '17
Q3 '19
Q4 '21
Q1 '24
Q2 '26
Operating Cash Flow Quarterly
-800K
0
800K
1.6M
2.4M
Q3 '10: 1.4M
Q4 '10: 1M
Q1 '11: 1.4M
Q2 '11: 1.5M
Q3 '11: 838.1K
Q4 '11: 668.2K
Q1 '12: 2.1M
Q2 '12: 733.3K
Q3 '12: 1.5M
Q4 '12: 1.1M
Q1 '13: 2.1M
Q2 '13: 1.6M
Q3 '13: 24.8K
Q4 '13: 2.2M
Q1 '14: 892.2K
Q2 '14: 1.6M
Q3 '14: 419K
Q4 '14: 1.6M
Q1 '15: 1.8M
Q2 '15: 1.3M
Q3 '15: 1M
Q4 '15: 1.1M
Q1 '16: 743.5K
Q2 '16: -219.1K
Q3 '16: 1.1M
Q4 '16: 624K
Q1 '17: 875.1K
Q2 '17: 1.2M
Q3 '17: 1.2M
Q4 '17: 777.9K
Q1 '18: 1.7M
Q2 '18: 1M
Q3 '18: 1.2M
Q4 '18: 1M
Q1 '19: 1.5M
Q2 '19: 1.1M
Q3 '19: 984.2K
Q4 '19: 849.1K
Q1 '20: 1.3M
Q2 '20: 1.9M
Q3 '20: -261.8K
Q4 '20: 672.5K
Q1 '21: 990.2K
Q2 '21: 1.6M
Q3 '21: 1M
Q4 '21: 1.7M
Q1 '22: 27.4K
Q2 '22: 1.1M
Q3 '22: 735.9K
Q4 '22: 624.7K
Q1 '23: 417.6K
Q2 '23: 434.7K
Q3 '23: 1.2M
Q4 '23: 1.1M
Q1 '24: 644.1K
Q2 '24: 1.3M
Q3 '24: 1.2M
Q4 '24: 269.3K
Q1 '25: 322.1K
Q2 '25: 303.2K
Q3 '25: 1M
Q4 '25: 330.5K
Q1 '26: 604.5K
Q2 '26: 1.5M
Q2 '12
Q2 '14
Q2 '16
Q2 '18
Q2 '20
Q2 '22
Q2 '24
Q2 '26
Free Cash Flow Quarterly
-800K
0
800K
1.6M
2.4M
Q3 '10: 1.2M
Q4 '10: 995.3K
Q1 '11: 1.4M
Q2 '11: 1.4M
Q3 '11: 745.3K
Q4 '11: 643.9K
Q1 '12: 2M
Q2 '12: 729.5K
Q3 '12: 1.4M
Q4 '12: 982.3K
Q1 '13: 2M
Q2 '13: 1.5M
Q3 '13: -120K
Q4 '13: 2.1M
Q1 '14: 888.1K
Q2 '14: 1.6M
Q3 '14: 409.5K
Q4 '14: 1.6M
Q1 '15: 1.8M
Q2 '15: 1.2M
Q3 '15: 1M
Q4 '15: 1.1M
Q1 '16: 737.6K
Q2 '16: -329.9K
Q3 '16: 1.1M
Q4 '16: 581.2K
Q1 '17: 873.5K
Q2 '17: 1.2M
Q3 '17: 1.2M
Q4 '17: 759.8K
Q1 '18: 1.6M
Q2 '18: 1M
Q3 '18: 1.2M
Q4 '18: 1M
Q1 '19: 1.5M
Q2 '19: 1.1M
Q3 '19: 911.2K
Q4 '19: 840K
Q1 '20: 1.3M
Q2 '20: 1.9M
Q3 '20: -284.2K
Q4 '20: 654.6K
Q1 '21: 962K
Q2 '21: 1.6M
Q3 '21: 988.2K
Q4 '21: 1.6M
Q1 '22: 22.6K
Q2 '22: 1.1M
Q3 '22: 688K
Q4 '22: 609.7K
Q1 '23: 415K
Q2 '23: 433.3K
Q3 '23: 1.1M
Q4 '23: 1M
Q1 '24: 622.2K
Q2 '24: 1.3M
Q3 '24: 1.2M
Q4 '24: -45.9K
Q1 '25: 318.5K
Q2 '25: 285.6K
Q3 '25: 995.8K
Q4 '25: 308K
Q1 '26: 594.6K
Q2 '26: 1.5M
Q2 '12
Q2 '14
Q2 '16
Q2 '18
Q2 '20
Q2 '22
Q2 '24
Q2 '26
Operating cash flow minus capital expenditure.
Shares Outstanding Quarterly
Nothing in this filer's XBRL supports this figure for the periods asked
for, so there is nothing to draw. That is a gap in the filing, not a zero.
EPS TTM
0.00
0.50
1.00
1.50
Q4 '10: 0.80
Q1 '11: 0.83
Q2 '11: 0.97
Q3 '11: 1.00
Q4 '11: 1.03
Q1 '12: 1.05
Q2 '12: 1.04
Q3 '12: 0.98
Q4 '12: 1.05
Q1 '13: 1.12
Q2 '13: 1.15
Q3 '13: 1.19
Q4 '13: 1.28
Q1 '14: 1.23
Q2 '14: 1.14
Q3 '14: 0.95
Q4 '14: 0.88
Q1 '15: 0.91
Q2 '15: 1.04
Q3 '15: 1.21
Q4 '15: 1.00
Q1 '16: 0.79
Q2 '16: 0.55
Q3 '16: 0.49
Q4 '16: 0.56
Q1 '17: 0.59
Q2 '17: 0.74
Q3 '17: 0.78
Q4 '17: 0.84
Q1 '18: 0.93
Q2 '18: 0.99
Q3 '18: 1.04
Q4 '18: 0.95
Q1 '19: 0.99
Q2 '19: 0.92
Q3 '19: 0.86
Q4 '19: 1.04
Q1 '20: 0.94
Q2 '20: 0.97
Q3 '20: 0.90
Q4 '20: 0.72
Q1 '21: 0.81
Q2 '21: 0.84
Q3 '21: 0.90
Q4 '21: 1.01
Q1 '22: 0.95
Q2 '22: 0.80
Q3 '22: 0.65
Q4 '22: 0.56
Q1 '23: 0.52
Q2 '23: 0.48
Q3 '23: 0.55
Q4 '23: 0.56
Q1 '24: 0.60
Q2 '24: 0.71
Q3 '24: 0.76
Q4 '24: 0.71
Q1 '25: 0.63
Q2 '25: 0.56
Q3 '25: 0.43
Q4 '25: 0.46
Q1 '26: 0.52
Q2 '26: 0.54
Q2 '12
Q2 '14
Q2 '16
Q2 '18
Q2 '20
Q2 '22
Q2 '24
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.