XML 36 R25.htm IDEA: XBRL DOCUMENT
v3.26.1

Business Segments (Tables) | 6 Months Ended
--- | ---
Jun. 30, 2026
Segment Reporting [Abstract] |
Schedule of Financial Data by Segment and Assets by Reportable Segment | Summary financial data by segment follows (in thousands):
|  | Three Months Ended June 30, 2026 |  | Six Months Ended June 30, 2026
|  | Drilling and Completions |  | Artificial Lift and Downhole |  | Total |  | Drilling and Completions |  | Artificial Lift and Downhole |  | Total
Revenue from external customers |  | $ | 138,795 |  |  | $ | 87,422 |  |  | $ | 226,217 |  |  | $ | 265,397 |  |  | $ | 169,520 |  |  | $ | 434,917 |
Intersegment revenue |  | 209 |  |  | — |  |  | 209 |  |  | 346 |  |  | — |  |  | 346 |
Segment revenue |  | 139,004 |  |  | 87,422 |  |  | 226,426 |  |  | 265,743 |  |  | 169,520 |  |  | 435,263 |
Elimination of intersegment revenue |  |  |  |  |  | (209) |  |  |  |  |  |  | (346) |
Total consolidated revenue |  |  |  |  |  | 226,217 |  |  |  |  |  |  | 434,917 |
Less: |  |  |  |  |  |  |  |  |  |  |  |
Cost of sales |  | 103,666 |  |  | 51,408 |  |  | 155,074 |  |  | 200,216 |  |  | 102,704 |  |  | 302,920 |
Selling, general and administrative expenses |  | 21,623 |  |  | 19,664 |  |  | 41,287 |  |  | 42,903 |  |  | 38,882 |  |  | 81,785 |
Segment operating income |  | $ | 13,715 |  |  | $ | 16,350 |  |  | $ | 30,065 |  |  | $ | 22,624 |  |  | $ | 27,934 |  |  | $ | 50,558 |
|  | Three Months Ended June 30, 2025 |  | Six Months Ended June 30, 2025
|  | Drilling and Completions |  | Artificial Lift and Downhole |  | Total |  | Drilling and Completions |  | Artificial Lift and Downhole |  | Total
Revenue from external customers |  | $ | 117,217 |  |  | $ | 82,547 |  |  | $ | 199,764 |  |  | $ | 232,700 |  |  | $ | 160,343 |  |  | $ | 393,043 |
Intersegment revenue |  | 20 |  |  | — |  |  | 20 |  |  | 106 |  |  | — |  |  | 106 |
Segment revenue |  | 117,237 |  |  | 82,547 |  |  | 199,784 |  |  | 232,806 |  |  | 160,343 |  |  | 393,149 |
Elimination of intersegment revenue |  |  |  |  |  | (20) |  |  |  |  |  |  | (106) |
Total consolidated revenue |  |  |  |  |  | 199,764 |  |  |  |  |  |  | 393,043 |
Less: |  |  |  |  |  |  |  |  |  |  |  |
Cost of sales |  | 88,211 |  |  | 52,217 |  |  | 140,428 |  |  | 172,565 |  |  | 102,867 |  |  | 275,432 |
Selling, general and administrative expenses |  | 21,755 |  |  | 19,939 |  |  | 41,694 |  |  | 43,591 |  |  | 39,788 |  |  | 83,379 |
Segment operating income |  | $ | 7,271 |  |  | $ | 10,391 |  |  | $ | 17,662 |  |  | $ | 16,650 |  |  | $ | 17,688 |  |  | $ | 34,338 |
A reconciliation of segment operating income to income before income taxes is as follows (in thousands):
| Three Months Ended |  | Six Months Ended
| June 30, |  | June 30,
| 2026 |  | 2025 |  | 2026 |  | 2025
Segment operating income | $ | 30,065 |  |  | $ | 17,662 |  |  | $ | 50,558 |  |  | $ | 34,338 |
Less: |  |  |  |  |  |  |
Other corporate expenses | 8,973 |  |  | 9,491 |  |  | 18,483 |  |  | 17,189 |
Transaction expenses | 125 |  |  | 184 |  |  | 273 |  |  | 235 |
Gain on sale-leaseback transactions | — |  |  | (6,903) |  |  | — |  |  | (6,903) |
Loss on disposal of assets and other | 460 |  |  | 207 |  |  | 290 |  |  | 330 |
Interest expense | 4,272 |  |  | 4,706 |  |  | 8,413 |  |  | 9,689 |
Foreign exchange losses (gains) and other, net | 226 |  |  | (3,942) |  |  | (297) |  |  | (5,010) |
Income before income taxes | $ | 16,009 |  |  | $ | 13,919 |  |  | $ | 23,396 |  |  | $ | 18,808 |
A summary of consolidated assets by reportable segment is as follows (in thousands):
| June 30, 2026 |  | December 31, 2025
Drilling and Completions | $ | 399,816 |  |  | $ | 385,401 |
Artificial Lift and Downhole | 345,220 |  |  | 353,505 |
Corporate | 25,674 |  |  | 13,549 |
Total assets | $ | 770,710 |  |  | $ | 752,455 |
Schedule of Revenues Disaggregated by Product Line | The following table presents our revenues disaggregated by product line (in thousands):
| Three Months Ended |  | Six Months Ended
| June 30, |  | June 30,
| 2026 |  | 2025 |  | 2026 |  | 2025
Drilling | $ | 35,535 |  |  | $ | 32,846 |  |  | $ | 68,265 |  |  | $ | 64,959 |
Subsea | 33,516 |  |  | 22,389 |  |  | 69,011 |  |  | 44,529 |
Stimulation and Intervention | 38,181 |  |  | 32,856 |  |  | 71,228 |  |  | 70,284 |
Coiled Tubing | 31,772 |  |  | 29,146 |  |  | 57,239 |  |  | 53,034 |
Downhole | 61,040 |  |  | 51,284 |  |  | 111,599 |  |  | 98,952 |
Production Equipment | 13,444 |  |  | 20,662 |  |  | 32,194 |  |  | 39,721 |
Valve Solutions | 12,938 |  |  | 10,601 |  |  | 25,727 |  |  | 21,670 |
Eliminations | (209) |  |  | (20) |  |  | (346) |  |  | (106) |
Total revenue | $ | 226,217 |  |  | $ | 199,764 |  |  | $ | 434,917 |  |  | $ | 393,043 |
Schedule of Revenue Disaggregated by Geography | The following table presents our revenues disaggregated by geography (in thousands):
| Three Months Ended |  | Six Months Ended
| June 30, |  | June 30,
| 2026 |  | 2025 |  | 2026 |  | 2025
United States | $ | 104,720 |  |  | $ | 107,276 |  |  | $ | 197,858 |  |  | $ | 211,179 |
Canada | 47,901 |  |  | 31,021 |  |  | 90,819 |  |  | 62,458 |
Europe & Africa | 28,093 |  |  | 18,605 |  |  | 57,101 |  |  | 38,393 |
Middle East | 20,789 |  |  | 21,931 |  |  | 39,834 |  |  | 41,576 |
Latin America | 14,812 |  |  | 10,866 |  |  | 26,439 |  |  | 18,929 |
Asia-Pacific | 9,902 |  |  | 10,065 |  |  | 22,866 |  |  | 20,508 |
Total revenue | $ | 226,217 |  |  | $ | 199,764 |  |  | $ | 434,917 |  |  | $ | 393,043 |

X
- Definition Tabular disclosure of revenue by product and service if it is not provided as part of reportable segment information. + References Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 40 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-40 + Details
Name: | us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTextBlock
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- Definition Tabular disclosure of revenue attributed to and long-lived asset located in country of domicile and foreign country from which revenue is derived and in which asset is held, if it is not provided as part of reportable segment information. Long-lived asset excludes financial instrument, long-term customer relationship of financial institution, mortgage and other servicing rights, deferred policy acquisition cost, and deferred tax asset. Includes, but is not limited to, subtotal of geographical information about group of countries. + References Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 41 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-41 + Details
Name: | us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- Definition Tabular disclosure of segment reporting. Includes, but is not limited to, reconciliation of reportable segment amount to corresponding consolidated total. + References Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 31 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-31 Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 34 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-34 Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 32 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32 Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 30 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30 Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 26C -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-26C Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 26B -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-26B Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 26A -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-26A Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 25 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-25 Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 22 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22 Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 15 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-15 + Details
Name: | us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- References No definition available. + Details
Name: | us-gaap_SegmentReportingAbstract
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration