<?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="ceco-20251028.xsd" xlink:type="simple"/>
    <context id="C_e8834eb0-c4c0-4807-a796-bcb2653d17f5">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000003197</identifier>
        </entity>
        <period>
            <startDate>2025-10-28</startDate>
            <endDate>2025-10-28</endDate>
        </period>
    </context>
    <dei:AmendmentFlag
      contextRef="C_e8834eb0-c4c0-4807-a796-bcb2653d17f5"
      id="F_f708daae-bd12-4649-969b-eb71cafae97d">false</dei:AmendmentFlag>
    <dei:EntityCentralIndexKey
      contextRef="C_e8834eb0-c4c0-4807-a796-bcb2653d17f5"
      id="F_19cc5028-ca46-4397-9f1c-69c0c25b5287">0000003197</dei:EntityCentralIndexKey>
    <dei:DocumentType
      contextRef="C_e8834eb0-c4c0-4807-a796-bcb2653d17f5"
      id="F_91784335-0dbd-4d0d-959f-7c2835bf9abe">8-K</dei:DocumentType>
    <dei:DocumentPeriodEndDate
      contextRef="C_e8834eb0-c4c0-4807-a796-bcb2653d17f5"
      id="F_2bdc13ba-4f2c-428b-b469-876e724a3130">2025-10-28</dei:DocumentPeriodEndDate>
    <dei:EntityRegistrantName
      contextRef="C_e8834eb0-c4c0-4807-a796-bcb2653d17f5"
      id="F_7682478e-2f2f-4627-bad5-2ad396a868b2">CECO ENVIRONMENTAL CORP.</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode
      contextRef="C_e8834eb0-c4c0-4807-a796-bcb2653d17f5"
      id="F_070cebf6-5fbd-4846-9ac8-82c11f851d8e">DE</dei:EntityIncorporationStateCountryCode>
    <dei:EntityFileNumber
      contextRef="C_e8834eb0-c4c0-4807-a796-bcb2653d17f5"
      id="F_297b5d9a-c9b5-4946-ab08-8115ebe123e7">000-7099</dei:EntityFileNumber>
    <dei:EntityTaxIdentificationNumber
      contextRef="C_e8834eb0-c4c0-4807-a796-bcb2653d17f5"
      id="F_e2bfaca2-de03-463e-ac2c-f8931ab922f3">13-2566064</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1
      contextRef="C_e8834eb0-c4c0-4807-a796-bcb2653d17f5"
      id="F_91914e73-83b9-4cf1-937f-609e58deb61e">5080 Spectrum Drive</dei:EntityAddressAddressLine1>
    <dei:EntityAddressAddressLine2
      contextRef="C_e8834eb0-c4c0-4807-a796-bcb2653d17f5"
      id="F_9db1c66f-e131-43b5-ba3d-182abe37ce51">Suite 800E</dei:EntityAddressAddressLine2>
    <dei:EntityAddressCityOrTown
      contextRef="C_e8834eb0-c4c0-4807-a796-bcb2653d17f5"
      id="F_7d46e64f-a3c1-4f6b-a36c-05cf96b8c58b">Addison</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince
      contextRef="C_e8834eb0-c4c0-4807-a796-bcb2653d17f5"
      id="F_3ec485d2-fb1e-4beb-a276-5497d2e3d68e">TX</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode
      contextRef="C_e8834eb0-c4c0-4807-a796-bcb2653d17f5"
      id="F_c0939a2c-c053-41fd-99f1-d4ad968f59b2">75001</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode
      contextRef="C_e8834eb0-c4c0-4807-a796-bcb2653d17f5"
      id="F_4670ce7c-fc51-45d6-8592-c0adf238d616">214</dei:CityAreaCode>
    <dei:LocalPhoneNumber
      contextRef="C_e8834eb0-c4c0-4807-a796-bcb2653d17f5"
      id="F_8b7d14b1-1c9f-4a91-855b-85a7329c849d">357-6181</dei:LocalPhoneNumber>
    <dei:WrittenCommunications
      contextRef="C_e8834eb0-c4c0-4807-a796-bcb2653d17f5"
      id="F_5253c74b-c545-4cab-a94b-e6813032c790">false</dei:WrittenCommunications>
    <dei:SolicitingMaterial
      contextRef="C_e8834eb0-c4c0-4807-a796-bcb2653d17f5"
      id="F_14c61573-afba-4dae-906c-118aab0c343f">false</dei:SolicitingMaterial>
    <dei:PreCommencementTenderOffer
      contextRef="C_e8834eb0-c4c0-4807-a796-bcb2653d17f5"
      id="F_adf4e8f8-5df9-48e9-a8fd-ceba29e5d9a3">false</dei:PreCommencementTenderOffer>
    <dei:PreCommencementIssuerTenderOffer
      contextRef="C_e8834eb0-c4c0-4807-a796-bcb2653d17f5"
      id="F_a58ca4e5-e872-4d4f-ac1f-f9ec72366890">false</dei:PreCommencementIssuerTenderOffer>
    <dei:Security12bTitle
      contextRef="C_e8834eb0-c4c0-4807-a796-bcb2653d17f5"
      id="F_123e2960-8456-45e2-9288-f77fe5e1db31">Common Stock, par value $0.01 per share</dei:Security12bTitle>
    <dei:TradingSymbol
      contextRef="C_e8834eb0-c4c0-4807-a796-bcb2653d17f5"
      id="F_f6336fbc-3978-4b47-914c-25354e8519c9">CECO</dei:TradingSymbol>
    <dei:SecurityExchangeName
      contextRef="C_e8834eb0-c4c0-4807-a796-bcb2653d17f5"
      id="F_c4ea2758-2a8a-4791-b772-eef1d8b36ad4">NASDAQ</dei:SecurityExchangeName>
    <dei:EntityEmergingGrowthCompany
      contextRef="C_e8834eb0-c4c0-4807-a796-bcb2653d17f5"
      id="F_83610fa6-3c52-4363-ba61-03d8c417f55a">false</dei:EntityEmergingGrowthCompany>
</xbrl>
