<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:dei="http://xbrl.sec.gov/dei/2025"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:xlink="http://www.w3.org/1999/xlink">
    <link:schemaRef xlink:href="prim-20260430.xsd" xlink:type="simple"/>
    <context id="Duration_4_30_2026_To_4_30_2026_rHTQ-_motUycc6aYwiYZJg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001361538</identifier>
        </entity>
        <period>
            <startDate>2026-04-30</startDate>
            <endDate>2026-04-30</endDate>
        </period>
    </context>
    <dei:EntityCentralIndexKey
      contextRef="Duration_4_30_2026_To_4_30_2026_rHTQ-_motUycc6aYwiYZJg"
      id="Tc_ESVV2UqVAUO8u7I_PcNyGg_2_1">0001361538</dei:EntityCentralIndexKey>
    <dei:AmendmentFlag
      contextRef="Duration_4_30_2026_To_4_30_2026_rHTQ-_motUycc6aYwiYZJg"
      id="Tc_HGLfb1UtNUyMvZzjwIPLUA_3_1">false</dei:AmendmentFlag>
    <dei:DocumentType
      contextRef="Duration_4_30_2026_To_4_30_2026_rHTQ-_motUycc6aYwiYZJg"
      id="Narr_5JE9RZSuAEuLPDvBkZOLBQ">8-K</dei:DocumentType>
    <dei:DocumentPeriodEndDate
      contextRef="Duration_4_30_2026_To_4_30_2026_rHTQ-_motUycc6aYwiYZJg"
      id="Narr_wXJ-AXafeEOEXXlI7CdOIA">2026-04-30</dei:DocumentPeriodEndDate>
    <dei:EntityRegistrantName
      contextRef="Duration_4_30_2026_To_4_30_2026_rHTQ-_motUycc6aYwiYZJg"
      id="Narr_9WtPIyIOpEu6kbTNzduuTg">Primoris Services Corporation</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode
      contextRef="Duration_4_30_2026_To_4_30_2026_rHTQ-_motUycc6aYwiYZJg"
      id="Tc_UbLr5DXF-UqjcDrz3c5ltA_1_0">DE</dei:EntityIncorporationStateCountryCode>
    <dei:EntityFileNumber
      contextRef="Duration_4_30_2026_To_4_30_2026_rHTQ-_motUycc6aYwiYZJg"
      id="Tc_tr6X7ej6WU6bvA0M8KDnRA_1_2">001-34145</dei:EntityFileNumber>
    <dei:EntityTaxIdentificationNumber
      contextRef="Duration_4_30_2026_To_4_30_2026_rHTQ-_motUycc6aYwiYZJg"
      id="Tc_G8H5MGuECUegjSm-xnNl0Q_1_4">20-4743916</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1
      contextRef="Duration_4_30_2026_To_4_30_2026_rHTQ-_motUycc6aYwiYZJg"
      id="Narr_hKNUFCdCHUy3I-a16yoPEw">2300 N. Field Street</dei:EntityAddressAddressLine1>
    <dei:EntityAddressAddressLine2
      contextRef="Duration_4_30_2026_To_4_30_2026_rHTQ-_motUycc6aYwiYZJg"
      id="Narr_Xheb2TiwNUGR0s46kCxi9A">Suite&#160;1900</dei:EntityAddressAddressLine2>
    <dei:EntityAddressCityOrTown
      contextRef="Duration_4_30_2026_To_4_30_2026_rHTQ-_motUycc6aYwiYZJg"
      id="Narr_6IY1UmhsCUWBwJ5YKFT4KQ">Dallas</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince
      contextRef="Duration_4_30_2026_To_4_30_2026_rHTQ-_motUycc6aYwiYZJg"
      id="Narr_P3XZ1IZvfESG0TKDYhpSNg">TX</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode
      contextRef="Duration_4_30_2026_To_4_30_2026_rHTQ-_motUycc6aYwiYZJg"
      id="Narr_o7wZ6qWY9kiSWGgNvlVPZg">75201</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode
      contextRef="Duration_4_30_2026_To_4_30_2026_rHTQ-_motUycc6aYwiYZJg"
      id="Narr_aFg4mNRhM0ezSXtEcEBO3A">(214)</dei:CityAreaCode>
    <dei:LocalPhoneNumber
      contextRef="Duration_4_30_2026_To_4_30_2026_rHTQ-_motUycc6aYwiYZJg"
      id="Narr_LcO0EEjhDUysBrsPgawsAg">740-5600</dei:LocalPhoneNumber>
    <dei:WrittenCommunications
      contextRef="Duration_4_30_2026_To_4_30_2026_rHTQ-_motUycc6aYwiYZJg"
      id="Narr_CT4kmWoEmkyI9AMOshbN7Q">false</dei:WrittenCommunications>
    <dei:SolicitingMaterial
      contextRef="Duration_4_30_2026_To_4_30_2026_rHTQ-_motUycc6aYwiYZJg"
      id="Narr_syWMRmLoGkWkzz76nxD5CA">false</dei:SolicitingMaterial>
    <dei:PreCommencementTenderOffer
      contextRef="Duration_4_30_2026_To_4_30_2026_rHTQ-_motUycc6aYwiYZJg"
      id="Narr_DJANLyarcE2JGgDji--mbw">false</dei:PreCommencementTenderOffer>
    <dei:PreCommencementIssuerTenderOffer
      contextRef="Duration_4_30_2026_To_4_30_2026_rHTQ-_motUycc6aYwiYZJg"
      id="Narr_n6Cv6N1NHkW9PYhomZxKOQ">false</dei:PreCommencementIssuerTenderOffer>
    <dei:Security12bTitle
      contextRef="Duration_4_30_2026_To_4_30_2026_rHTQ-_motUycc6aYwiYZJg"
      id="Narr_jLEQCrGBGkWCVrpOC7vR0g">Common Stock</dei:Security12bTitle>
    <dei:TradingSymbol
      contextRef="Duration_4_30_2026_To_4_30_2026_rHTQ-_motUycc6aYwiYZJg"
      id="Tc_7tPj4kQYpkmzfNzOJLlWaQ_2_1">PRIM</dei:TradingSymbol>
    <dei:SecurityExchangeName
      contextRef="Duration_4_30_2026_To_4_30_2026_rHTQ-_motUycc6aYwiYZJg"
      id="Tc_YUIiM1UxkkOCb6CvocykbA_2_2">NYSE</dei:SecurityExchangeName>
    <dei:EntityEmergingGrowthCompany
      contextRef="Duration_4_30_2026_To_4_30_2026_rHTQ-_motUycc6aYwiYZJg"
      id="Narr_t6n9fg66-EOjxfafLqKHgg">false</dei:EntityEmergingGrowthCompany>
</xbrl>
