Quarterly
Annual
| Unit: USD | 2023-12-31 | 2023-09-30 | 2023-06-30 | 2023-03-31 | 2022-12-31 | 2022-09-30 | 2022-06-30 | 2022-03-31 | 2021-12-31 | 2021-09-30 | 2021-06-30 | 2021-03-31 | 2020-12-31 | 2020-09-30 | 2020-06-30 | 2020-03-31 | 2019-12-31 | 2019-09-30 | 2019-06-30 | 2019-03-31 | 2018-12-31 | 2018-09-30 | 2018-06-30 | 2018-03-31 | 2017-12-31 | 2017-09-30 | 2017-06-30 | 2017-03-31 | 2016-12-31 | 2016-09-30 | 2016-06-30 | 2016-03-31 | 2015-12-31 | 2015-09-30 | 2015-06-30 | 2015-03-31 | 2014-12-31 | 2014-09-30 | 2014-06-30 | 2014-03-31 | 2013-12-31 | 2013-09-30 | 2013-06-30 | 2013-03-31 | 2012-12-31 | 2012-09-30 | 2012-06-30 | 2012-03-31 | 2011-12-31 | 2011-09-30 | 2011-06-30 | 2011-03-31 | 2010-12-31 | 2010-09-30 | 2010-06-30 | 2010-03-31 | 2009-12-31 | 2009-09-30 | 2009-06-30 | 2009-03-31 | 2008-12-31 | 2008-09-30 | 2008-06-30 | 2008-03-31 | 2007-12-31 | 2007-09-30 | 2007-06-30 | 2007-03-31 | 2006-12-31 | 2006-09-30 | 2006-06-30 | 2006-03-31 | 2005-12-31 | 2005-09-30 | 2005-06-30 | 2005-03-31 | 2004-12-31 | 2004-09-30 | 2004-06-30 | 2004-03-31 | 2003-12-31 | 2003-09-30 | 2003-06-30 | 2003-03-31 | 2002-12-31 | 2002-09-30 | 2002-06-30 | 2002-03-31 | 2001-12-31 | 2001-09-30 | 2001-06-30 | 2001-03-31 | 2000-12-31 | 2000-09-30 | 2000-06-30 | 2000-03-31 | 1999-12-31 | 1999-09-30 | 1999-06-30 | 1999-03-31 | 1998-12-31 | 1998-09-30 | 1998-06-30 | 1998-03-31 | 1996-12-31 | 1996-09-30 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
revenue | 28,191,000 | 17,345,000 | 17,425,000 | 18,005,000 | 19,159,000 | 20,348,000 | 19,383,000 | 19,439,000 | 18,517,000 | 19,117,000 | 18,240,000 | 17,765,000 | 18,275,000 | 17,402,000 | 11,259,000 | 11,319,000 | 11,529,000 | 11,773,000 | 11,253,000 | 10,831,000 | 11,029,000 | 11,385,000 | 10,989,000 | 10,501,000 | 10,638,000 | 10,728,000 | 10,312,000 | 10,140,000 | 9,941,000 | 8,969,000 | 7,617,000 | 7,242,000 | 7,328,000 | 7,124,000 | 7,182,000 | 7,586,000 | 7,432,000 | 7,416,000 | 7,623,000 | 7,197,000 | 7,455,000 | 7,486,000 | 7,356,000 | 7,978,000 | 7,195,000 | 7,843,000 | 7,453,000 | 7,478,000 | 7,254,000 | 7,769,000 | 6,311,000 | 5,989,000 | 5,927,000 | 5,954,000 | 5,848,000 | 5,999,000 | 6,752,000 | 5,784,000 | 6,003,000 | 5,962,000 | 5,617,000 | 5,749,000 | 5,536,000 | 5,586,000 | 5,263,000 | 5,405,000 | 5,143,000 | 4,985,000 | 4,988,000 | 4,996,000 | 5,032,000 | 4,750,000 | 4,818,000 | 4,842,000 | 4,661,000 | 4,490,000 | 4,615,000 | 4,429,000 | 4,142,000 | 4,372,000 | 4,295,000 | 4,184,000 | 4,170,000 | 4,166,000 | 4,099,000 | 4,283,000 | 4,425,000 | 4,148,000 | 4,250,000 | 4,099,000 | 4,055,000 | 3,952,000 | 3,922,000 | 4,027,000 | 3,910,000 | 3,697,000 | 3,600,000 | 3,700,000 | 3,400,000 | 3,300,000 | 3,400,000 | 3,500,000 | 3,300,000 | 3,200,000 | 3,700,000 | 2,810,000 |
cost of revenue | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
gross profit | 28,191,000 | 17,345,000 | 17,425,000 | 18,005,000 | 19,159,000 | 20,348,000 | 19,383,000 | 19,439,000 | 18,517,000 | 19,117,000 | 18,240,000 | 17,765,000 | 18,275,000 | 17,402,000 | 11,259,000 | 11,319,000 | 11,529,000 | 11,773,000 | 11,253,000 | 10,831,000 | 11,029,000 | 11,385,000 | 10,989,000 | 10,501,000 | 10,638,000 | 10,728,000 | 10,312,000 | 10,140,000 | 9,941,000 | 8,969,000 | 7,617,000 | 7,242,000 | 7,328,000 | 7,124,000 | 7,182,000 | 7,586,000 | 7,432,000 | 7,416,000 | 7,623,000 | 7,197,000 | 7,455,000 | 7,486,000 | 7,356,000 | 7,978,000 | 7,195,000 | 7,843,000 | 7,453,000 | 7,478,000 | 7,254,000 | 7,769,000 | 6,311,000 | 5,989,000 | 5,927,000 | 5,954,000 | 5,848,000 | 5,999,000 | 6,752,000 | 5,784,000 | 6,003,000 | 5,962,000 | 5,617,000 | 5,749,000 | 5,536,000 | 5,586,000 | 5,263,000 | 5,405,000 | 5,143,000 | 4,985,000 | 4,988,000 | 4,996,000 | 5,032,000 | 4,750,000 | 4,818,000 | 4,842,000 | 4,661,000 | 4,490,000 | 4,615,000 | 4,429,000 | 4,142,000 | 4,372,000 | 4,295,000 | 4,184,000 | 4,170,000 | 4,166,000 | 4,099,000 | 4,283,000 | 4,425,000 | 4,148,000 | 4,250,000 | 4,099,000 | 4,055,000 | 3,952,000 | 3,922,000 | 4,027,000 | 3,910,000 | 3,697,000 | 3,600,000 | 3,700,000 | 3,400,000 | 3,300,000 | 3,400,000 | 3,500,000 | 3,300,000 | 3,200,000 | 3,700,000 | 2,810,000 |
operating expenses | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
research and development | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
sales and marketing | 630,000 | 0 | 0 | 0 | 516,000 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 205,000 | 0 | 0 | 0 | 187,000 | 0 | 0 | 0 | 186,000 | 0 | 0 | 0 | 213,000 | 0 | 0 | 0 | 235,000 | 0 | 0 | 0 | 224,000 | 0 | 0 | 0 | 159,000 | 0 | 0 | 0 | 156,000 | 0 | 0 | 0 | 170,000 | 0 | 0 | 0 | 168,000 | 0 | 0 | 0 | 131,000 | 0 | 0 | 0 | 185,000 | 0 | 0 | 0 | 100,000 | 0 | 0 | 0 | 100,000 | 0 | 0 | 0 | 2,170,000 | 2,000,000 |
general and administrative | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
total operating expenses | 5,958,000 | 6,337,000 | 6,086,000 | 6,169,000 | 3,360,000 | 6,432,000 | 6,648,000 | 6,242,000 | 5,816,000 | 6,262,000 | 5,887,000 | 5,737,000 | 6,264,000 | 4,956,000 | 3,797,000 | 4,214,000 | 4,212,000 | 4,142,000 | 4,155,000 | 4,168,000 | 4,058,000 | 4,032,000 | 3,832,000 | 3,873,000 | 3,637,000 | 3,660,000 | 3,627,000 | 3,658,000 | 3,706,000 | 3,663,000 | 2,620,000 | 2,689,000 | 2,546,000 | 2,541,000 | 2,337,000 | 2,466,000 | 2,601,000 | 2,372,000 | 2,503,000 | 2,491,000 | 2,336,000 | 2,438,000 | 2,464,000 | 2,543,000 | 2,438,000 | 2,568,000 | 2,509,000 | 2,634,000 | 2,992,000 | 2,464,000 | 2,164,000 | 2,055,000 | 2,460,000 | 1,976,000 | 1,906,000 | 1,945,000 | 3,220,000 | 2,068,000 | 2,162,000 | 1,948,000 | 1,525,000 | 1,477,000 | 1,498,000 | 1,546,000 | 1,458,000 | 1,432,000 | 1,438,000 | 1,497,000 | 1,311,000 | 1,482,000 | 1,456,000 | 1,406,000 | 1,329,000 | 1,360,000 | 1,334,000 | 1,387,000 | 1,293,000 | 1,276,000 | 1,262,000 | 1,302,000 | 1,235,000 | 1,232,000 | 1,219,000 | 1,230,000 | 1,172,000 | 1,219,000 | 1,210,000 | 1,246,000 | 1,237,000 | 1,121,000 | 1,128,000 | 1,156,000 | 1,109,000 | 1,091,000 | 1,081,000 | 1,074,000 | 1,100,000 | 1,000,000 | 1,000,000 | 1,000,000 | 1,000,000 | 100,000 | 1,000,000 | 1,000,000 | 3,230,000 | 2,290,000 |
operating income | 3,818,000 | -12,158,000 | -9,188,000 | 285,000 | 1,829,000 | 354,000 | -10,772,000 | -10,457,000 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 5,400,000 | 4,290,000 |
net income | 0 | 5,187,000 | 8,237,000 | 12,887,000 | 11,745,000 | 12,234,000 | 8,611,000 | 8,982,000 | 8,025,000 | 8,775,000 | 7,248,000 | 6,813,000 | 6,766,000 | 6,172,000 | 1,867,000 | 3,560,000 | 4,241,000 | 4,682,000 | 4,168,000 | 3,733,000 | 3,851,000 | 4,438,000 | 4,211,000 | 3,703,000 | 4,352,000 | 3,889,000 | 3,582,000 | 2,926,000 | 2,923,000 | 840,000 | 2,389,000 | 2,443,000 | -166,000 | 2,334,000 | 2,594,000 | 2,779,000 | 2,015,000 | 2,872,000 | 2,730,000 | 2,646,000 | 2,957,000 | 2,913,000 | 2,423,000 | 2,877,000 | 2,342,000 | 2,986,000 | 3,096,000 | 2,981,000 | 2,765,000 | 2,990,000 | 1,945,000 | 2,235,000 | 2,352,000 | 2,592,000 | 2,522,000 | 2,509,000 | 1,950,000 | 2,470,000 | 2,463,000 | 2,462,000 | 2,251,000 | 2,258,000 | 2,454,000 | 2,550,000 | 2,297,000 | 2,528,000 | 2,241,000 | 2,074,000 | 2,318,000 | 2,221,000 | 2,136,000 | 1,914,000 | 2,080,000 | 2,125,000 | 1,894,000 | 1,739,000 | 2,008,000 | 1,820,000 | 1,533,000 | 1,652,000 | 1,680,000 | 1,602,000 | 1,530,000 | 1,535,000 | 1,564,000 | 1,593,000 | 1,419,000 | 1,400,000 | 1,577,000 | 1,503,000 | 1,391,000 | 1,332,000 | 1,408,000 | 1,453,000 | 1,271,000 | 1,232,000 | 1,300,000 | 1,300,000 | 1,200,000 | 1,200,000 | 1,200,000 | 1,300,000 | 1,100,000 | 1,000,000 | 480,000 | 520,000 |
The information provided in this report is taken from www.sec.gov and many other data providers. While we have conducted our best efforts to ensure that the parsed data is accurate, we cannot guarantee its accuracy. Please use caution and understand that any consequences of its use are your own responsibility.
