<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:dei="http://xbrl.sec.gov/dei/2026"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:xlink="http://www.w3.org/1999/xlink">
    <link:schemaRef xlink:href="prim-20260825.xsd" xlink:type="simple"/>
    <context id="Duration_8_25_2026_To_8_25_2026_po2nh6I-M0m3FZOmMmyxmQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001361538</identifier>
        </entity>
        <period>
            <startDate>2026-08-25</startDate>
            <endDate>2026-08-25</endDate>
        </period>
    </context>
    <dei:EntityCentralIndexKey
      contextRef="Duration_8_25_2026_To_8_25_2026_po2nh6I-M0m3FZOmMmyxmQ"
      id="Tc_RrmcV67Ll0im3UezX3eWHw_2_1">0001361538</dei:EntityCentralIndexKey>
    <dei:AmendmentFlag
      contextRef="Duration_8_25_2026_To_8_25_2026_po2nh6I-M0m3FZOmMmyxmQ"
      id="Tc_48_l94IkxEOi96JdgEWR7g_3_1">false</dei:AmendmentFlag>
    <dei:DocumentType
      contextRef="Duration_8_25_2026_To_8_25_2026_po2nh6I-M0m3FZOmMmyxmQ"
      id="Narr_M8jUmSI7ekOBDzl4S0nXWA">8-K</dei:DocumentType>
    <dei:DocumentPeriodEndDate
      contextRef="Duration_8_25_2026_To_8_25_2026_po2nh6I-M0m3FZOmMmyxmQ"
      id="Narr_Plwa-5MBHUGslIk8aOGd6Q">2026-08-25</dei:DocumentPeriodEndDate>
    <dei:EntityRegistrantName
      contextRef="Duration_8_25_2026_To_8_25_2026_po2nh6I-M0m3FZOmMmyxmQ"
      id="Narr_akMINigmY0CmSVwl8C8RNw">Primoris Services Corporation</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode
      contextRef="Duration_8_25_2026_To_8_25_2026_po2nh6I-M0m3FZOmMmyxmQ"
      id="Tc_FnxMBdoLG0O65XcmFN5QPA_1_0">DE</dei:EntityIncorporationStateCountryCode>
    <dei:EntityFileNumber
      contextRef="Duration_8_25_2026_To_8_25_2026_po2nh6I-M0m3FZOmMmyxmQ"
      id="Tc_JSXJ3P8i00GWalVz--vB2Q_1_2">001-34145</dei:EntityFileNumber>
    <dei:EntityTaxIdentificationNumber
      contextRef="Duration_8_25_2026_To_8_25_2026_po2nh6I-M0m3FZOmMmyxmQ"
      id="Tc_VFN66KYwn0C7psDWiRskdw_1_4">20-4743916</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1
      contextRef="Duration_8_25_2026_To_8_25_2026_po2nh6I-M0m3FZOmMmyxmQ"
      id="Narr_ONZs4T01JUKD-O9Gl6kxaA">2300 N. Field Street</dei:EntityAddressAddressLine1>
    <dei:EntityAddressAddressLine2
      contextRef="Duration_8_25_2026_To_8_25_2026_po2nh6I-M0m3FZOmMmyxmQ"
      id="Narr_HFUJQGSGRUKfVLCaPH93AA">Suite&#160;1900</dei:EntityAddressAddressLine2>
    <dei:EntityAddressCityOrTown
      contextRef="Duration_8_25_2026_To_8_25_2026_po2nh6I-M0m3FZOmMmyxmQ"
      id="Narr_AhJ7u9wgwEubfO0f9a_i9A">Dallas</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince
      contextRef="Duration_8_25_2026_To_8_25_2026_po2nh6I-M0m3FZOmMmyxmQ"
      id="Narr_7s8SVivI3UGVve4gW3F9eA">TX</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode
      contextRef="Duration_8_25_2026_To_8_25_2026_po2nh6I-M0m3FZOmMmyxmQ"
      id="Narr_U05CtdnW-0OyJ5kcJst-Gw">75201</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode
      contextRef="Duration_8_25_2026_To_8_25_2026_po2nh6I-M0m3FZOmMmyxmQ"
      id="Narr_AdHQOCZu4kmLVeVHOTKLRw">(214)</dei:CityAreaCode>
    <dei:LocalPhoneNumber
      contextRef="Duration_8_25_2026_To_8_25_2026_po2nh6I-M0m3FZOmMmyxmQ"
      id="Narr_cqtnDP1s8UOXXEOTt1ajiA">740-5600</dei:LocalPhoneNumber>
    <dei:WrittenCommunications
      contextRef="Duration_8_25_2026_To_8_25_2026_po2nh6I-M0m3FZOmMmyxmQ"
      id="Narr_Xf_k2xHRdUKfsteAJPOq-A">false</dei:WrittenCommunications>
    <dei:SolicitingMaterial
      contextRef="Duration_8_25_2026_To_8_25_2026_po2nh6I-M0m3FZOmMmyxmQ"
      id="Narr_o9Cub8WX-EGjZZAYOYdMWQ">false</dei:SolicitingMaterial>
    <dei:PreCommencementTenderOffer
      contextRef="Duration_8_25_2026_To_8_25_2026_po2nh6I-M0m3FZOmMmyxmQ"
      id="Narr_R2kGQC0K0UyAaHBImYOKbA">false</dei:PreCommencementTenderOffer>
    <dei:PreCommencementIssuerTenderOffer
      contextRef="Duration_8_25_2026_To_8_25_2026_po2nh6I-M0m3FZOmMmyxmQ"
      id="Narr_MA8a9QCtm0iZ48VmRDAUvw">false</dei:PreCommencementIssuerTenderOffer>
    <dei:Security12bTitle
      contextRef="Duration_8_25_2026_To_8_25_2026_po2nh6I-M0m3FZOmMmyxmQ"
      id="Narr_IM56IBBh60mTtYem1CGrfA">Common Stock</dei:Security12bTitle>
    <dei:TradingSymbol
      contextRef="Duration_8_25_2026_To_8_25_2026_po2nh6I-M0m3FZOmMmyxmQ"
      id="Tc_ocKbcfWYKEqZIjQTKzoNmQ_2_1">PRIM</dei:TradingSymbol>
    <dei:SecurityExchangeName
      contextRef="Duration_8_25_2026_To_8_25_2026_po2nh6I-M0m3FZOmMmyxmQ"
      id="Tc_aN9lHN__jkKGj-ut7BSeEg_2_2">NYSE</dei:SecurityExchangeName>
    <dei:EntityEmergingGrowthCompany
      contextRef="Duration_8_25_2026_To_8_25_2026_po2nh6I-M0m3FZOmMmyxmQ"
      id="Narr_vVcC9dtiF0SN5kJ3ucXYTQ">false</dei:EntityEmergingGrowthCompany>
</xbrl>
