XML 39 R28.htm IDEA: XBRL DOCUMENT
v3.25.2

Revenue (Tables) | 6 Months Ended
--- | ---
Jun. 30, 2025
Revenue |
Schedule of contract assets | Contract assets consist of the following (in thousands):
​ | ​ | ​ | ​ | ​ | ​ | ​
​ | ​ | June 30, | ​ | December 31,
​ |  | 2025 |  | 2024
Unbilled revenue | ​ | $ | 621,195 | ​ | $ | 492,252
Retention receivable | ​ | ​ | 244,252 | ​ | ​ | 232,425
Contract materials (not yet installed) | ​ |  | 55,225 | ​ |  | 49,059
​ | ​ | $ | 920,672 | ​ | $ | 773,736
Schedule of contract liabilities | Contract liabilities consist of the following (in thousands):
​ | ​ | ​ | ​ | ​ | ​ | ​
​ | ​ | June 30, | ​ | December 31,
​ |  | 2025 |  | 2024
Deferred revenue | ​ | $ | 671,398 | ​ | $ | 614,328
Accrued loss provision | ​ |  | 2,849 | ​ |  | 3,096
​ | ​ | $ | 674,247 | ​ | $ | 617,424
Schedule of revenue disaggregation by various categories | MSA and Non-MSA revenue was as follows (in thousands): ​
​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​
​ | ​ | For the three months ended June 30, 2025
Segment |  | MSA |  | Non-MSA |  | Total
Utilities | ​ | $ | 539,458 |  | $ | 153,563 |  | $ | 693,021
Energy | ​ | ​ | 63,918 | ​ | ​ | 1,172,889 | ​ | ​ | 1,236,807
Intersegment eliminations | ​ | ​ | (387) | ​ | ​ | (38,696) | ​ | ​ | (39,083)
Total | ​ | $ | 602,989 |  | $ | 1,287,756 |  | $ | 1,890,745
​
​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​
​ | ​ | For the six months ended June 30, 2025
Segment |  | MSA |  | Non-MSA |  | Total
Utilities | ​ | $ | 991,541 | ​ | ​ | 264,887 | ​ | $ | 1,256,428
Energy | ​ | ​ | 102,328 | ​ | ​ | 2,242,821 | ​ | ​ | 2,345,149
Intersegment eliminations | ​ | ​ | (928) | ​ | ​ | (61,791) | ​ | ​ | (62,719)
Total | ​ | $ | 1,092,941 |  | $ | 2,445,917 |  | $ | 3,538,858
​
​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​
​ | ​ | For the three months ended June 30, 2024
Segment | ​ | MSA |  | Non-MSA |  | Total
Utilities | ​ | $ | 496,458 |  | $ | 124,340 |  | $ | 620,798
Energy | ​ | ​ | 77,952 | ​ | ​ | 895,540 | ​ | ​ | 973,492
Intersegment eliminations | ​ | ​ | (44) | ​ | ​ | (30,531) | ​ | ​ | (30,575)
Total | ​ | $ | 574,366 |  | $ | 989,349 |  | $ | 1,563,715
​
​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​
​ | ​ | For the six months ended June 30, 2024
Segment | ​ | MSA | ​ | Non-MSA | ​ | Total
Utilities | ​ | $ | 877,956 | ​ | $ | 230,766 | ​ | $ | 1,108,722
Energy | ​ | ​ | 170,718 | ​ | ​ | 1,750,352 | ​ | ​ | 1,921,070
Intersegment eliminations | ​ | ​ | (238) | ​ | ​ | (53,132) | ​ | ​ | (53,370)
Total | ​ | $ | 1,048,436 |  | $ | 1,927,986 |  | $ | 2,976,422
​ ​ Revenue by contract type was as follows (in thousands): ​
​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​
​ | ​ | For the three months ended June 30, 2025
Segment |  | Fixed-Price |  | Unit-Price |  | Cost Reimbursable (1) |  | Total
Utilities | ​ | $ | 110,536 |  | $ | 443,781 |  | $ | 138,704 |  | $ | 693,021
Energy | ​ | ​ | 899,404 | ​ | ​ | 146,997 | ​ | ​ | 190,406 | ​ | ​ | 1,236,807
Intersegment eliminations | ​ | ​ | (32,125) | ​ | ​ | (6,444) | ​ | ​ | (514) | ​ | ​ | (39,083)
Total | ​ | $ | 977,815 |  | $ | 584,334 |  | $ | 328,596 |  | $ | 1,890,745
​
​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​
​ | ​ | For the six months ended June 30, 2025
Segment |  | Fixed-Price |  | Unit-Price |  | Cost Reimbursable (1) |  | Total
Utilities | ​ | $ | 188,466 | ​ | $ | 788,152 | ​ | $ | 279,810 | ​ | $ | 1,256,428
Energy | ​ | ​ | 1,676,354 | ​ | ​ | 294,169 | ​ | ​ | 374,626 | ​ | ​ | 2,345,149
Intersegment eliminations | ​ | ​ | (51,252) | ​ | ​ | (9,906) | ​ | ​ | (1,561) | ​ | ​ | (62,719)
Total | ​ | $ | 1,813,568 |  | $ | 1,072,415 |  | $ | 652,875 |  | $ | 3,538,858
| (1) | Includes time and material and cost reimbursable plus fee contracts.
​
​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​
​ | ​ | For the three months ended June 30, 2024
Segment | ​ | Fixed-Price |  | Unit-Price |  | Cost Reimbursable (1) |  | Total
Utilities | ​ | $ | 93,571 |  | $ | 387,980 |  | $ | 139,247 |  | $ | 620,798
Energy | ​ | ​ | 539,406 | ​ | ​ | 164,600 | ​ | ​ | 269,486 | ​ | ​ | 973,492
Intersegment eliminations | ​ | ​ | (30,536) | ​ | ​ | (12) | ​ | ​ | (27) | ​ | ​ | (30,575)
Total | ​ | $ | 602,441 |  | $ | 552,568 |  | $ | 408,706 |  | $ | 1,563,715
| (1) | Includes time and material and cost reimbursable plus fee contracts.
​
​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​
​ | ​ | For the six months ended June 30, 2024
Segment | ​ | Fixed-Price | ​ | Unit-Price | ​ | Cost Reimbursable (1) | ​ | Total
Utilities | ​ | $ | 180,571 | ​ | $ | 685,405 | ​ | $ | 242,746 | ​ | $ | 1,108,722
Energy | ​ | ​ | 1,142,706 | ​ | ​ | 307,389 | ​ | ​ | 470,975 | ​ | ​ | 1,921,070
Intersegment eliminations | ​ | ​ | (51,485) | ​ | ​ | (1,765) | ​ | ​ | (120) | ​ | ​ | (53,370)
Total | ​ | $ | 1,271,792 |  | $ | 991,029 |  | $ | 713,601 |  | $ | 2,976,422

X
- Definition Tabular disclosure of contract assets balances and changes in contract assets balances. + References No definition available. + Details
Name: | prim_ContractWithCustomerAssetTableTextBlock
Namespace Prefix: | prim_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- Definition Tabular disclosure of contract liabilities balances and changes in contract liabilities balances. + References No definition available. + Details
Name: | prim_ContractWithCustomerLiabilityTableTextBlock
Namespace Prefix: | prim_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- Definition Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor. + References Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 5 -Publisher FASB -URI https://asc.fasb.org/1943274/2147479806/606-10-50-5 + Details
Name: | us-gaap_DisaggregationOfRevenueTableTextBlock
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

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