XML 58 R121.htm IDEA: XBRL DOCUMENT
v3.19.3.a.u2

Revenue (Narrative) (Details) - USD ($) $ in Millions | 12 Months Ended
--- | ---
Dec. 31, 2019 | Dec. 31, 2018 | Dec. 31, 2017
Disaggregation of Revenue [Line Items] |  |  |
Bad debt expense | $ 67 | $ 54 | $ 49
Unbilled receivables | 426 | 409 |
Consumers Energy Company |  |  |
Disaggregation of Revenue [Line Items] |  |  |
Bad debt expense |  |  | $ 29
Unbilled receivables | 426 | 409 |
Accounts Receivable |  |  |
Disaggregation of Revenue [Line Items] |  |  |
Bad debt expense | 29 | 29 |
Accounts Receivable | Consumers Energy Company |  |  |
Disaggregation of Revenue [Line Items] |  |  |
Bad debt expense | $ 29 | $ 29 |

X
- Definition Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table. + References No definition available. + Details
Name: | us-gaap_DisaggregationOfRevenueLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Amount of expense (reversal of expense) for expected credit loss on accounts receivable. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 326 -SubTopic 20 -Section 50 -Paragraph 13 -Subparagraph (b) -URI http://asc.fasb.org/extlink&oid=119407570&loc=SL82919249-210447 Reference 2: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 220 -SubTopic 10 -Section S99 -Paragraph 2 -Subparagraph (SX 210.5-03(5)) -URI http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227 + Details
Name: | us-gaap_ProvisionForDoubtfulAccounts
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration

X
- Definition Amount received for services rendered and products shipped, but not yet billed, for non-contractual agreements due within one year or the normal operating cycle, if longer. + References No definition available. + Details
Name: | us-gaap_UnbilledReceivablesCurrent
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Details
Name: | dei_LegalEntityAxis=cms_ConsumersEnergyCompanyMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_BalanceSheetLocationAxis=us-gaap_AccountsReceivableMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |