<?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-20261002.xsd" xlink:type="simple"/>
    <context id="C_6229d2ed-c9a2-4eb4-9058-3e3aec673aa3">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000003197</identifier>
        </entity>
        <period>
            <startDate>2026-10-02</startDate>
            <endDate>2026-10-02</endDate>
        </period>
    </context>
    <dei:EntityCentralIndexKey
      contextRef="C_6229d2ed-c9a2-4eb4-9058-3e3aec673aa3"
      id="F_2d1d894f-6f1b-4946-aab2-db6a08d94cae">0000003197</dei:EntityCentralIndexKey>
    <dei:AmendmentFlag
      contextRef="C_6229d2ed-c9a2-4eb4-9058-3e3aec673aa3"
      id="F_1dcff078-d19b-48ca-ad73-3153633c74d8">false</dei:AmendmentFlag>
    <dei:DocumentType
      contextRef="C_6229d2ed-c9a2-4eb4-9058-3e3aec673aa3"
      id="F_41e8cbf0-4924-477c-a8f8-73b84d8ca631">8-K</dei:DocumentType>
    <dei:DocumentPeriodEndDate
      contextRef="C_6229d2ed-c9a2-4eb4-9058-3e3aec673aa3"
      id="F_238015b1-e214-4595-b310-f779c299cd17">2026-10-02</dei:DocumentPeriodEndDate>
    <dei:EntityRegistrantName
      contextRef="C_6229d2ed-c9a2-4eb4-9058-3e3aec673aa3"
      id="F_1db25c06-3252-4940-bb66-e9ae6b24de00">CECO ENVIRONMENTAL CORP.</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode
      contextRef="C_6229d2ed-c9a2-4eb4-9058-3e3aec673aa3"
      id="F_89829e24-dad1-4465-a1c7-4922c54fcd2f">DE</dei:EntityIncorporationStateCountryCode>
    <dei:EntityFileNumber
      contextRef="C_6229d2ed-c9a2-4eb4-9058-3e3aec673aa3"
      id="F_5a967dc6-21ad-4e3c-bbdb-4ba08565402a">000-07099</dei:EntityFileNumber>
    <dei:EntityTaxIdentificationNumber
      contextRef="C_6229d2ed-c9a2-4eb4-9058-3e3aec673aa3"
      id="F_abe6c0c0-6705-40a5-95d5-82006d23505d">13-2566064</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1
      contextRef="C_6229d2ed-c9a2-4eb4-9058-3e3aec673aa3"
      id="F_8e792e33-4701-4a3f-8b9d-fe92d5fa0595">5080 Spectrum Drive</dei:EntityAddressAddressLine1>
    <dei:EntityAddressAddressLine2
      contextRef="C_6229d2ed-c9a2-4eb4-9058-3e3aec673aa3"
      id="F_ab59fe33-4257-4478-8321-54b25b42b060">East Tower</dei:EntityAddressAddressLine2>
    <dei:EntityAddressAddressLine3
      contextRef="C_6229d2ed-c9a2-4eb4-9058-3e3aec673aa3"
      id="F_cdbe5968-54db-44bb-b436-b30f50f10f8a">Suite 800E</dei:EntityAddressAddressLine3>
    <dei:EntityAddressCityOrTown
      contextRef="C_6229d2ed-c9a2-4eb4-9058-3e3aec673aa3"
      id="F_fdbc14fb-2365-46c8-b189-e5ab222ceb52">Addison</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince
      contextRef="C_6229d2ed-c9a2-4eb4-9058-3e3aec673aa3"
      id="F_fcee61b2-1db5-4d4b-b2ad-1e5b8233f9cc">TX</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode
      contextRef="C_6229d2ed-c9a2-4eb4-9058-3e3aec673aa3"
      id="F_43c914cc-a902-49b2-bc1f-be53041c5354">75001</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode
      contextRef="C_6229d2ed-c9a2-4eb4-9058-3e3aec673aa3"
      id="F_80adc0a1-a5ce-41f5-b73b-a01fe036faae">214</dei:CityAreaCode>
    <dei:LocalPhoneNumber
      contextRef="C_6229d2ed-c9a2-4eb4-9058-3e3aec673aa3"
      id="F_3cb53a4e-ec5d-4507-bd09-239a77d1b456">357-6181</dei:LocalPhoneNumber>
    <dei:WrittenCommunications
      contextRef="C_6229d2ed-c9a2-4eb4-9058-3e3aec673aa3"
      id="F_c04367e5-b9c8-4be6-9285-7cc9c73a9733">false</dei:WrittenCommunications>
    <dei:SolicitingMaterial
      contextRef="C_6229d2ed-c9a2-4eb4-9058-3e3aec673aa3"
      id="F_a5c2275b-06dd-49a5-ad45-1df0cd6384a4">false</dei:SolicitingMaterial>
    <dei:PreCommencementTenderOffer
      contextRef="C_6229d2ed-c9a2-4eb4-9058-3e3aec673aa3"
      id="F_91faa919-50de-4d22-91e4-d6016dddc2d6">false</dei:PreCommencementTenderOffer>
    <dei:PreCommencementIssuerTenderOffer
      contextRef="C_6229d2ed-c9a2-4eb4-9058-3e3aec673aa3"
      id="F_ce382e7b-db01-44ed-a0ab-b44a8cf68d1f">false</dei:PreCommencementIssuerTenderOffer>
    <dei:Security12bTitle
      contextRef="C_6229d2ed-c9a2-4eb4-9058-3e3aec673aa3"
      id="F_382ed6ec-d028-4499-834a-ec94a4b93328">Common Stock, par value $0.01 per share</dei:Security12bTitle>
    <dei:TradingSymbol
      contextRef="C_6229d2ed-c9a2-4eb4-9058-3e3aec673aa3"
      id="F_be49020c-5892-4e76-ad16-59a8c57ad277">CECO</dei:TradingSymbol>
    <dei:SecurityExchangeName
      contextRef="C_6229d2ed-c9a2-4eb4-9058-3e3aec673aa3"
      id="F_d4a94e60-5e1f-4808-969a-ec53886da998">NASDAQ</dei:SecurityExchangeName>
    <dei:EntityEmergingGrowthCompany
      contextRef="C_6229d2ed-c9a2-4eb4-9058-3e3aec673aa3"
      id="F_49e67c81-9e40-4af4-acb0-b5a2381a7875">false</dei:EntityEmergingGrowthCompany>
</xbrl>
