XML 31 R20.htm IDEA: XBRL DOCUMENT
v3.25.2

Accounting policies (Tables) | 6 Months Ended
--- | ---
Jun. 30, 2025
Accounting policies |
Schedule of Disaggregation of revenue | The following table presents the Company’s revenue disaggregated by revenue source. ​
​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​
​ | ​ | Three Months Ended June 30, |  | Six Months Ended June 30,
​ |  | 2025 |  | 2024 |  | 2025 |  | 2024
Retail revenue | ​ | $ | 8,638,026 | ​ | $ | 8,181,884 | ​ | $ | 18,049,368 | ​ | $ | 16,806,822
Bulk revenue | ​ |  | 8,274,816 | ​ |  | 8,447,958 | ​ |  | 16,686,532 | ​ |  | 16,790,052
Services revenue | ​ |  | 11,448,202 | ​ |  | 11,922,469 | ​ |  | 21,526,470 | ​ |  | 29,340,080
Manufacturing revenue | ​ |  | 5,230,035 | ​ |  | 3,926,847 | ​ |  | 11,044,094 | ​ |  | 9,231,594
Total revenue | ​ | $ | 33,591,079 | ​ | $ | 32,479,158 | ​ | $ | 67,306,464 | ​ | $ | 72,168,548
​ Services revenue consists of the following: ​
​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​
​ | ​ | Three Months Ended June 30, |  | Six Months Ended June 30,
​ |  | 2025 |  | 2024 |  | 2025 |  | 2024
Construction revenue | ​ | $ | 2,825,935 | ​ | $ | 4,004,072 | ​ | $ | 5,044,167 | ​ | $ | 13,381,536
Operations and maintenance revenue | ​ |  | 8,255,408 | ​ |  | 7,068,922 | ​ |  | 15,980,704 | ​ |  | 14,168,275
Design and consulting revenue | ​ |  | 366,859 | ​ |  | 849,475 | ​ |  | 501,599 | ​ |  | 1,790,269
Total services revenue | ​ | $ | 11,448,202 | ​ | $ | 11,922,469 | ​ | $ | 21,526,470 | ​ | $ | 29,340,080
​
Summary of revenue recognized and amounts billed on contracts in progress | Revenue recognized and amounts billed on contracts in progress are summarized as follows:
​ | ​ | ​ | ​ | ​ | ​ | ​
​ | ​ | June 30, | ​ | December 31,
​ | ​ | 2025 | ​ | 2024
Revenue recognized to date on contracts in progress |  | $ | 112,905,596 | ​ | $ | 114,590,991
Amounts billed to date on contracts in progress | ​ |  | (122,213,705) | ​ |  | (121,833,354)
Retainage | ​ | ​ | 2,168,473 | ​ | ​ | 2,585,952
Net contract liability | ​ | $ | (7,139,636) | ​ | $ | (4,656,411)
Summary of net balances of billings reflected in the accompanying consolidated balance sheet | The above net balances are reflected in the accompanying condensed consolidated balance sheets as follows:
​ | ​ | ​ | ​ | ​ | ​ | ​
​ | ​ | June 30, | ​ | December 31,
​ | ​ | 2025 | ​ | 2024
Contract assets |  | $ | 5,759,030 |  | $ | 4,470,243
Contract liabilities | ​ |  | (12,898,666) | ​ |  | (9,126,654)
Net contract liability | ​ | $ | (7,139,636) | ​ | $ | (4,656,411)

X
- Definition The tabular disclosure of revenue recognized and amounts billed on services segment and manufacturing segment contracts in progress. + References No definition available. + Details
Name: | cwco_SummaryOfRevenueRecognizedAndAmountsBilledOnServicesSegmentAndManufacturingSegmentContractsInProgressTableTextBlock
Namespace Prefix: | cwco_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- References No definition available. + Details
Name: | us-gaap_AccountingPoliciesAbstract
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Tabular disclosure of receivable, contract asset, and contract liability from contract with customer. Includes, but is not limited to, change in contract asset and contract liability. + References Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 10 -Publisher FASB -URI https://asc.fasb.org/1943274/2147479806/606-10-50-10 + Details
Name: | us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- Definition Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor. + References Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 5 -Publisher FASB -URI https://asc.fasb.org/1943274/2147479806/606-10-50-5 + Details
Name: | us-gaap_DisaggregationOfRevenueTableTextBlock
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration