<?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-20250729.xsd" xlink:type="simple"/>
    <context id="C_82946b02-969e-4458-a465-c7e2c109cd18">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000003197</identifier>
        </entity>
        <period>
            <startDate>2025-07-29</startDate>
            <endDate>2025-07-29</endDate>
        </period>
    </context>
    <dei:AmendmentFlag
      contextRef="C_82946b02-969e-4458-a465-c7e2c109cd18"
      id="F_2ce8cf48-7155-4bdf-affd-96d14a025729">false</dei:AmendmentFlag>
    <dei:EntityCentralIndexKey
      contextRef="C_82946b02-969e-4458-a465-c7e2c109cd18"
      id="F_e7b1bd01-cc26-4069-a9d8-56d08f93116d">0000003197</dei:EntityCentralIndexKey>
    <dei:DocumentType
      contextRef="C_82946b02-969e-4458-a465-c7e2c109cd18"
      id="F_d00e507e-6811-41a2-81c9-8dc7919dae30">8-K</dei:DocumentType>
    <dei:DocumentPeriodEndDate
      contextRef="C_82946b02-969e-4458-a465-c7e2c109cd18"
      id="F_6f180e5d-996d-467e-8b3b-9683259409de">2025-07-29</dei:DocumentPeriodEndDate>
    <dei:EntityRegistrantName
      contextRef="C_82946b02-969e-4458-a465-c7e2c109cd18"
      id="F_f9f06dcf-a209-4833-a6b8-03eeac17f2a7">CECO ENVIRONMENTAL CORP.</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode
      contextRef="C_82946b02-969e-4458-a465-c7e2c109cd18"
      id="F_949a6302-5882-4068-b45f-507bee280310">DE</dei:EntityIncorporationStateCountryCode>
    <dei:EntityFileNumber
      contextRef="C_82946b02-969e-4458-a465-c7e2c109cd18"
      id="F_ccc35084-19cb-45d4-8c31-991370c262c1">000-7099</dei:EntityFileNumber>
    <dei:EntityTaxIdentificationNumber
      contextRef="C_82946b02-969e-4458-a465-c7e2c109cd18"
      id="F_f28dee9d-93e2-47a0-9e82-e386d6fe3eda">13-2566064</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1
      contextRef="C_82946b02-969e-4458-a465-c7e2c109cd18"
      id="F_e54f6617-b1c4-4081-a8a7-5e9198b1ea3d">5080 Spectrum Drive</dei:EntityAddressAddressLine1>
    <dei:EntityAddressAddressLine2
      contextRef="C_82946b02-969e-4458-a465-c7e2c109cd18"
      id="F_43dfaa5c-6dc3-4bb1-99af-4e0d099cdd4a">Suite 800E</dei:EntityAddressAddressLine2>
    <dei:EntityAddressCityOrTown
      contextRef="C_82946b02-969e-4458-a465-c7e2c109cd18"
      id="F_76306084-ef51-4382-85b7-0bfa33ea65ca">Addison</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince
      contextRef="C_82946b02-969e-4458-a465-c7e2c109cd18"
      id="F_661c5a6b-74ad-482d-a781-6b08292901c3">TX</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode
      contextRef="C_82946b02-969e-4458-a465-c7e2c109cd18"
      id="F_7c2661eb-6f16-4d7f-804c-6b72e66603f7">75001</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode
      contextRef="C_82946b02-969e-4458-a465-c7e2c109cd18"
      id="F_b691099a-321c-43d2-8ee2-4b765739f658">214</dei:CityAreaCode>
    <dei:LocalPhoneNumber
      contextRef="C_82946b02-969e-4458-a465-c7e2c109cd18"
      id="F_1936c0dc-a2cd-46e8-a4c1-45e5e999250f">357-6181</dei:LocalPhoneNumber>
    <dei:WrittenCommunications
      contextRef="C_82946b02-969e-4458-a465-c7e2c109cd18"
      id="F_9723f3aa-54fb-4d0f-b969-785f033fb567">false</dei:WrittenCommunications>
    <dei:SolicitingMaterial
      contextRef="C_82946b02-969e-4458-a465-c7e2c109cd18"
      id="F_b30dc22c-7173-449b-ba87-c5a1f824793c">false</dei:SolicitingMaterial>
    <dei:PreCommencementTenderOffer
      contextRef="C_82946b02-969e-4458-a465-c7e2c109cd18"
      id="F_c48bc19d-bee4-41b8-b797-26672d12893f">false</dei:PreCommencementTenderOffer>
    <dei:PreCommencementIssuerTenderOffer
      contextRef="C_82946b02-969e-4458-a465-c7e2c109cd18"
      id="F_1d5ea1e9-bf26-462d-ab24-b0b26741cd5d">false</dei:PreCommencementIssuerTenderOffer>
    <dei:Security12bTitle
      contextRef="C_82946b02-969e-4458-a465-c7e2c109cd18"
      id="F_4c336dad-e53b-4e3c-a001-b5e623a65665">Common Stock, par value $0.01 per share</dei:Security12bTitle>
    <dei:TradingSymbol
      contextRef="C_82946b02-969e-4458-a465-c7e2c109cd18"
      id="F_c901a7af-a7ec-43f4-b118-6bc2115806eb">CECO</dei:TradingSymbol>
    <dei:SecurityExchangeName
      contextRef="C_82946b02-969e-4458-a465-c7e2c109cd18"
      id="F_dd01c181-2a27-4515-8ce5-43a10d073c90">NASDAQ</dei:SecurityExchangeName>
    <dei:EntityEmergingGrowthCompany
      contextRef="C_82946b02-969e-4458-a465-c7e2c109cd18"
      id="F_677fa485-020a-4a50-a78c-68755b371560">false</dei:EntityEmergingGrowthCompany>
</xbrl>
