<?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-20260224.xsd" xlink:type="simple"/>
    <context id="C_39c68686-5008-464b-9653-2f1b4ce1ff32">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000003197</identifier>
        </entity>
        <period>
            <startDate>2026-02-24</startDate>
            <endDate>2026-02-24</endDate>
        </period>
    </context>
    <dei:EntityCentralIndexKey
      contextRef="C_39c68686-5008-464b-9653-2f1b4ce1ff32"
      id="F_4ce0fe92-80f4-490e-9d5b-7ab49fa3b3ab">0000003197</dei:EntityCentralIndexKey>
    <dei:AmendmentFlag
      contextRef="C_39c68686-5008-464b-9653-2f1b4ce1ff32"
      id="F_fab47576-cb2c-4ef2-a4b3-647c405670d4">false</dei:AmendmentFlag>
    <dei:DocumentType
      contextRef="C_39c68686-5008-464b-9653-2f1b4ce1ff32"
      id="F_071dc47c-197f-4d6e-a20a-e24848583bb1">8-K</dei:DocumentType>
    <dei:DocumentPeriodEndDate
      contextRef="C_39c68686-5008-464b-9653-2f1b4ce1ff32"
      id="F_66f754b8-5739-470c-8bd8-424aa538cf0a">2026-02-24</dei:DocumentPeriodEndDate>
    <dei:EntityRegistrantName
      contextRef="C_39c68686-5008-464b-9653-2f1b4ce1ff32"
      id="F_df4fbac6-3c3a-46c7-be55-5d04c9727802">CECO ENVIRONMENTAL CORP.</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode
      contextRef="C_39c68686-5008-464b-9653-2f1b4ce1ff32"
      id="F_28d8b74a-756d-4435-bd11-c3474541859e">DE</dei:EntityIncorporationStateCountryCode>
    <dei:EntityFileNumber
      contextRef="C_39c68686-5008-464b-9653-2f1b4ce1ff32"
      id="F_41d70981-cf22-43d4-93f5-f7048d94bbcf">000-7099</dei:EntityFileNumber>
    <dei:EntityTaxIdentificationNumber
      contextRef="C_39c68686-5008-464b-9653-2f1b4ce1ff32"
      id="F_306bc6bd-b61a-4ad0-bb27-5049b50d4992">13-2566064</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1
      contextRef="C_39c68686-5008-464b-9653-2f1b4ce1ff32"
      id="F_e69d0dfd-6f54-41c1-8b0c-8dc582ee0cd0">5080 Spectrum Drive</dei:EntityAddressAddressLine1>
    <dei:EntityAddressAddressLine2
      contextRef="C_39c68686-5008-464b-9653-2f1b4ce1ff32"
      id="F_4902a4a7-8748-424f-a0a9-15857a5fa23f">East Tower</dei:EntityAddressAddressLine2>
    <dei:EntityAddressAddressLine3
      contextRef="C_39c68686-5008-464b-9653-2f1b4ce1ff32"
      id="F_43366974-13d9-40b5-bbef-beade8a31e73">Suite 800E</dei:EntityAddressAddressLine3>
    <dei:EntityAddressCityOrTown
      contextRef="C_39c68686-5008-464b-9653-2f1b4ce1ff32"
      id="F_da68f934-eff8-4ec8-b2db-5e01c642104a"> Addison</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince
      contextRef="C_39c68686-5008-464b-9653-2f1b4ce1ff32"
      id="F_a5cbe3a7-f117-4bcc-a709-1ecd07ca34e6">TX</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode
      contextRef="C_39c68686-5008-464b-9653-2f1b4ce1ff32"
      id="F_fb94d041-ef1d-474b-85d8-b9239b096418">75001</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode
      contextRef="C_39c68686-5008-464b-9653-2f1b4ce1ff32"
      id="F_81e454c5-ec8a-4957-ad6c-fc399095f833">214</dei:CityAreaCode>
    <dei:LocalPhoneNumber
      contextRef="C_39c68686-5008-464b-9653-2f1b4ce1ff32"
      id="F_3acee5bc-1f9c-472b-99ae-85604f194dee">357-6181</dei:LocalPhoneNumber>
    <dei:WrittenCommunications
      contextRef="C_39c68686-5008-464b-9653-2f1b4ce1ff32"
      id="F_d27129f6-ba8b-4f2f-84e6-871328150722">true</dei:WrittenCommunications>
    <dei:SolicitingMaterial
      contextRef="C_39c68686-5008-464b-9653-2f1b4ce1ff32"
      id="F_a63f689a-ff0e-4929-b97c-20533962bb66">false</dei:SolicitingMaterial>
    <dei:PreCommencementTenderOffer
      contextRef="C_39c68686-5008-464b-9653-2f1b4ce1ff32"
      id="F_1eb1c570-2aa2-4a3e-bd80-4103d5e9d13d">false</dei:PreCommencementTenderOffer>
    <dei:PreCommencementIssuerTenderOffer
      contextRef="C_39c68686-5008-464b-9653-2f1b4ce1ff32"
      id="F_c9d44624-c97f-4711-a5f4-0a425ccb168a">false</dei:PreCommencementIssuerTenderOffer>
    <dei:Security12bTitle
      contextRef="C_39c68686-5008-464b-9653-2f1b4ce1ff32"
      id="F_7224cdf6-4bcb-4ee8-be9f-7df96d9732e3">Common Stock, par value $0.01 per share</dei:Security12bTitle>
    <dei:TradingSymbol
      contextRef="C_39c68686-5008-464b-9653-2f1b4ce1ff32"
      id="F_1d650022-4607-448e-810d-22359ff046c6">CECO</dei:TradingSymbol>
    <dei:SecurityExchangeName
      contextRef="C_39c68686-5008-464b-9653-2f1b4ce1ff32"
      id="F_611f1df6-4740-4122-bbf9-f68d29728480">NASDAQ</dei:SecurityExchangeName>
    <dei:EntityEmergingGrowthCompany
      contextRef="C_39c68686-5008-464b-9653-2f1b4ce1ff32"
      id="F_1c9f38f1-629b-4b05-8693-5de83d7113ba">false</dei:EntityEmergingGrowthCompany>
</xbrl>
