XML 19 R9.htm IDEA: XBRL DOCUMENT v3.19.3.a.u2
Note 3 - Revenue
12 Months Ended
Dec. 31, 2019
Notes to Financial Statements  
Revenue from Contract with Customer [Text Block]

Note 3 – Revenue

 

The Company provides quality, quick-turn prototyping and on-demand manufacturing services. As a result, the majority of revenue recognized in a reporting period is based on completed, invoiced contracts. The Company accounts for revenue in accordance with ASC 606, which the Company adopted on January 1, 2018, using the modified retrospective method. Results for reporting periods beginning after January 1, 2018 are presented under ASC 606, while prior period amounts are not adjusted and continue to be reported in accordance with the Company’s historic accounting under ASC 605. The Company recorded a net increase of $1.5 million to its retained earnings balance on January 1, 2018 due to the cumulative impact of adopting ASC 606. The impact of adopting ASC 606 was to increase revenue by $0.3 million and increase cost of revenue by $0.2 million for the year ended December 31, 2018, and to increase accounts receivable by $2.9 million and decrease inventory by $1.3 million as of  December 31, 2018, which includes the transition adjustment of $1.5 million noted above.

 

A performance obligation is a promise in a contract to transfer a distinct good or service to the customer, and is the unit of account in ASC 606. The majority of the Company’s CNC machining, 3D printing, and sheet metal contracts have a single performance obligation. The majority of the Company’s injection molding contracts have multiple performance obligations including one obligation to produce the mold and a second obligation to produce parts. For injection molding contracts with multiple performance obligations, we allocate revenue to each performance obligation based on its relative standalone selling price. We generally determine standalone selling price based on the price charged to customers.

 

The Company manufactures parts that have no alternative use to the Company since the parts are custom made to specific customer orders, and the Company believes there is a legally enforceable right to payment for performance completed to date on these manufactured parts. For manufactured parts that meet these two criteria, the Company will recognize revenue over time. Revenue is recognized over time using the input method based on time in production as a percentage of total estimated production time to measure progress toward satisfying performance obligations.

 

Revenue by geographic region for the years ended December 31, 2019, 2018 and 2017 was as follows:

 


 

   

Year Ended December 31,

 

(in thousands)

 

2019

   

2018

   

2017

 

Revenue:

                       

United States

  $ 360,205     $ 350,535     $ 263,086  

Europe

    82,805       80,889       70,154  

Japan

    15,718       14,172       11,250  

Total revenue

  $ 458,728     $ 445,596     $ 344,490  

 


 

Revenue by product line for the years ended December 31, 2019, 2018 and 2017 was as follows:

 


 

   

Year Ended December 31,

 

(in thousands)

 

2019

   

2018

   

2017

 

Revenue:

                       

Injection Molding

  $ 217,415     $ 210,523     $ 194,432  

CNC Machining

    155,473       153,521       103,739  

3D Printing

    61,352       53,342       43,329  

Sheet Metal

    21,000       24,998       1,767  

Other Revenue

    3,488       3,212       1,223  

Total revenue

  $ 458,728     $ 445,596     $ 344,490  

 


 

The Company generally expenses sales commissions when incurred because the amortization period would have been one year or less. These costs are recorded within marketing and sales expenses. The value of unsatisfied performance obligations for contracts with an original expected length of one year or less is not material.