XML 42 R89.htm IDEA: XBRL DOCUMENT v2.4.1.9
Changes in Accumulated Other Comprehensive Income - Schedule of Changes in AOCI (Details) (USD $)
In Millions, unless otherwise specified
3 Months Ended
Mar. 31, 2015
Mar. 31, 2014
Dec. 31, 2013
Dec. 31, 2014
Movement in Accumulated Other Comprehensive Income [Roll Forward]        
Beginning balance $ (2,684)us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax [1] $ (2,040)us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax [1]    
OCI before reclassifications (49)us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax [1] (8)us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax [1]    
Amounts reclassified from AOCI 60us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax [1],[2] 12us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax [1],[2]    
Net current-period OCI 11us-gaap_OtherComprehensiveIncomeLossNetOfTax [1] 4us-gaap_OtherComprehensiveIncomeLossNetOfTax [1]    
Ending balance (2,673)us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax [1] (2,036)us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax [1]    
Accumulated Net Gain (Loss) from Designated or Qualifying Cash Flow Hedges [Member]        
Movement in Accumulated Other Comprehensive Income [Roll Forward]        
Beginning balance (28)us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
[1] 120us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
[1]    
OCI before reclassifications (11)us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
[1] (1)us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
[1]    
Amounts reclassified from AOCI 17us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
[1],[2] (24)us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
[1],[2]    
Net current-period OCI 6us-gaap_OtherComprehensiveIncomeLossNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
[1] (25)us-gaap_OtherComprehensiveIncomeLossNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
[1]    
Ending balance (22)us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
[1] 95us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
[1]    
Accumulated Net Unrealized Investment Gain (Loss) [Member]        
Movement in Accumulated Other Comprehensive Income [Roll Forward]        
Beginning balance 3us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember
[1] 2us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember
   
OCI before reclassifications 0us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember
[1] 0us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember
[1]    
Net current-period OCI 0us-gaap_OtherComprehensiveIncomeLossNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember
[1] 0us-gaap_OtherComprehensiveIncomeLossNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember
[1]    
Ending balance 3us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember
[1] 2us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember
[1]    
Accumulated Defined Benefit Plans Adjustment [Member]        
Movement in Accumulated Other Comprehensive Income [Roll Forward]        
Beginning balance (2,640)us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
[1] (2,260)us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
[1]    
OCI before reclassifications (26)us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
[1] (13)us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
[1]    
Amounts reclassified from AOCI 43us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
[1],[2] 35us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
[1],[2]    
Net current-period OCI 17us-gaap_OtherComprehensiveIncomeLossNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
[1] 22us-gaap_OtherComprehensiveIncomeLossNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
[1]    
Ending balance (2,623)us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
[1] (2,238)us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
[1]    
Accumulated Translation Adjustment [Member]        
Movement in Accumulated Other Comprehensive Income [Roll Forward]        
Beginning balance (19)us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedTranslationAdjustmentMember
[1] (10)us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedTranslationAdjustmentMember
   
OCI before reclassifications (12)us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedTranslationAdjustmentMember
[1] (5)us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedTranslationAdjustmentMember
[1]    
Net current-period OCI (12)us-gaap_OtherComprehensiveIncomeLossNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedTranslationAdjustmentMember
[1] (5)us-gaap_OtherComprehensiveIncomeLossNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedTranslationAdjustmentMember
[1]    
Ending balance (31)us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedTranslationAdjustmentMember
[1] (15)us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedTranslationAdjustmentMember
[1]    
Accumulated Equity Investment [Member]        
Movement in Accumulated Other Comprehensive Income [Roll Forward]        
Beginning balance 0us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= exc_AccumulatedEquityInvestmentMember
[1] 108us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= exc_AccumulatedEquityInvestmentMember
[1]    
OCI before reclassifications 0us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= exc_AccumulatedEquityInvestmentMember
[1] 11us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= exc_AccumulatedEquityInvestmentMember
[1]    
Amounts reclassified from AOCI 0us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= exc_AccumulatedEquityInvestmentMember
[1],[2] 1us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= exc_AccumulatedEquityInvestmentMember
[1],[2]    
Net current-period OCI 0us-gaap_OtherComprehensiveIncomeLossNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= exc_AccumulatedEquityInvestmentMember
[1] 12us-gaap_OtherComprehensiveIncomeLossNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= exc_AccumulatedEquityInvestmentMember
[1]    
Ending balance 0us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= exc_AccumulatedEquityInvestmentMember
[1] 120us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ us-gaap_StatementEquityComponentsAxis
= exc_AccumulatedEquityInvestmentMember
[1]    
Exelon Generation Co L L C [Member]        
Movement in Accumulated Other Comprehensive Income [Roll Forward]        
Beginning balance (36)us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
[1] 214us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
[1]    
OCI before reclassifications (18)us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
[1] 2us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
[1]    
Amounts reclassified from AOCI 1us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
[1],[2] (23)us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
[1],[2]    
Net current-period OCI (17)us-gaap_OtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
[1] (21)us-gaap_OtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
[1]    
Ending balance (53)us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
[1] 193us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
[1]    
Exelon Generation Co L L C [Member] | Accumulated Net Gain (Loss) from Designated or Qualifying Cash Flow Hedges [Member]        
Movement in Accumulated Other Comprehensive Income [Roll Forward]        
Beginning balance (18)us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
[1] 114us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
[1]    
OCI before reclassifications (6)us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
[1] (1)us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
[1]    
Amounts reclassified from AOCI 1us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
[1],[2] (24)us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
[1],[2]    
Net current-period OCI (5)us-gaap_OtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
[1] (25)us-gaap_OtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
[1]    
Ending balance (23)us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
[1] 89us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
[1]    
Exelon Generation Co L L C [Member] | Accumulated Net Unrealized Investment Gain (Loss) [Member]        
Movement in Accumulated Other Comprehensive Income [Roll Forward]        
Beginning balance 1us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember
[1] 2us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember
[1]    
OCI before reclassifications 0us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember
[1] (3)us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember
[1]    
Net current-period OCI 0us-gaap_OtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember
[1] (3)us-gaap_OtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember
[1]    
Ending balance 1us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember
[1] (1)us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember
[1]    
Exelon Generation Co L L C [Member] | Accumulated Defined Benefit Plans Adjustment [Member]        
Movement in Accumulated Other Comprehensive Income [Roll Forward]        
Beginning balance     0us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
[1]  
Ending balance   0us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
[1] 0us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
[1]  
Exelon Generation Co L L C [Member] | Accumulated Translation Adjustment [Member]        
Movement in Accumulated Other Comprehensive Income [Roll Forward]        
Beginning balance (19)us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedTranslationAdjustmentMember
[1] (10)us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedTranslationAdjustmentMember
   
OCI before reclassifications (12)us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedTranslationAdjustmentMember
[1] (5)us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedTranslationAdjustmentMember
[1]    
Net current-period OCI (12)us-gaap_OtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedTranslationAdjustmentMember
[1] (5)us-gaap_OtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedTranslationAdjustmentMember
[1]    
Ending balance (31)us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedTranslationAdjustmentMember
[1] (15)us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedTranslationAdjustmentMember
[1]    
Exelon Generation Co L L C [Member] | Accumulated Equity Investment [Member]        
Movement in Accumulated Other Comprehensive Income [Roll Forward]        
Beginning balance 0us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ us-gaap_StatementEquityComponentsAxis
= exc_AccumulatedEquityInvestmentMember
[1] 108us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ us-gaap_StatementEquityComponentsAxis
= exc_AccumulatedEquityInvestmentMember
[1]    
OCI before reclassifications 0us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ us-gaap_StatementEquityComponentsAxis
= exc_AccumulatedEquityInvestmentMember
[1] 11us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ us-gaap_StatementEquityComponentsAxis
= exc_AccumulatedEquityInvestmentMember
[1]    
Amounts reclassified from AOCI 0us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ us-gaap_StatementEquityComponentsAxis
= exc_AccumulatedEquityInvestmentMember
[1],[2] 1us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ us-gaap_StatementEquityComponentsAxis
= exc_AccumulatedEquityInvestmentMember
[1],[2]    
Net current-period OCI 0us-gaap_OtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ us-gaap_StatementEquityComponentsAxis
= exc_AccumulatedEquityInvestmentMember
[1] 12us-gaap_OtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ us-gaap_StatementEquityComponentsAxis
= exc_AccumulatedEquityInvestmentMember
[1]    
Ending balance 0us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ us-gaap_StatementEquityComponentsAxis
= exc_AccumulatedEquityInvestmentMember
[1] 120us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ us-gaap_StatementEquityComponentsAxis
= exc_AccumulatedEquityInvestmentMember
[1]    
PECO Energy Co [Member]        
Movement in Accumulated Other Comprehensive Income [Roll Forward]        
Beginning balance     1us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_PecoEnergyCoMember
[1] 1us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_PecoEnergyCoMember
[1]
Ending balance 1us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_PecoEnergyCoMember
[1] 1us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_PecoEnergyCoMember
[1] 1us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_PecoEnergyCoMember
[1] 1us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_PecoEnergyCoMember
[1]
PECO Energy Co [Member] | Accumulated Net Gain (Loss) from Designated or Qualifying Cash Flow Hedges [Member]        
Movement in Accumulated Other Comprehensive Income [Roll Forward]        
Beginning balance     0us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_PecoEnergyCoMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
[1] 0us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_PecoEnergyCoMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
[1]
Ending balance 0us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_PecoEnergyCoMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
[1] 0us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_PecoEnergyCoMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
[1] 0us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_PecoEnergyCoMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
[1] 0us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_PecoEnergyCoMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
[1]
PECO Energy Co [Member] | Accumulated Net Unrealized Investment Gain (Loss) [Member]        
Movement in Accumulated Other Comprehensive Income [Roll Forward]        
Beginning balance     1us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_PecoEnergyCoMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember
[1] 1us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_PecoEnergyCoMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember
[1]
Ending balance $ 1us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_PecoEnergyCoMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember
[1] $ 1us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_PecoEnergyCoMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember
[1] $ 1us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_PecoEnergyCoMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember
[1] $ 1us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax
/ dei_LegalEntityAxis
= exc_PecoEnergyCoMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetUnrealizedInvestmentGainLossMember
[1]
[1] All amounts are net of tax. Amounts in parentheses represent a decrease in accumulated other comprehensive income.
[2] See tables following changes in accumulated other comprehensive income tables for details about these reclassifications.