<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:dei="http://xbrl.sec.gov/dei/2024"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:xlink="http://www.w3.org/1999/xlink">
    <link:schemaRef xlink:href="ceco-20250225.xsd" xlink:type="simple"/>
    <context id="C_5a01b432-60a6-4582-a005-a5355c4b0491">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000003197</identifier>
        </entity>
        <period>
            <startDate>2025-02-25</startDate>
            <endDate>2025-02-25</endDate>
        </period>
    </context>
    <dei:AmendmentFlag
      contextRef="C_5a01b432-60a6-4582-a005-a5355c4b0491"
      id="F_83e6edaf-402e-40f7-8ebf-127eb06da8b9">false</dei:AmendmentFlag>
    <dei:EntityCentralIndexKey
      contextRef="C_5a01b432-60a6-4582-a005-a5355c4b0491"
      id="F_aeaba71d-7634-4746-9bdd-c962fea0988b">0000003197</dei:EntityCentralIndexKey>
    <dei:DocumentType
      contextRef="C_5a01b432-60a6-4582-a005-a5355c4b0491"
      id="F_f759d1a9-b755-405d-9b51-22c46dab8b3c">8-K</dei:DocumentType>
    <dei:DocumentPeriodEndDate
      contextRef="C_5a01b432-60a6-4582-a005-a5355c4b0491"
      id="F_051f0db8-7416-45da-ac85-793cbae8ca1b">2025-02-25</dei:DocumentPeriodEndDate>
    <dei:EntityRegistrantName
      contextRef="C_5a01b432-60a6-4582-a005-a5355c4b0491"
      id="F_602d00cd-ac46-4d95-9ef9-2356295d642b">CECO ENVIRONMENTAL CORP.</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode
      contextRef="C_5a01b432-60a6-4582-a005-a5355c4b0491"
      id="F_4aecc0bf-da94-46c0-a6ba-88e65a7930be">DE</dei:EntityIncorporationStateCountryCode>
    <dei:EntityFileNumber
      contextRef="C_5a01b432-60a6-4582-a005-a5355c4b0491"
      id="F_b836b2ec-99d2-4f82-89ef-1f6570eb3fe7">000-7099</dei:EntityFileNumber>
    <dei:EntityTaxIdentificationNumber
      contextRef="C_5a01b432-60a6-4582-a005-a5355c4b0491"
      id="F_0777f247-8d37-4202-8edc-ab5abdeec927">13-2566064</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1
      contextRef="C_5a01b432-60a6-4582-a005-a5355c4b0491"
      id="F_d31571c0-fac4-4379-a4e0-509ff1793d54">5080 Spectrum Drive</dei:EntityAddressAddressLine1>
    <dei:EntityAddressAddressLine2
      contextRef="C_5a01b432-60a6-4582-a005-a5355c4b0491"
      id="F_466640d5-1854-414b-b6ec-7f0a73308c1b">East Tower</dei:EntityAddressAddressLine2>
    <dei:EntityAddressAddressLine3
      contextRef="C_5a01b432-60a6-4582-a005-a5355c4b0491"
      id="F_61a30504-2b53-46e7-bf61-b34f94838f2a">Suite 800E</dei:EntityAddressAddressLine3>
    <dei:EntityAddressCityOrTown
      contextRef="C_5a01b432-60a6-4582-a005-a5355c4b0491"
      id="F_14050af1-790f-4642-b855-036de23bb365"> Addison</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince
      contextRef="C_5a01b432-60a6-4582-a005-a5355c4b0491"
      id="F_7b6eb049-0582-4e4c-a070-b957ae586c31">TX</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode
      contextRef="C_5a01b432-60a6-4582-a005-a5355c4b0491"
      id="F_f3d606fd-a12b-460f-a3e8-54e86879fb88">75001</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode
      contextRef="C_5a01b432-60a6-4582-a005-a5355c4b0491"
      id="F_4fc17f8e-bb33-4416-9e47-5b2630fc9057">214</dei:CityAreaCode>
    <dei:LocalPhoneNumber
      contextRef="C_5a01b432-60a6-4582-a005-a5355c4b0491"
      id="F_0907d759-1293-4858-a7da-a54d056e78c4">357-6181</dei:LocalPhoneNumber>
    <dei:WrittenCommunications
      contextRef="C_5a01b432-60a6-4582-a005-a5355c4b0491"
      id="F_b199c0c1-6db9-4b33-b370-176949deca86">false</dei:WrittenCommunications>
    <dei:SolicitingMaterial
      contextRef="C_5a01b432-60a6-4582-a005-a5355c4b0491"
      id="F_3370be8c-4a78-48ad-8bef-a87ee12b66ce">false</dei:SolicitingMaterial>
    <dei:PreCommencementTenderOffer
      contextRef="C_5a01b432-60a6-4582-a005-a5355c4b0491"
      id="F_9a1ee6b8-61da-400d-b417-8d7363ad4f9a">false</dei:PreCommencementTenderOffer>
    <dei:PreCommencementIssuerTenderOffer
      contextRef="C_5a01b432-60a6-4582-a005-a5355c4b0491"
      id="F_2aa0df78-eaa1-4fc1-883c-451b4896d7a7">false</dei:PreCommencementIssuerTenderOffer>
    <dei:Security12bTitle
      contextRef="C_5a01b432-60a6-4582-a005-a5355c4b0491"
      id="F_0e9dfc50-8267-4d25-8193-eb7209680658">Common Stock, par value $0.01 per share</dei:Security12bTitle>
    <dei:TradingSymbol
      contextRef="C_5a01b432-60a6-4582-a005-a5355c4b0491"
      id="F_9f3c45d3-aa1e-4f4a-9cbd-ad0c42901cc5">CECO</dei:TradingSymbol>
    <dei:SecurityExchangeName
      contextRef="C_5a01b432-60a6-4582-a005-a5355c4b0491"
      id="F_d4bcab5a-25c3-4ed8-bdc0-e966bbca1efa">NASDAQ</dei:SecurityExchangeName>
    <dei:EntityEmergingGrowthCompany
      contextRef="C_5a01b432-60a6-4582-a005-a5355c4b0491"
      id="F_b408a816-4997-4ce4-a77b-84f5ad9684c6">false</dei:EntityEmergingGrowthCompany>
</xbrl>
