XML 113 R60.htm IDEA: XBRL DOCUMENT v2.4.1.9
Fair Value of Financial Assets and Liabilities - Fair Value Assets Liabilities Measured On Recurring Basis Unobservable Input Reconciliation (Details) (USD $)
In Millions, unless otherwise specified
3 Months Ended
Mar. 31, 2015
Sep. 30, 2014
Mar. 31, 2014
Dec. 31, 2013
Dec. 31, 2014
Derivative [Member] | Consolidation, Eliminations [Member]          
Fair Value Assets And Liabilities Measured On Recurring Basis Unobservable Input Reconciliation [Line Items]          
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset Value $ 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue
/ us-gaap_ConsolidationItemsAxis
= us-gaap_ConsolidationEliminationsMember
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
       
Total realized / unrealized gains (losses)          
Fair Value Measurement With Unobservable Inputs Reconciliation Recurring Basis Included In Noncurrent Payables To Affiliates (8)exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisIncludedInNoncurrentPayablesToAffiliates
/ us-gaap_ConsolidationItemsAxis
= us-gaap_ConsolidationEliminationsMember
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
       
Included in payable for Zion Station decommissioning 0exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossIncludedInNuclearDecommissioningPayable
/ us-gaap_ConsolidationItemsAxis
= us-gaap_ConsolidationEliminationsMember
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
       
Included in noncurrent payables to affiliates 8exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossIncludedInRegulatoryAssetsLiabilities
/ us-gaap_ConsolidationItemsAxis
= us-gaap_ConsolidationEliminationsMember
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
       
Change in collateral 0exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossChangeInCollateral
/ us-gaap_ConsolidationItemsAxis
= us-gaap_ConsolidationEliminationsMember
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
       
Purchases, sales, issuances and settlements          
Purchases 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases
/ us-gaap_ConsolidationItemsAxis
= us-gaap_ConsolidationEliminationsMember
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
       
Sales 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales
/ us-gaap_ConsolidationItemsAxis
= us-gaap_ConsolidationEliminationsMember
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
       
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Settlements 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements
/ us-gaap_ConsolidationItemsAxis
= us-gaap_ConsolidationEliminationsMember
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
       
Transfers into Level 3 0us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationTransfersIntoLevel3
/ us-gaap_ConsolidationItemsAxis
= us-gaap_ConsolidationEliminationsMember
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
       
Transfers out of Level 3 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3
/ us-gaap_ConsolidationItemsAxis
= us-gaap_ConsolidationEliminationsMember
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
       
The amount of total losses included in income attributed to the change in unrealized gains (losses) related to assets and liabilities held 0exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityTotalGainLossIncludedInEarningsAttributedToChangesInUnrealizedGainsLosses
/ us-gaap_ConsolidationItemsAxis
= us-gaap_ConsolidationEliminationsMember
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
       
Exelon Generation Co L L C [Member]          
Purchases, sales, issuances and settlements          
Settlements 2us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  5us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Footnotes To Fair Value Assets And Liabilities Measured On Recurring Basis Unobservable Input Reconciliation [Abstract]          
Gain (loss) reclassified to results of operating due to the settlement of derivative contracts (134)exc_DerivativeGainLossReclassifiedToEarningsNet
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
212exc_DerivativeGainLossReclassifiedToEarningsNet
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
     
Decrease in Fair Value Adjustment 36exc_DecreaseinFairValueAdjustment
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
       
Increase In Fair Value Adjustment     30exc_IncreaseInFairValueAdjustment
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Fair Value, Inputs, Level 3 [Member]          
Fair Value, Assets and Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation [Abstract]          
Beginning balance 1,721exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityValue
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
  749exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityValue
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
   
Total realized / unrealized gains (losses)          
Included in net income (30)exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossIncludedInEarnings
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
  (311)exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossIncludedInEarnings
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
   
Fair Value Measurement With Unobservable Inputs Reconciliation Recurring Basis Included In Noncurrent Payables To Affiliates 0exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisIncludedInNoncurrentPayablesToAffiliates
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
  0exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisIncludedInNoncurrentPayablesToAffiliates
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
   
Included in payable for Zion Station decommissioning (3)exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossIncludedInNuclearDecommissioningPayable
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
  1exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossIncludedInNuclearDecommissioningPayable
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
   
Included in noncurrent payables to affiliates (26)exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossIncludedInRegulatoryAssetsLiabilities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
  28exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossIncludedInRegulatoryAssetsLiabilities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
   
Change in collateral (12)exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossChangeInCollateral
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
  (144)exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossChangeInCollateral
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
   
Purchases, sales, issuances and settlements          
Purchases 93us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
  181us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
   
Sales (22)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
  (7)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
   
Settlements (29)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
  (6)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
   
Transfers into Level 3 (4)us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationTransfersIntoLevel3
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
  26us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationTransfersIntoLevel3
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
   
Transfers out of Level 3 (5)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
  1us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
   
Ending balance 1,721exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityValue
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
  752exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityValue
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
   
The amount of total losses included in income attributed to the change in unrealized gains (losses) related to assets and liabilities held 181exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityTotalGainLossIncludedInEarningsAttributedToChangesInUnrealizedGainsLosses
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
  (446)exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityTotalGainLossIncludedInEarningsAttributedToChangesInUnrealizedGainsLosses
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
   
Fair Value, Inputs, Level 3 [Member] | Derivative [Member] | Consolidation, Eliminations [Member]          
Fair Value Assets And Liabilities Measured On Recurring Basis Unobservable Input Reconciliation [Line Items]          
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1
/ us-gaap_ConsolidationItemsAxis
= us-gaap_ConsolidationEliminationsMember
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
  0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1
/ us-gaap_ConsolidationItemsAxis
= us-gaap_ConsolidationEliminationsMember
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
   
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset Value 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue
/ us-gaap_ConsolidationItemsAxis
= us-gaap_ConsolidationEliminationsMember
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
  0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue
/ us-gaap_ConsolidationItemsAxis
= us-gaap_ConsolidationEliminationsMember
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue
/ us-gaap_ConsolidationItemsAxis
= us-gaap_ConsolidationEliminationsMember
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
 
Total realized / unrealized gains (losses)          
Fair Value Measurement With Unobservable Inputs Reconciliation Recurring Basis Included In Noncurrent Payables To Affiliates     (3)exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisIncludedInNoncurrentPayablesToAffiliates
/ us-gaap_ConsolidationItemsAxis
= us-gaap_ConsolidationEliminationsMember
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
   
Included in payable for Zion Station decommissioning     0exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossIncludedInNuclearDecommissioningPayable
/ us-gaap_ConsolidationItemsAxis
= us-gaap_ConsolidationEliminationsMember
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
   
Included in noncurrent payables to affiliates     3exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossIncludedInRegulatoryAssetsLiabilities
/ us-gaap_ConsolidationItemsAxis
= us-gaap_ConsolidationEliminationsMember
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
   
Change in collateral     0exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossChangeInCollateral
/ us-gaap_ConsolidationItemsAxis
= us-gaap_ConsolidationEliminationsMember
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
   
Purchases, sales, issuances and settlements          
Purchases     0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases
/ us-gaap_ConsolidationItemsAxis
= us-gaap_ConsolidationEliminationsMember
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
   
Sales     0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales
/ us-gaap_ConsolidationItemsAxis
= us-gaap_ConsolidationEliminationsMember
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
   
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Settlements     0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements
/ us-gaap_ConsolidationItemsAxis
= us-gaap_ConsolidationEliminationsMember
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
   
Transfers into Level 3     0us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationTransfersIntoLevel3
/ us-gaap_ConsolidationItemsAxis
= us-gaap_ConsolidationEliminationsMember
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
   
Transfers out of Level 3     0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3
/ us-gaap_ConsolidationItemsAxis
= us-gaap_ConsolidationEliminationsMember
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
   
The amount of total losses included in income attributed to the change in unrealized gains (losses) related to assets and liabilities held     0exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityTotalGainLossIncludedInEarningsAttributedToChangesInUnrealizedGainsLosses
/ us-gaap_ConsolidationItemsAxis
= us-gaap_ConsolidationEliminationsMember
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
   
Fair Value, Inputs, Level 3 [Member] | Exelon Generation Co L L C [Member]          
Fair Value, Assets and Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation [Abstract]          
Beginning balance 1,928exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityValue
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  942exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityValue
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Total realized / unrealized gains (losses)          
Included in net income (30)exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossIncludedInEarnings
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  (311)exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossIncludedInEarnings
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Fair Value Measurement With Unobservable Inputs Reconciliation Recurring Basis Included In Noncurrent Payables To Affiliates 8exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisIncludedInNoncurrentPayablesToAffiliates
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  3exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisIncludedInNoncurrentPayablesToAffiliates
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Included in payable for Zion Station decommissioning (3)exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossIncludedInNuclearDecommissioningPayable
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  1exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossIncludedInNuclearDecommissioningPayable
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Included in noncurrent payables to affiliates 0exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossIncludedInRegulatoryAssetsLiabilities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  0exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossIncludedInRegulatoryAssetsLiabilities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Change in collateral (12)exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossChangeInCollateral
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  (144)exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossChangeInCollateral
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Purchases, sales, issuances and settlements          
Purchases 93us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  181us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Sales (22)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  (7)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Settlements (29)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
       
Settlements     (6)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Transfers into Level 3 (4)us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationTransfersIntoLevel3
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  26us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationTransfersIntoLevel3
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Transfers out of Level 3 (5)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  1us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Ending balance 1,962exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityValue
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  920exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityValue
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
The amount of total losses included in income attributed to the change in unrealized gains (losses) related to assets and liabilities held 181exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityTotalGainLossIncludedInEarningsAttributedToChangesInUnrealizedGainsLosses
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  (446)exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityTotalGainLossIncludedInEarningsAttributedToChangesInUnrealizedGainsLosses
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Fair Value, Inputs, Level 3 [Member] | Exelon Generation Co L L C [Member] | Nuclear Decommissioning Trust Fund Investment Level Three Asset [Member]          
Fair Value Assets And Liabilities Measured On Recurring Basis Unobservable Input Reconciliation [Line Items]          
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings 2us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_NuclearDecommissioningTrustFundInvestmentLevelThreeAssetMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  1us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_NuclearDecommissioningTrustFundInvestmentLevelThreeAssetMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset Value 715us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_NuclearDecommissioningTrustFundInvestmentLevelThreeAssetMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  486us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_NuclearDecommissioningTrustFundInvestmentLevelThreeAssetMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
350us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_NuclearDecommissioningTrustFundInvestmentLevelThreeAssetMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
691us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_NuclearDecommissioningTrustFundInvestmentLevelThreeAssetMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
Total realized / unrealized gains (losses)          
Fair Value Measurement With Unobservable Inputs Reconciliation Recurring Basis Included In Noncurrent Payables To Affiliates 8exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisIncludedInNoncurrentPayablesToAffiliates
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_NuclearDecommissioningTrustFundInvestmentLevelThreeAssetMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  3exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisIncludedInNoncurrentPayablesToAffiliates
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_NuclearDecommissioningTrustFundInvestmentLevelThreeAssetMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Included in payable for Zion Station decommissioning 0exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossIncludedInNuclearDecommissioningPayable
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_NuclearDecommissioningTrustFundInvestmentLevelThreeAssetMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  0exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossIncludedInNuclearDecommissioningPayable
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_NuclearDecommissioningTrustFundInvestmentLevelThreeAssetMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Included in noncurrent payables to affiliates 0exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossIncludedInRegulatoryAssetsLiabilities
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_NuclearDecommissioningTrustFundInvestmentLevelThreeAssetMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  0exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossIncludedInRegulatoryAssetsLiabilities
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_NuclearDecommissioningTrustFundInvestmentLevelThreeAssetMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Change in collateral 0exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossChangeInCollateral
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_NuclearDecommissioningTrustFundInvestmentLevelThreeAssetMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  0exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossChangeInCollateral
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_NuclearDecommissioningTrustFundInvestmentLevelThreeAssetMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Purchases, sales, issuances and settlements          
Purchases 47us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_NuclearDecommissioningTrustFundInvestmentLevelThreeAssetMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  139us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_NuclearDecommissioningTrustFundInvestmentLevelThreeAssetMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Sales (8)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_NuclearDecommissioningTrustFundInvestmentLevelThreeAssetMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  (1)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_NuclearDecommissioningTrustFundInvestmentLevelThreeAssetMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Settlements (29)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_NuclearDecommissioningTrustFundInvestmentLevelThreeAssetMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  (6)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_NuclearDecommissioningTrustFundInvestmentLevelThreeAssetMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Transfers into Level 3 (4)us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationTransfersIntoLevel3
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_NuclearDecommissioningTrustFundInvestmentLevelThreeAssetMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  0us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationTransfersIntoLevel3
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_NuclearDecommissioningTrustFundInvestmentLevelThreeAssetMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Transfers out of Level 3 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_NuclearDecommissioningTrustFundInvestmentLevelThreeAssetMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_NuclearDecommissioningTrustFundInvestmentLevelThreeAssetMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
The amount of total losses included in income attributed to the change in unrealized gains (losses) related to assets and liabilities held 1exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityTotalGainLossIncludedInEarningsAttributedToChangesInUnrealizedGainsLosses
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_NuclearDecommissioningTrustFundInvestmentLevelThreeAssetMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  0exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityTotalGainLossIncludedInEarningsAttributedToChangesInUnrealizedGainsLosses
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_NuclearDecommissioningTrustFundInvestmentLevelThreeAssetMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Fair Value, Inputs, Level 3 [Member] | Exelon Generation Co L L C [Member] | Pledged Assets For Zion Station Decommissioning [Member]          
Fair Value Assets And Liabilities Measured On Recurring Basis Unobservable Input Reconciliation [Line Items]          
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_PledgedAssetsForZionStationDecommissioningMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_PledgedAssetsForZionStationDecommissioningMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset Value 178us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_PledgedAssetsForZionStationDecommissioningMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  137us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_PledgedAssetsForZionStationDecommissioningMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
112us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_PledgedAssetsForZionStationDecommissioningMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
184us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_PledgedAssetsForZionStationDecommissioningMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
Total realized / unrealized gains (losses)          
Fair Value Measurement With Unobservable Inputs Reconciliation Recurring Basis Included In Noncurrent Payables To Affiliates 0exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisIncludedInNoncurrentPayablesToAffiliates
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_PledgedAssetsForZionStationDecommissioningMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  0exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisIncludedInNoncurrentPayablesToAffiliates
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_PledgedAssetsForZionStationDecommissioningMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Included in payable for Zion Station decommissioning (3)exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossIncludedInNuclearDecommissioningPayable
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_PledgedAssetsForZionStationDecommissioningMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  1exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossIncludedInNuclearDecommissioningPayable
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_PledgedAssetsForZionStationDecommissioningMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Included in noncurrent payables to affiliates 0exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossIncludedInRegulatoryAssetsLiabilities
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_PledgedAssetsForZionStationDecommissioningMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  0exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossIncludedInRegulatoryAssetsLiabilities
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_PledgedAssetsForZionStationDecommissioningMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Change in collateral 0exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossChangeInCollateral
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_PledgedAssetsForZionStationDecommissioningMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  0exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossChangeInCollateral
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_PledgedAssetsForZionStationDecommissioningMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Purchases, sales, issuances and settlements          
Purchases 5us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_PledgedAssetsForZionStationDecommissioningMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  30us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_PledgedAssetsForZionStationDecommissioningMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Sales (14)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_PledgedAssetsForZionStationDecommissioningMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  (4)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_PledgedAssetsForZionStationDecommissioningMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Settlements 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_PledgedAssetsForZionStationDecommissioningMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_PledgedAssetsForZionStationDecommissioningMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Transfers into Level 3     0us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationTransfersIntoLevel3
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_PledgedAssetsForZionStationDecommissioningMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Fair Value, Measurement with Unobservable Inputs Reconciliation, Liability, Transfers Into Level 3 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationLiabilityTransfersIntoLevel3
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_PledgedAssetsForZionStationDecommissioningMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
       
Transfers out of Level 3 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_PledgedAssetsForZionStationDecommissioningMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_PledgedAssetsForZionStationDecommissioningMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
The amount of total losses included in income attributed to the change in unrealized gains (losses) related to assets and liabilities held 0exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityTotalGainLossIncludedInEarningsAttributedToChangesInUnrealizedGainsLosses
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_PledgedAssetsForZionStationDecommissioningMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  0exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityTotalGainLossIncludedInEarningsAttributedToChangesInUnrealizedGainsLosses
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= exc_PledgedAssetsForZionStationDecommissioningMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Fair Value, Inputs, Level 3 [Member] | Exelon Generation Co L L C [Member] | Derivative [Member]          
Fair Value Assets And Liabilities Measured On Recurring Basis Unobservable Input Reconciliation [Line Items]          
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset Value 1,066us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  287us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
465us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
1,050us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
Total realized / unrealized gains (losses)          
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings, Description -32   -312    
Fair Value Measurement With Unobservable Inputs Reconciliation Recurring Basis Included In Noncurrent Payables To Affiliates 0exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisIncludedInNoncurrentPayablesToAffiliates
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  0exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisIncludedInNoncurrentPayablesToAffiliates
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Included in payable for Zion Station decommissioning 0exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossIncludedInNuclearDecommissioningPayable
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  0exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossIncludedInNuclearDecommissioningPayable
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Included in noncurrent payables to affiliates 0exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossIncludedInRegulatoryAssetsLiabilities
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
        
Change in collateral (12)exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossChangeInCollateral
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  (144)exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossChangeInCollateral
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Purchases, sales, issuances and settlements          
Purchases 41us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  10us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Sales 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  (2)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Settlements 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Transfers into Level 3     26us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationTransfersIntoLevel3
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Fair Value, Measurement with Unobservable Inputs Reconciliation, Liability, Transfers Into Level 3 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationLiabilityTransfersIntoLevel3
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
       
Transfers out of Level 3 (5)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  8us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
The amount of total losses included in income attributed to the change in unrealized gains (losses) related to assets and liabilities held 180exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityTotalGainLossIncludedInEarningsAttributedToChangesInUnrealizedGainsLosses
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  (446)exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityTotalGainLossIncludedInEarningsAttributedToChangesInUnrealizedGainsLosses
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Fair Value, Inputs, Level 3 [Member] | Exelon Generation Co L L C [Member] | Other Investments [Member]          
Fair Value Assets And Liabilities Measured On Recurring Basis Unobservable Input Reconciliation [Line Items]          
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset Value 3us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_OtherInvestmentsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  10us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_OtherInvestmentsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
15us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_OtherInvestmentsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
3us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_OtherInvestmentsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
Total realized / unrealized gains (losses)          
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Liability, Gain (Loss) Included in Earnings, Description 0   0    
Fair Value Measurement With Unobservable Inputs Reconciliation Recurring Basis Included In Noncurrent Payables To Affiliates 0exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisIncludedInNoncurrentPayablesToAffiliates
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_OtherInvestmentsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  0exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisIncludedInNoncurrentPayablesToAffiliates
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_OtherInvestmentsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Included in payable for Zion Station decommissioning 0exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossIncludedInNuclearDecommissioningPayable
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_OtherInvestmentsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  0exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossIncludedInNuclearDecommissioningPayable
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_OtherInvestmentsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Included in noncurrent payables to affiliates 0exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossIncludedInRegulatoryAssetsLiabilities
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_OtherInvestmentsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  0exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossIncludedInRegulatoryAssetsLiabilities
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_OtherInvestmentsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Change in collateral 0exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossChangeInCollateral
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_OtherInvestmentsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  0exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossChangeInCollateral
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_OtherInvestmentsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Purchases, sales, issuances and settlements          
Purchases 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_OtherInvestmentsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  2us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_OtherInvestmentsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Sales 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_OtherInvestmentsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_OtherInvestmentsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Settlements 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_OtherInvestmentsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_OtherInvestmentsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Transfers into Level 3 0us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationTransfersIntoLevel3
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_OtherInvestmentsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  0us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationTransfersIntoLevel3
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_OtherInvestmentsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Transfers out of Level 3 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_OtherInvestmentsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
  (7)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_OtherInvestmentsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
The amount of total losses included in income attributed to the change in unrealized gains (losses) related to assets and liabilities held     0exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityTotalGainLossIncludedInEarningsAttributedToChangesInUnrealizedGainsLosses
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_OtherInvestmentsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
   
Fair Value Measurement With Unobservable Inputs Reconciliation Recurring Basis Asset Liability Gain Loss Included In Earnings Attributed To Changes In Unrealized Gains Losses 0exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossIncludedInEarningsAttributedToChangesInUnrealizedGainsLosses
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_OtherInvestmentsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
       
Fair Value, Inputs, Level 3 [Member] | Commonwealth Edison Co [Member] | Derivative [Member]          
Fair Value Assets And Liabilities Measured On Recurring Basis Unobservable Input Reconciliation [Line Items]          
Fair Value, Measurement with Unobservable Inputs Reconciliations, Recurring Basis, Liability Value (241)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_CommonwealthEdisonCoMember
  (168)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_CommonwealthEdisonCoMember
(193)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_CommonwealthEdisonCoMember
(207)us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_CommonwealthEdisonCoMember
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Gain (Loss) Included in Earnings 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_CommonwealthEdisonCoMember
  0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetGainLossIncludedInEarnings1
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_CommonwealthEdisonCoMember
   
Total realized / unrealized gains (losses)          
Fair Value Measurement With Unobservable Inputs Reconciliation Recurring Basis Included In Noncurrent Payables To Affiliates 0exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisIncludedInNoncurrentPayablesToAffiliates
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_CommonwealthEdisonCoMember
  0exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisIncludedInNoncurrentPayablesToAffiliates
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_CommonwealthEdisonCoMember
   
Included in payable for Zion Station decommissioning 0exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossIncludedInNuclearDecommissioningPayable
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_CommonwealthEdisonCoMember
  0exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossIncludedInNuclearDecommissioningPayable
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_CommonwealthEdisonCoMember
   
Included in noncurrent payables to affiliates (34)exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossIncludedInRegulatoryAssetsLiabilities
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_CommonwealthEdisonCoMember
  25exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossIncludedInRegulatoryAssetsLiabilities
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_CommonwealthEdisonCoMember
   
Change in collateral 0exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossChangeInCollateral
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_CommonwealthEdisonCoMember
  0exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityGainLossChangeInCollateral
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_CommonwealthEdisonCoMember
   
Purchases, sales, issuances and settlements          
Purchases 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_CommonwealthEdisonCoMember
  0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetPurchases
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_CommonwealthEdisonCoMember
   
Sales 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_CommonwealthEdisonCoMember
  0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_CommonwealthEdisonCoMember
   
Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Settlements 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_CommonwealthEdisonCoMember
  0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSettlements
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_CommonwealthEdisonCoMember
   
Transfers into Level 3 0us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationTransfersIntoLevel3
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_CommonwealthEdisonCoMember
  0us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationTransfersIntoLevel3
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_CommonwealthEdisonCoMember
   
Transfers out of Level 3 0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_CommonwealthEdisonCoMember
  0us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_CommonwealthEdisonCoMember
   
The amount of total losses included in income attributed to the change in unrealized gains (losses) related to assets and liabilities held $ 0exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityTotalGainLossIncludedInEarningsAttributedToChangesInUnrealizedGainsLosses
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_CommonwealthEdisonCoMember
  $ 0exc_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetLiabilityTotalGainLossIncludedInEarningsAttributedToChangesInUnrealizedGainsLosses
/ exc_FairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetLiabilityTypeAxis
= us-gaap_DerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ dei_LegalEntityAxis
= exc_CommonwealthEdisonCoMember