<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xml:lang="en-US"
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:dei="http://xbrl.sec.gov/dei/2021q4"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:xlink="http://www.w3.org/1999/xlink">
    <link:schemaRef xlink:href="cdxs-20230504.xsd" xlink:type="simple"/>
    <context id="i8405dfb40b3c40f4863790641d381d96_D20230504-20230504">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001200375</identifier>
        </entity>
        <period>
            <startDate>2023-05-04</startDate>
            <endDate>2023-05-04</endDate>
        </period>
    </context>
    <dei:EntityCentralIndexKey
      contextRef="i8405dfb40b3c40f4863790641d381d96_D20230504-20230504"
      id="id3VybDovL2RvY3MudjEvZG9jOmU5NzYwZTViZTFjNzRlYTBiNzMyM2M5ZjkwZmJhMzQwL3NlYzplOTc2MGU1YmUxYzc0ZWEwYjczMjNjOWY5MGZiYTM0MF80L2ZyYWc6M2U5ZTg4Nzg3ZDIzNDcxMzkwNTdhNzBhYTBmZDNlOGEvdGFibGU6NzhmMWQ2ZTdhZjRlNDJlNGFhOWZlOTM5NzkwYzJhNDcvdGFibGVyYW5nZTo3OGYxZDZlN2FmNGU0MmU0YWE5ZmU5Mzk3OTBjMmE0N18xLTEtMS0xLTEzNjg1Ng_f76d22da-572c-4ff9-b051-515a60efab3c">0001200375</dei:EntityCentralIndexKey>
    <dei:AmendmentFlag
      contextRef="i8405dfb40b3c40f4863790641d381d96_D20230504-20230504"
      id="id3VybDovL2RvY3MudjEvZG9jOmU5NzYwZTViZTFjNzRlYTBiNzMyM2M5ZjkwZmJhMzQwL3NlYzplOTc2MGU1YmUxYzc0ZWEwYjczMjNjOWY5MGZiYTM0MF80L2ZyYWc6M2U5ZTg4Nzg3ZDIzNDcxMzkwNTdhNzBhYTBmZDNlOGEvdGFibGU6NzhmMWQ2ZTdhZjRlNDJlNGFhOWZlOTM5NzkwYzJhNDcvdGFibGVyYW5nZTo3OGYxZDZlN2FmNGU0MmU0YWE5ZmU5Mzk3OTBjMmE0N18yLTEtMS0xLTEzNjg1Ng_076aa656-321e-43cf-90e9-586948ea0516">false</dei:AmendmentFlag>
    <dei:DocumentType
      contextRef="i8405dfb40b3c40f4863790641d381d96_D20230504-20230504"
      id="id3VybDovL2RvY3MudjEvZG9jOmU5NzYwZTViZTFjNzRlYTBiNzMyM2M5ZjkwZmJhMzQwL3NlYzplOTc2MGU1YmUxYzc0ZWEwYjczMjNjOWY5MGZiYTM0MF8xL2ZyYWc6NTE3YTgyMGZlY2JkNDNhMTg1MDgxYWNjMWI3ZmI3NzQvdGV4dHJlZ2lvbjo1MTdhODIwZmVjYmQ0M2ExODUwODFhY2MxYjdmYjc3NF8xMjA0_263aef08-11ae-4113-8717-5d73be6776fd">8-K</dei:DocumentType>
    <dei:DocumentPeriodEndDate
      contextRef="i8405dfb40b3c40f4863790641d381d96_D20230504-20230504"
      id="id3VybDovL2RvY3MudjEvZG9jOmU5NzYwZTViZTFjNzRlYTBiNzMyM2M5ZjkwZmJhMzQwL3NlYzplOTc2MGU1YmUxYzc0ZWEwYjczMjNjOWY5MGZiYTM0MF8xL2ZyYWc6NTE3YTgyMGZlY2JkNDNhMTg1MDgxYWNjMWI3ZmI3NzQvdGV4dHJlZ2lvbjo1MTdhODIwZmVjYmQ0M2ExODUwODFhY2MxYjdmYjc3NF8yOTg_030833df-2b61-4fa0-9a24-26bf42caf523">2023-05-04</dei:DocumentPeriodEndDate>
    <dei:EntityRegistrantName
      contextRef="i8405dfb40b3c40f4863790641d381d96_D20230504-20230504"
      id="id3VybDovL2RvY3MudjEvZG9jOmU5NzYwZTViZTFjNzRlYTBiNzMyM2M5ZjkwZmJhMzQwL3NlYzplOTc2MGU1YmUxYzc0ZWEwYjczMjNjOWY5MGZiYTM0MF8xL2ZyYWc6NTE3YTgyMGZlY2JkNDNhMTg1MDgxYWNjMWI3ZmI3NzQvdGV4dHJlZ2lvbjo1MTdhODIwZmVjYmQ0M2ExODUwODFhY2MxYjdmYjc3NF8xMjA1_7e18706c-8cb6-4e88-b08f-a1ec8a113b68">Codexis, Inc.</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode
      contextRef="i8405dfb40b3c40f4863790641d381d96_D20230504-20230504"
      id="id3VybDovL2RvY3MudjEvZG9jOmU5NzYwZTViZTFjNzRlYTBiNzMyM2M5ZjkwZmJhMzQwL3NlYzplOTc2MGU1YmUxYzc0ZWEwYjczMjNjOWY5MGZiYTM0MF8xL2ZyYWc6NTE3YTgyMGZlY2JkNDNhMTg1MDgxYWNjMWI3ZmI3NzQvdGFibGU6ZTZlZjFiYTM5Njc0NGQ1NDgzZDk4YzIwMGMyMTNkY2EvdGFibGVyYW5nZTplNmVmMWJhMzk2NzQ0ZDU0ODNkOThjMjAwYzIxM2RjYV8wLTAtMS0xLTEzNjg1Ng_384505b6-b6ff-4dae-84b6-47a4cd3a4fd0">DE</dei:EntityIncorporationStateCountryCode>
    <dei:EntityFileNumber
      contextRef="i8405dfb40b3c40f4863790641d381d96_D20230504-20230504"
      id="id3VybDovL2RvY3MudjEvZG9jOmU5NzYwZTViZTFjNzRlYTBiNzMyM2M5ZjkwZmJhMzQwL3NlYzplOTc2MGU1YmUxYzc0ZWEwYjczMjNjOWY5MGZiYTM0MF8xL2ZyYWc6NTE3YTgyMGZlY2JkNDNhMTg1MDgxYWNjMWI3ZmI3NzQvdGFibGU6ZTZlZjFiYTM5Njc0NGQ1NDgzZDk4YzIwMGMyMTNkY2EvdGFibGVyYW5nZTplNmVmMWJhMzk2NzQ0ZDU0ODNkOThjMjAwYzIxM2RjYV8wLTItMS0xLTEzNjg1Ng_ad29f4b8-0344-43ee-a4dd-b2af9437be82">001-34705</dei:EntityFileNumber>
    <dei:EntityTaxIdentificationNumber
      contextRef="i8405dfb40b3c40f4863790641d381d96_D20230504-20230504"
      id="id3VybDovL2RvY3MudjEvZG9jOmU5NzYwZTViZTFjNzRlYTBiNzMyM2M5ZjkwZmJhMzQwL3NlYzplOTc2MGU1YmUxYzc0ZWEwYjczMjNjOWY5MGZiYTM0MF8xL2ZyYWc6NTE3YTgyMGZlY2JkNDNhMTg1MDgxYWNjMWI3ZmI3NzQvdGFibGU6ZTZlZjFiYTM5Njc0NGQ1NDgzZDk4YzIwMGMyMTNkY2EvdGFibGVyYW5nZTplNmVmMWJhMzk2NzQ0ZDU0ODNkOThjMjAwYzIxM2RjYV8wLTQtMS0xLTEzNjg1Ng_4b193241-f3bb-4662-8e26-693e178a7163">71-0872999</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1
      contextRef="i8405dfb40b3c40f4863790641d381d96_D20230504-20230504"
      id="id3VybDovL2RvY3MudjEvZG9jOmU5NzYwZTViZTFjNzRlYTBiNzMyM2M5ZjkwZmJhMzQwL3NlYzplOTc2MGU1YmUxYzc0ZWEwYjczMjNjOWY5MGZiYTM0MF8xL2ZyYWc6NTE3YTgyMGZlY2JkNDNhMTg1MDgxYWNjMWI3ZmI3NzQvdGV4dHJlZ2lvbjo1MTdhODIwZmVjYmQ0M2ExODUwODFhY2MxYjdmYjc3NF80NDU_79b520c6-527d-4275-bf31-e8be388e65fe">200 Penobscot Drive</dei:EntityAddressAddressLine1>
    <dei:EntityAddressCityOrTown
      contextRef="i8405dfb40b3c40f4863790641d381d96_D20230504-20230504"
      id="id3VybDovL2RvY3MudjEvZG9jOmU5NzYwZTViZTFjNzRlYTBiNzMyM2M5ZjkwZmJhMzQwL3NlYzplOTc2MGU1YmUxYzc0ZWEwYjczMjNjOWY5MGZiYTM0MF8xL2ZyYWc6NTE3YTgyMGZlY2JkNDNhMTg1MDgxYWNjMWI3ZmI3NzQvdGV4dHJlZ2lvbjo1MTdhODIwZmVjYmQ0M2ExODUwODFhY2MxYjdmYjc3NF80NDk_4759e525-5f18-474f-b62d-b1b130f53bf6">Redwood City</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince
      contextRef="i8405dfb40b3c40f4863790641d381d96_D20230504-20230504"
      id="id3VybDovL2RvY3MudjEvZG9jOmU5NzYwZTViZTFjNzRlYTBiNzMyM2M5ZjkwZmJhMzQwL3NlYzplOTc2MGU1YmUxYzc0ZWEwYjczMjNjOWY5MGZiYTM0MF8xL2ZyYWc6NTE3YTgyMGZlY2JkNDNhMTg1MDgxYWNjMWI3ZmI3NzQvdGV4dHJlZ2lvbjo1MTdhODIwZmVjYmQ0M2ExODUwODFhY2MxYjdmYjc3NF80NTM_da7fba47-d9a8-4671-90ea-d587e8033ab7">CA</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode
      contextRef="i8405dfb40b3c40f4863790641d381d96_D20230504-20230504"
      id="id3VybDovL2RvY3MudjEvZG9jOmU5NzYwZTViZTFjNzRlYTBiNzMyM2M5ZjkwZmJhMzQwL3NlYzplOTc2MGU1YmUxYzc0ZWEwYjczMjNjOWY5MGZiYTM0MF8xL2ZyYWc6NTE3YTgyMGZlY2JkNDNhMTg1MDgxYWNjMWI3ZmI3NzQvdGV4dHJlZ2lvbjo1MTdhODIwZmVjYmQ0M2ExODUwODFhY2MxYjdmYjc3NF80NTY_57d0438c-fbf9-44bc-9868-8fa1802c5ebc">94063</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode
      contextRef="i8405dfb40b3c40f4863790641d381d96_D20230504-20230504"
      id="id3VybDovL2RvY3MudjEvZG9jOmU5NzYwZTViZTFjNzRlYTBiNzMyM2M5ZjkwZmJhMzQwL3NlYzplOTc2MGU1YmUxYzc0ZWEwYjczMjNjOWY5MGZiYTM0MF8xL2ZyYWc6NTE3YTgyMGZlY2JkNDNhMTg1MDgxYWNjMWI3ZmI3NzQvdGV4dHJlZ2lvbjo1MTdhODIwZmVjYmQ0M2ExODUwODFhY2MxYjdmYjc3NF8xMjA2_91bb9eed-c3b0-42c5-8ac3-925eb45f7fbd">650</dei:CityAreaCode>
    <dei:LocalPhoneNumber
      contextRef="i8405dfb40b3c40f4863790641d381d96_D20230504-20230504"
      id="id3VybDovL2RvY3MudjEvZG9jOmU5NzYwZTViZTFjNzRlYTBiNzMyM2M5ZjkwZmJhMzQwL3NlYzplOTc2MGU1YmUxYzc0ZWEwYjczMjNjOWY5MGZiYTM0MF8xL2ZyYWc6NTE3YTgyMGZlY2JkNDNhMTg1MDgxYWNjMWI3ZmI3NzQvdGV4dHJlZ2lvbjo1MTdhODIwZmVjYmQ0M2ExODUwODFhY2MxYjdmYjc3NF8xMjAy_cd9fa47d-9581-48b0-a81d-31b2ee13d990">421-8100</dei:LocalPhoneNumber>
    <dei:WrittenCommunications
      contextRef="i8405dfb40b3c40f4863790641d381d96_D20230504-20230504"
      id="id3VybDovL2RvY3MudjEvZG9jOmU5NzYwZTViZTFjNzRlYTBiNzMyM2M5ZjkwZmJhMzQwL3NlYzplOTc2MGU1YmUxYzc0ZWEwYjczMjNjOWY5MGZiYTM0MF8xL2ZyYWc6NTE3YTgyMGZlY2JkNDNhMTg1MDgxYWNjMWI3ZmI3NzQvdGFibGU6MjgwZjNhNGU3YWFiNDQ1ZDk5ODU1ODJlMzk3OGJjMzAvdGFibGVyYW5nZToyODBmM2E0ZTdhYWI0NDVkOTk4NTU4MmUzOTc4YmMzMF8wLTAtMS0xLTEzNjg1Ng_6981ef84-c99d-4a49-b9b7-504db45b19af">false</dei:WrittenCommunications>
    <dei:SolicitingMaterial
      contextRef="i8405dfb40b3c40f4863790641d381d96_D20230504-20230504"
      id="id3VybDovL2RvY3MudjEvZG9jOmU5NzYwZTViZTFjNzRlYTBiNzMyM2M5ZjkwZmJhMzQwL3NlYzplOTc2MGU1YmUxYzc0ZWEwYjczMjNjOWY5MGZiYTM0MF8xL2ZyYWc6NTE3YTgyMGZlY2JkNDNhMTg1MDgxYWNjMWI3ZmI3NzQvdGFibGU6MjgwZjNhNGU3YWFiNDQ1ZDk5ODU1ODJlMzk3OGJjMzAvdGFibGVyYW5nZToyODBmM2E0ZTdhYWI0NDVkOTk4NTU4MmUzOTc4YmMzMF8xLTAtMS0xLTEzNjg1Ng_146d88ba-f356-43ea-afc4-cabc322ad3ae">false</dei:SolicitingMaterial>
    <dei:PreCommencementTenderOffer
      contextRef="i8405dfb40b3c40f4863790641d381d96_D20230504-20230504"
      id="id3VybDovL2RvY3MudjEvZG9jOmU5NzYwZTViZTFjNzRlYTBiNzMyM2M5ZjkwZmJhMzQwL3NlYzplOTc2MGU1YmUxYzc0ZWEwYjczMjNjOWY5MGZiYTM0MF8xL2ZyYWc6NTE3YTgyMGZlY2JkNDNhMTg1MDgxYWNjMWI3ZmI3NzQvdGFibGU6MjgwZjNhNGU3YWFiNDQ1ZDk5ODU1ODJlMzk3OGJjMzAvdGFibGVyYW5nZToyODBmM2E0ZTdhYWI0NDVkOTk4NTU4MmUzOTc4YmMzMF8yLTAtMS0xLTEzNjg1Ng_21179b41-77a9-482a-9dc0-613f2a8ae8e0">false</dei:PreCommencementTenderOffer>
    <dei:PreCommencementIssuerTenderOffer
      contextRef="i8405dfb40b3c40f4863790641d381d96_D20230504-20230504"
      id="id3VybDovL2RvY3MudjEvZG9jOmU5NzYwZTViZTFjNzRlYTBiNzMyM2M5ZjkwZmJhMzQwL3NlYzplOTc2MGU1YmUxYzc0ZWEwYjczMjNjOWY5MGZiYTM0MF8xL2ZyYWc6NTE3YTgyMGZlY2JkNDNhMTg1MDgxYWNjMWI3ZmI3NzQvdGFibGU6MjgwZjNhNGU3YWFiNDQ1ZDk5ODU1ODJlMzk3OGJjMzAvdGFibGVyYW5nZToyODBmM2E0ZTdhYWI0NDVkOTk4NTU4MmUzOTc4YmMzMF8zLTAtMS0xLTEzNjg1Ng_03b316e7-ac05-452d-bc19-356937fa5c48">false</dei:PreCommencementIssuerTenderOffer>
    <dei:Security12bTitle
      contextRef="i8405dfb40b3c40f4863790641d381d96_D20230504-20230504"
      id="id3VybDovL2RvY3MudjEvZG9jOmU5NzYwZTViZTFjNzRlYTBiNzMyM2M5ZjkwZmJhMzQwL3NlYzplOTc2MGU1YmUxYzc0ZWEwYjczMjNjOWY5MGZiYTM0MF8xL2ZyYWc6NTE3YTgyMGZlY2JkNDNhMTg1MDgxYWNjMWI3ZmI3NzQvdGFibGU6MDQzNzYzYTllNDBhNDk5ZjhiMjY1MDE1MTE1ZDlkMzUvdGFibGVyYW5nZTowNDM3NjNhOWU0MGE0OTlmOGIyNjUwMTUxMTVkOWQzNV8yLTAtMS0xLTEzNjg1Ng_32755c47-6116-4d7c-a203-ac8356bc2a8e">Common Stock, par value $0.0001 per share</dei:Security12bTitle>
    <dei:TradingSymbol
      contextRef="i8405dfb40b3c40f4863790641d381d96_D20230504-20230504"
      id="id3VybDovL2RvY3MudjEvZG9jOmU5NzYwZTViZTFjNzRlYTBiNzMyM2M5ZjkwZmJhMzQwL3NlYzplOTc2MGU1YmUxYzc0ZWEwYjczMjNjOWY5MGZiYTM0MF8xL2ZyYWc6NTE3YTgyMGZlY2JkNDNhMTg1MDgxYWNjMWI3ZmI3NzQvdGFibGU6MDQzNzYzYTllNDBhNDk5ZjhiMjY1MDE1MTE1ZDlkMzUvdGFibGVyYW5nZTowNDM3NjNhOWU0MGE0OTlmOGIyNjUwMTUxMTVkOWQzNV8yLTEtMS0xLTEzNjg1Ng_85960831-6e26-4e35-8bdc-a086e7b2f491">CDXS</dei:TradingSymbol>
    <dei:SecurityExchangeName
      contextRef="i8405dfb40b3c40f4863790641d381d96_D20230504-20230504"
      id="id3VybDovL2RvY3MudjEvZG9jOmU5NzYwZTViZTFjNzRlYTBiNzMyM2M5ZjkwZmJhMzQwL3NlYzplOTc2MGU1YmUxYzc0ZWEwYjczMjNjOWY5MGZiYTM0MF8xL2ZyYWc6NTE3YTgyMGZlY2JkNDNhMTg1MDgxYWNjMWI3ZmI3NzQvdGFibGU6MDQzNzYzYTllNDBhNDk5ZjhiMjY1MDE1MTE1ZDlkMzUvdGFibGVyYW5nZTowNDM3NjNhOWU0MGE0OTlmOGIyNjUwMTUxMTVkOWQzNV8yLTItMS0xLTEzNjg1Ng_a0a9cc57-75b7-42e7-b218-f3ade7de2307">NASDAQ</dei:SecurityExchangeName>
    <dei:EntityEmergingGrowthCompany
      contextRef="i8405dfb40b3c40f4863790641d381d96_D20230504-20230504"
      id="id3VybDovL2RvY3MudjEvZG9jOmU5NzYwZTViZTFjNzRlYTBiNzMyM2M5ZjkwZmJhMzQwL3NlYzplOTc2MGU1YmUxYzc0ZWEwYjczMjNjOWY5MGZiYTM0MF8xL2ZyYWc6NTE3YTgyMGZlY2JkNDNhMTg1MDgxYWNjMWI3ZmI3NzQvdGV4dHJlZ2lvbjo1MTdhODIwZmVjYmQ0M2ExODUwODFhY2MxYjdmYjc3NF8xMjAz_2de5ad44-923d-4870-ba3b-48794b9185e3">false</dei:EntityEmergingGrowthCompany>
    <dei:EntityEmergingGrowthCompany
      contextRef="i8405dfb40b3c40f4863790641d381d96_D20230504-20230504"
      id="id3VybDovL2RvY3MudjEvZG9jOmU5NzYwZTViZTFjNzRlYTBiNzMyM2M5ZjkwZmJhMzQwL3NlYzplOTc2MGU1YmUxYzc0ZWEwYjczMjNjOWY5MGZiYTM0MF8xL2ZyYWc6NTE3YTgyMGZlY2JkNDNhMTg1MDgxYWNjMWI3ZmI3NzQvdGFibGU6ODQ5ZjUxMmU5NGU4NGQ2NjhhNjBlNmQxY2MzNjI5ZjMvdGFibGVyYW5nZTo4NDlmNTEyZTk0ZTg0ZDY2OGE2MGU2ZDFjYzM2MjlmM18wLTEtMS0xLTEzNjg1Ng_0fa0d66b-5632-492e-b22f-fcbdffdf41d2">false</dei:EntityEmergingGrowthCompany>
    <dei:DocumentPeriodEndDate
      contextRef="i8405dfb40b3c40f4863790641d381d96_D20230504-20230504"
      id="id3VybDovL2RvY3MudjEvZG9jOmU5NzYwZTViZTFjNzRlYTBiNzMyM2M5ZjkwZmJhMzQwL3NlYzplOTc2MGU1YmUxYzc0ZWEwYjczMjNjOWY5MGZiYTM0MF83L2ZyYWc6MTk1NTlhY2Q4MmY0NGFlZGJmMjhmYjBhYTcwM2IxZGYvdGV4dHJlZ2lvbjoxOTU1OWFjZDgyZjQ0YWVkYmYyOGZiMGFhNzAzYjFkZl8xMA_030833df-2b61-4fa0-9a24-26bf42caf523">2023-05-04</dei:DocumentPeriodEndDate>
</xbrl>
