XML 58 R48.htm IDEA: XBRL DOCUMENT
v3.22.1

Revenue - Disaggregation of revenue by customer type and contract type (Details) - USD ($) $ in Thousands | 3 Months Ended
--- | ---
Mar. 31, 2022 | Mar. 31, 2021
Disaggregation of Revenue |  |
Revenue | $ 784,384 | $ 818,329
Fixed price |  |
Disaggregation of Revenue |  |
Revenue | 305,690 | 328,907
Unit price |  |
Disaggregation of Revenue |  |
Revenue | 325,546 | 309,151
Cost reimbursable |  |
Disaggregation of Revenue |  |
Revenue | 153,148 | 180,271
MSA |  |
Disaggregation of Revenue |  |
Revenue | 349,295 | 338,263
Non-MSA |  |
Disaggregation of Revenue |  |
Revenue | 435,089 | 480,066
Utilities |  |
Disaggregation of Revenue |  |
Revenue | 358,728 | 335,012
Utilities | Fixed price |  |
Disaggregation of Revenue |  |
Revenue | 31,517 | 27,516
Utilities | Unit price |  |
Disaggregation of Revenue |  |
Revenue | 242,309 | 229,743
Utilities | Cost reimbursable |  |
Disaggregation of Revenue |  |
Revenue | 84,902 | 77,753
Utilities | MSA |  |
Disaggregation of Revenue |  |
Revenue | 290,366 | 277,967
Utilities | Non-MSA |  |
Disaggregation of Revenue |  |
Revenue | 68,362 | 57,045
Energy/Renewables |  |
Disaggregation of Revenue |  |
Revenue | 359,050 | 352,864
Energy/Renewables | Fixed price |  |
Disaggregation of Revenue |  |
Revenue | 219,021 | 188,234
Energy/Renewables | Unit price |  |
Disaggregation of Revenue |  |
Revenue | 82,572 | 78,743
Energy/Renewables | Cost reimbursable |  |
Disaggregation of Revenue |  |
Revenue | 57,457 | 85,887
Energy/Renewables | MSA |  |
Disaggregation of Revenue |  |
Revenue | 45,234 | 42,586
Energy/Renewables | Non-MSA |  |
Disaggregation of Revenue |  |
Revenue | 313,816 | 310,278
Pipeline |  |
Disaggregation of Revenue |  |
Revenue | 66,606 | 130,453
Pipeline | Fixed price |  |
Disaggregation of Revenue |  |
Revenue | 55,152 | 113,157
Pipeline | Unit price |  |
Disaggregation of Revenue |  |
Revenue | 665 | 665
Pipeline | Cost reimbursable |  |
Disaggregation of Revenue |  |
Revenue | 10,789 | 16,631
Pipeline | MSA |  |
Disaggregation of Revenue |  |
Revenue | 13,695 | 17,710
Pipeline | Non-MSA |  |
Disaggregation of Revenue |  |
Revenue | $ 52,911 | $ 112,743

X
- Definition Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table. + References No definition available. + Details
Name: | us-gaap_DisaggregationOfRevenueLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 280 -SubTopic 10 -Section 50 -Paragraph 30 -Subparagraph (a) -URI http://asc.fasb.org/extlink&oid=123359005&loc=d3e8906-108599 Reference 2: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 280 -SubTopic 10 -Section 50 -Paragraph 40 -URI http://asc.fasb.org/extlink&oid=123359005&loc=d3e9031-108599 Reference 3: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 280 -SubTopic 10 -Section 50 -Paragraph 41 -Subparagraph (a) -URI http://asc.fasb.org/extlink&oid=123359005&loc=d3e9038-108599 Reference 4: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 280 -SubTopic 10 -Section 50 -Paragraph 32 -Subparagraph (b) -URI http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599 Reference 5: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 280 -SubTopic 10 -Section 50 -Paragraph 32 -Subparagraph (a) -URI http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599 Reference 6: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 50 -Paragraph 4 -Subparagraph (a) -URI http://asc.fasb.org/extlink&oid=123351226&loc=SL49130543-203045 Reference 7: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 280 -SubTopic 10 -Section 50 -Paragraph 22 -Subparagraph (b) -URI http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599 Reference 8: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 280 -SubTopic 10 -Section 50 -Paragraph 22 -Subparagraph (a) -URI http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599 Reference 9: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 280 -SubTopic 10 -Section 50 -Paragraph 42 -URI http://asc.fasb.org/extlink&oid=123359005&loc=d3e9054-108599 Reference 10: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 50 -Paragraph 5 -URI http://asc.fasb.org/extlink&oid=123351226&loc=SL49130545-203045 Reference 11: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 924 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SAB Topic 11.L) -URI http://asc.fasb.org/extlink&oid=6472922&loc=d3e499488-122856 + Details
Name: | us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Details
Name: | us-gaap_ContractWithCustomerBasisOfPricingAxis=us-gaap_FixedPriceContractMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ContractWithCustomerBasisOfPricingAxis=prim_UnitPriceContractsMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ContractWithCustomerBasisOfPricingAxis=prim_CostReimbursableContractsMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_MajorCustomersAxis=prim_MasterServiceAgreementCustomersMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_MajorCustomersAxis=prim_NonMasterServiceAgreementCustomersMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_StatementBusinessSegmentsAxis=prim_UAndDSegmentMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_StatementBusinessSegmentsAxis=prim_EnergyRenewablesMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_StatementBusinessSegmentsAxis=prim_PipelineServicesMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |