XML 28 R13.htm IDEA: XBRL DOCUMENT v3.25.0.1
Revenue
12 Months Ended
Dec. 31, 2024
Revenue from Contract with Customer [Abstract]  
Revenue

NOTE 4. REVENUE

Revenue is recognized as, or when, the performance obligations are satisfied. The Company generates revenue primarily from three revenue streams: (i) product revenues, (ii) service revenues; and (iii) rental revenues. We sell or rent our products and provide services primarily in onshore U.S. and Canadian (“NAM”) markets and in international and offshore (“International and Offshore”) markets. We attribute rental and service revenue to the country in which the rental or service was performed, while we attribute product sales revenue to the country to which the product was shipped. The Company has elected the practical expedient to expense commissions as the amortization period associated with the asset that would have been recognized for each order is one year or less. Rental revenue as presented in the table below is accounted for under the lease guidance according to ASC 842 and recognized ratably over the term of the lease.

From time to time, we may enter into contracts that contain multiple performance obligations, such as work orders containing a combination of product sales, equipment rentals and contract labor services. For these arrangements, we allocate the transaction price to each performance obligation identified in the contract based on relative standalone selling prices and recognize the related revenue as control of each individual product or service is transferred to the customer, in satisfaction of the corresponding performance obligations.

The following table presents our revenues disaggregated by category and by geography:

 

 

Year Ended December 31, 2024

 

 

Year Ended December 31, 2023

 

 

Year Ended December 31, 2022

 

(in thousands)

 

NAM

 

 

INTL &
Offshore

 

 

Total

 

 

NAM

 

 

INTL &
Offshore

 

 

Total

 

 

NAM

 

 

INTL &
Offshore

 

 

Total

 

Product revenues

 

$

286,802

 

 

$

240,592

 

 

$

527,394

 

 

$

297,176

 

 

$

163,626

 

 

$

460,802

 

 

$

285,722

 

 

$

116,297

 

 

$

402,019

 

Service revenues

 

 

54,952

 

 

 

28,175

 

 

 

83,127

 

 

 

58,100

 

 

 

5,291

 

 

 

63,391

 

 

 

31,653

 

 

 

1,866

 

 

 

33,519

 

Rental revenues

 

 

19,305

 

 

 

30,977

 

 

 

50,282

 

 

 

10,839

 

 

 

20,507

 

 

 

31,346

 

 

 

12,372

 

 

 

19,279

 

 

 

31,651

 

Total revenues

 

$

361,059

 

 

$

299,744

 

 

$

660,803

 

 

$

366,115

 

 

$

189,424

 

 

$

555,539

 

 

$

329,747

 

 

$

137,442

 

 

$

467,189

 

Contract Balances

Based upon the terms of the specific contract, billings may be in excess of the revenue recognized, in which case the amounts are included in contract liabilities as a liability on the Consolidated Balance Sheets. Likewise, revenue recognized may exceed customer billings, in which case the amounts are reported in contract assets.

Contract assets are recognized for revenue related to products accounted for using the over time method of accounting and are earned on completion of the performance obligations, for which consideration to be received is conditional on something other than the passage of time. The amounts recognized as contract assets are reclassified to trade receivables upon billing, as at that point, consideration is conditional only upon the passage of time. Contract liabilities represent the Company’s obligations to transfer goods or services to customers for which the Company has received consideration, in full or part, from the customer.

Balances related to contracts with customers consisted of the following:

Contract Assets (amounts shown in thousands)

 

Contract assets at December 31, 2023

 

$

-

 

Additions

 

 

9,003

 

Transfers to trade receivables, net

 

 

(3,941

)

Contract assets at December 31, 2024

 

$

5,062

 

Contract Liabilities (amounts shown in thousands)

 

Contract liabilities at December 31, 2023

 

$

-

 

Additions

 

 

19,621

 

Revenue recognized

 

 

(6,158

)

Contract liabilities at December 31, 2024

 

$

13,463

 

Obligations for returns and refunds were considered immaterial as of December 31, 2024 and 2023.

Remaining Performance Obligations

The aggregate amount of the transaction price allocated to remaining performance obligations from our over time product lines was $1.4 million as of December 31, 2024. The Company expects to recognize revenue on 100.0% of the remaining performance obligations over the next twelve months.

The Company applies the practical expedient available under ASC 606, which permits us not to disclose information about remaining performance obligations that have original expected durations of one year or less.