<?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="ceco-20260609.xsd" xlink:type="simple"/>
    <context id="C_93225c89-f821-406e-8888-a044e04401d9">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000003197</identifier>
        </entity>
        <period>
            <startDate>2026-06-09</startDate>
            <endDate>2026-06-09</endDate>
        </period>
    </context>
    <dei:EntityCentralIndexKey
      contextRef="C_93225c89-f821-406e-8888-a044e04401d9"
      id="F_19263c4e-7fee-45cb-83b0-be90ebb5e192">0000003197</dei:EntityCentralIndexKey>
    <dei:AmendmentFlag
      contextRef="C_93225c89-f821-406e-8888-a044e04401d9"
      id="F_3be5977e-8909-4836-b026-fb3117960dc8">false</dei:AmendmentFlag>
    <dei:DocumentType
      contextRef="C_93225c89-f821-406e-8888-a044e04401d9"
      id="F_5e929162-05e2-4c06-be6f-94bceb385ab2">8-K</dei:DocumentType>
    <dei:DocumentPeriodEndDate
      contextRef="C_93225c89-f821-406e-8888-a044e04401d9"
      id="F_80f8d694-4e0c-4d0a-968a-9931111ef793">2026-06-09</dei:DocumentPeriodEndDate>
    <dei:EntityRegistrantName
      contextRef="C_93225c89-f821-406e-8888-a044e04401d9"
      id="F_4b509d66-bd22-4104-b94a-ff78f593aba7">CECO ENVIRONMENTAL CORP.</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode
      contextRef="C_93225c89-f821-406e-8888-a044e04401d9"
      id="F_8bbcb342-19c3-473e-97b5-6dca4ccbf8d1">DE</dei:EntityIncorporationStateCountryCode>
    <dei:EntityFileNumber
      contextRef="C_93225c89-f821-406e-8888-a044e04401d9"
      id="F_f46bf3b3-59c3-43c5-abfd-ecb676cf655b">000-07099</dei:EntityFileNumber>
    <dei:EntityTaxIdentificationNumber
      contextRef="C_93225c89-f821-406e-8888-a044e04401d9"
      id="F_857318cf-ba38-423a-8426-3628641b6ad3">13-2566064</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1
      contextRef="C_93225c89-f821-406e-8888-a044e04401d9"
      id="F_518c67c0-581d-4dcb-b258-d0bfe4c0deb4">5080 Spectrum Drive</dei:EntityAddressAddressLine1>
    <dei:EntityAddressAddressLine2
      contextRef="C_93225c89-f821-406e-8888-a044e04401d9"
      id="F_f3673ccf-c1fe-4e67-9e07-039bc5727510">East Tower</dei:EntityAddressAddressLine2>
    <dei:EntityAddressAddressLine3
      contextRef="C_93225c89-f821-406e-8888-a044e04401d9"
      id="F_15dbc619-f708-4a8a-b1d4-41d7f9632780">Suite 800E</dei:EntityAddressAddressLine3>
    <dei:EntityAddressCityOrTown
      contextRef="C_93225c89-f821-406e-8888-a044e04401d9"
      id="F_824f5b34-b241-4cab-94c2-a33cd858a864">Addison</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince
      contextRef="C_93225c89-f821-406e-8888-a044e04401d9"
      id="F_f4566d0f-2136-43b4-9ec3-7af5d42c8143">TX</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode
      contextRef="C_93225c89-f821-406e-8888-a044e04401d9"
      id="F_b8b4e925-1d03-42b1-8e65-a6a4442cda7f">75001</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode
      contextRef="C_93225c89-f821-406e-8888-a044e04401d9"
      id="F_fad4cb7f-8f7c-4ca6-8f71-f2aaed0a1fc1">214</dei:CityAreaCode>
    <dei:LocalPhoneNumber
      contextRef="C_93225c89-f821-406e-8888-a044e04401d9"
      id="F_6029a4da-a6b5-4363-b5b0-03fc17136bf9">357-6181</dei:LocalPhoneNumber>
    <dei:WrittenCommunications
      contextRef="C_93225c89-f821-406e-8888-a044e04401d9"
      id="F_c91f0d52-12fa-4a85-8d96-fde051ac1210">false</dei:WrittenCommunications>
    <dei:SolicitingMaterial
      contextRef="C_93225c89-f821-406e-8888-a044e04401d9"
      id="F_76500d38-6b23-4fc5-b06d-604581675842">false</dei:SolicitingMaterial>
    <dei:PreCommencementTenderOffer
      contextRef="C_93225c89-f821-406e-8888-a044e04401d9"
      id="F_fed8a343-b6cc-498c-be2c-9c06f1116c89">false</dei:PreCommencementTenderOffer>
    <dei:PreCommencementIssuerTenderOffer
      contextRef="C_93225c89-f821-406e-8888-a044e04401d9"
      id="F_0bd1dbca-07fe-4a8e-8c41-e4bed61a2fb6">false</dei:PreCommencementIssuerTenderOffer>
    <dei:Security12bTitle
      contextRef="C_93225c89-f821-406e-8888-a044e04401d9"
      id="F_3aa3ddfa-5470-40b5-8a75-98c6d7bf4181">Common Stock, par value $0.01 per share</dei:Security12bTitle>
    <dei:TradingSymbol
      contextRef="C_93225c89-f821-406e-8888-a044e04401d9"
      id="F_5838b26a-2643-4c3a-a2a3-61694d854374">CECO</dei:TradingSymbol>
    <dei:SecurityExchangeName
      contextRef="C_93225c89-f821-406e-8888-a044e04401d9"
      id="F_30b1fc8c-d218-4c30-9c2d-829bb2092f1b">NASDAQ</dei:SecurityExchangeName>
    <dei:EntityEmergingGrowthCompany
      contextRef="C_93225c89-f821-406e-8888-a044e04401d9"
      id="F_f5c7db6c-b709-4c0e-91a1-e5e7293b7936">false</dei:EntityEmergingGrowthCompany>
</xbrl>
