XML 44 R8.htm IDEA: XBRL DOCUMENT v3.20.1
Revenue
12 Months Ended
Dec. 31, 2019
Revenue from Contract with Customer [Abstract]  
Revenue
Revenue
Revenue Recognition
The Company determines the amount of revenue to be recognized through the following steps:
identification of the contract, or contracts with a customer;
identification of the performance obligations in the contract;
determination of the transaction price;
allocation of the transaction price to the performance obligations in the contract; and
recognition of revenue when, or as, the Company satisfies the performance obligations.
Revenue for the Company is generated from contracts that may include a single performance obligation (generally, a single type of engine) or multiple performance obligations (which may include an engine with aftermarket parts, different types of engines, etc.). 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 for revenue recognition. Revenue is measured at the transaction price which is based on the amount of consideration that the Company expects to receive in exchange for transferring the promised goods or services to the customer. The transaction price is allocated to each distinct performance obligation and recognized as revenue when, or as, the performance obligation is satisfied. The Company is required to estimate the total consideration expected to be received from contracts with customers. The consideration expected to be received may be variable based on the specific terms of the contract and the Company’s past practices.
For contracts with multiple performance obligations, the Company allocates the total transaction price to distinct performance obligations based on directly observable data, if available, or the Company’s best estimate of the stand-alone selling price of each distinct performance obligation. The primary method used to estimate stand-alone selling price is the cost plus a margin approach.
The Company applies significant judgment in order to identify and determine the number of performance obligations, determine the total transaction price, allocate the transaction price to each performance obligation, and determine the appropriate timing of revenue recognition.
Taxes collected from customers and remitted to governmental authorities are presented on a net basis; that is, such taxes are excluded from revenues.
The Company’s payment terms are generally 60 days or less and its sales arrangements do not contain any significant financing components.
Timing of revenue recognition. The Company recognizes revenue related to performance obligations in its contracts with customers when control passes to the customer. Control passes to the customer when the customer has the ability to direct the use of and obtain substantially all of the remaining benefits from the asset. For the majority of the Company’s products, revenue is recognized at a point in time when the products are shipped or delivered to the customer based on the shipping terms as that is the point in time when control passes to the customer. For the years ended December 31, 2019 and 2018, the Company recognized revenue of $489.0 million and $449.8 million, respectively, related to products shipped or delivered at a point in time.
The Company also recognizes revenue over time primarily when the Company’s performance obligations include enhancing a customer-controlled asset (generally when an engine is provided by the customer), constructing an asset with no alternative future use and the Company has an enforceable right to payment throughout the period as the services are performed, or providing an extended warranty beyond the Company’s standard warranty. The Company recognizes revenue throughout the manufacturing process when constructing an asset based on labor hours incurred because the customer receives the benefit of the asset as the product is constructed. The Company believes labor hours incurred relative to total estimated labor hours at completion faithfully depicts the transfer of control to the customer. The Company recognizes revenue related to extended warranty programs based on the passage of time over the extended warranty period. For the years ended December 31, 2019 and 2018, the Company recognized revenue of $57.1 million and $46.2 million, respectively, for products manufactured over time.
Shipping and handling costs. The Company accounts for shipping and handling costs as fulfillment costs which are recorded in Cost of sales in the Consolidated Statements of Operations. This includes shipping and handling costs incurred after control of the asset has transferred to the customer as the Company has elected the practical expedient in ASC 606.
Variable consideration. Variable consideration primarily includes rebates and discounts. The Company estimates the projected amount of rebates and discounts based on current assumptions, customer-specific information and historical experience. Variable consideration is recorded as a reduction of revenue to the extent that it is probable that there will not be significant changes to the Company’s estimate of variable consideration when any uncertainties are settled.
Costs to obtain and fulfill a contract. The Company has elected the practical expedient in ASC 606 to recognize incremental costs to obtain a contract (primarily commissions) as expense when incurred since the amortization period of the asset that the Company otherwise would have recognized is one year or less.
Disaggregation of Revenue
The following table summarizes net sales by end market:
(in thousands)
 
For the Year Ended December 31,
End Market
 
2019
 
2018
Energy
 
$
222,779

 
$
185,685

Industrial
 
180,111

 
201,196

Transportation
 
143,186

 
109,157

Total
 
$
546,076

 
$
496,038


The following table summarizes net sales by geographic area:
(in thousands)
 
For the Year Ended December 31,
Geographic Area
 
2019
 
2018
North America
 
$
483,302

 
$
436,068

Pacific Rim
 
39,180

 
42,071

Europe
 
16,562

 
13,743

Other
 
7,032

 
4,156

Total
 
$
546,076

 
$
496,038



Contract Balances
Most of the Company’s contracts are for a period of less than one year; however, certain long-term manufacturing and extended warranty contracts extend beyond one year. The timing of revenue recognition may differ from the time of invoicing to customers and these timing differences result in contract assets, or contract liabilities on the Company’s Consolidated Balance Sheet. Contract assets include amounts related to the contractual right to consideration for completed performance when the right to consideration is conditional. The Company records contract liabilities when cash payments are received or due in advance of performance. Contract assets and contract liabilities are recognized at the contract level.
(in thousands)
 
As of December 31,
 
 
2019
 
2018
Short-term contract assets (included in Prepaid expenses and other current assets)
 
$
694

 
$
2,926

Short-term contract liabilities (included in Other accrued liabilities)
 
(26,898
)
 
(4,897
)
Long-term contract liabilities (included in Noncurrent contract liabilities)
 
(17,998
)
 
(14,611
)
Net contract liabilities
 
$
(44,202
)
 
$
(16,582
)

During the year ended December 31, 2019, the Company recognized $6.7 million of revenue upon satisfaction of performance obligations related to amounts that were included in the net contract liabilities balance as of December 31, 2018. The increase in the contract liabilities from December 31, 2018 to December 31, 2019 is primarily related to the prepayment for certain engines by a customer under a long-term supply agreement.
Remaining Performance Obligations
The Company has elected the practical expedient to not disclose remaining performance obligations that have expected original durations of one year or less. For performance obligations that extend beyond one year, the Company had $41.8 million of remaining performance obligations as of December 31, 2019 primarily related to a long-term manufacturing contract with a customer and extended warranties. The Company expects to recognize revenue related to these remaining performance obligations of approximately $23.8 million in 2020, $15.6 million in 2021, $0.7 million in 2022, $0.7 million in 2023 and $1.0 million in 2024 and beyond.