XML 206 R108.htm IDEA: XBRL DOCUMENT v2.4.1.9
Derivative Financial Instruments - Summary of Economic Hedges (Details) (USD $)
In Millions, unless otherwise specified
12 Months Ended
Dec. 31, 2014
Dec. 31, 2013
Dec. 31, 2012
Derivative [Line Items]      
Change in fair value of commodity positions $ (92)exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsChangeInFairValue $ (5)exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsChangeInFairValue $ 6exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsChangeInFairValue
Reclassification to realized at settlement (2)exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsReclassificationToRealizedAtSettlement (1)exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsReclassificationToRealizedAtSettlement (3)exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsReclassificationToRealizedAtSettlement
Net mark-to market gains (losses) (693)exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet 507exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet 533exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
Operating Revenue [Member]      
Derivative [Line Items]      
Change in fair value of commodity positions (607)exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsChangeInFairValue
/ us-gaap_IncomeStatementLocationAxis
= exc_OperatingRevenueMember
460exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsChangeInFairValue
/ us-gaap_IncomeStatementLocationAxis
= exc_OperatingRevenueMember
(241)exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsChangeInFairValue
/ us-gaap_IncomeStatementLocationAxis
= exc_OperatingRevenueMember
Reclassification to realized at settlement   53exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsReclassificationToRealizedAtSettlement
/ us-gaap_IncomeStatementLocationAxis
= exc_OperatingRevenueMember
771exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsReclassificationToRealizedAtSettlement
/ us-gaap_IncomeStatementLocationAxis
= exc_OperatingRevenueMember
Net mark-to market gains (losses)   513exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ us-gaap_IncomeStatementLocationAxis
= exc_OperatingRevenueMember
530exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ us-gaap_IncomeStatementLocationAxis
= exc_OperatingRevenueMember
Operating Revenue [Member]      
Derivative [Line Items]      
Net mark-to market gains (losses) 0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= exc_OperatingRevenueMember
7exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= exc_OperatingRevenueMember
7exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= exc_OperatingRevenueMember
Intersegment Eliminations [Member] | Operating Revenue [Member]      
Derivative [Line Items]      
Change in fair value of commodity positions 0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsChangeInFairValue
/ us-gaap_ConsolidationItemsAxis
= us-gaap_IntersegmentEliminationMember
/ us-gaap_IncomeStatementLocationAxis
= exc_OperatingRevenueMember
(6)exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsChangeInFairValue
/ us-gaap_ConsolidationItemsAxis
= us-gaap_IntersegmentEliminationMember
/ us-gaap_IncomeStatementLocationAxis
= exc_OperatingRevenueMember
(94)exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsChangeInFairValue
/ us-gaap_ConsolidationItemsAxis
= us-gaap_IntersegmentEliminationMember
/ us-gaap_IncomeStatementLocationAxis
= exc_OperatingRevenueMember
Reclassification to realized at settlement 0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsReclassificationToRealizedAtSettlement
/ us-gaap_ConsolidationItemsAxis
= us-gaap_IntersegmentEliminationMember
/ us-gaap_IncomeStatementLocationAxis
= exc_OperatingRevenueMember
13exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsReclassificationToRealizedAtSettlement
/ us-gaap_ConsolidationItemsAxis
= us-gaap_IntersegmentEliminationMember
/ us-gaap_IncomeStatementLocationAxis
= exc_OperatingRevenueMember
101exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsReclassificationToRealizedAtSettlement
/ us-gaap_ConsolidationItemsAxis
= us-gaap_IntersegmentEliminationMember
/ us-gaap_IncomeStatementLocationAxis
= exc_OperatingRevenueMember
Net mark-to market gains (losses) 0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ us-gaap_ConsolidationItemsAxis
= us-gaap_IntersegmentEliminationMember
/ us-gaap_IncomeStatementLocationAxis
= exc_OperatingRevenueMember
7exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ us-gaap_ConsolidationItemsAxis
= us-gaap_IntersegmentEliminationMember
/ us-gaap_IncomeStatementLocationAxis
= exc_OperatingRevenueMember
7exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ us-gaap_ConsolidationItemsAxis
= us-gaap_IntersegmentEliminationMember
/ us-gaap_IncomeStatementLocationAxis
= exc_OperatingRevenueMember
Intersegment Eliminations [Member] | Operating Revenue [Member]      
Derivative [Line Items]      
Change in fair value of commodity positions 0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsChangeInFairValue
/ us-gaap_ConsolidationItemsAxis
= us-gaap_IntersegmentEliminationMember
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= exc_OperatingRevenueMember
0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsChangeInFairValue
/ us-gaap_ConsolidationItemsAxis
= us-gaap_IntersegmentEliminationMember
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= exc_OperatingRevenueMember
0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsChangeInFairValue
/ us-gaap_ConsolidationItemsAxis
= us-gaap_IntersegmentEliminationMember
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= exc_OperatingRevenueMember
Reclassification to realized at settlement 0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsReclassificationToRealizedAtSettlement
/ us-gaap_ConsolidationItemsAxis
= us-gaap_IntersegmentEliminationMember
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= exc_OperatingRevenueMember
0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsReclassificationToRealizedAtSettlement
/ us-gaap_ConsolidationItemsAxis
= us-gaap_IntersegmentEliminationMember
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= exc_OperatingRevenueMember
0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsReclassificationToRealizedAtSettlement
/ us-gaap_ConsolidationItemsAxis
= us-gaap_IntersegmentEliminationMember
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= exc_OperatingRevenueMember
Interest Rate Swap [Member]      
Derivative [Line Items]      
Net mark-to market gains (losses) (94)exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateSwapMember
(6)exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateSwapMember
3exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateSwapMember
Interest Rate Swap [Member] | Intersegment Eliminations [Member] | Operating Revenue [Member]      
Derivative [Line Items]      
Net mark-to market gains (losses) 0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ us-gaap_ConsolidationItemsAxis
= us-gaap_IntersegmentEliminationMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateSwapMember
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= exc_OperatingRevenueMember
0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ us-gaap_ConsolidationItemsAxis
= us-gaap_IntersegmentEliminationMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateSwapMember
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= exc_OperatingRevenueMember
0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ us-gaap_ConsolidationItemsAxis
= us-gaap_IntersegmentEliminationMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateSwapMember
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= exc_OperatingRevenueMember
Other Segments [Member] | Interest Expense [Member]      
Derivative [Line Items]      
Change in fair value of commodity positions 0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsChangeInFairValue
/ us-gaap_IncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_AllOtherSegmentsMember
0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsChangeInFairValue
/ us-gaap_IncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_AllOtherSegmentsMember
0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsChangeInFairValue
/ us-gaap_IncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_AllOtherSegmentsMember
Reclassification to realized at settlement 0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsReclassificationToRealizedAtSettlement
/ us-gaap_IncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_AllOtherSegmentsMember
0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsReclassificationToRealizedAtSettlement
/ us-gaap_IncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_AllOtherSegmentsMember
0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsReclassificationToRealizedAtSettlement
/ us-gaap_IncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_AllOtherSegmentsMember
Net mark-to market gains (losses) 0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ us-gaap_IncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_AllOtherSegmentsMember
0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ us-gaap_IncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_AllOtherSegmentsMember
0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ us-gaap_IncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_AllOtherSegmentsMember
Other Segments [Member] | Interest Expense [Member]      
Derivative [Line Items]      
Change in fair value of commodity positions (100)exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsChangeInFairValue
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_AllOtherSegmentsMember
0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsChangeInFairValue
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_AllOtherSegmentsMember
0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsChangeInFairValue
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_AllOtherSegmentsMember
Reclassification to realized at settlement 0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsReclassificationToRealizedAtSettlement
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_AllOtherSegmentsMember
0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsReclassificationToRealizedAtSettlement
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_AllOtherSegmentsMember
0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsReclassificationToRealizedAtSettlement
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_AllOtherSegmentsMember
Net mark-to market gains (losses) (100)exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_AllOtherSegmentsMember
0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_AllOtherSegmentsMember
0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_AllOtherSegmentsMember
Other Segments [Member] | Interest Rate Swap [Member] | Interest Expense [Member]      
Derivative [Line Items]      
Net mark-to market gains (losses) (100)exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateSwapMember
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_AllOtherSegmentsMember
0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateSwapMember
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_AllOtherSegmentsMember
0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateSwapMember
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_AllOtherSegmentsMember
Exelon Generation Co L L C [Member]      
Derivative [Line Items]      
Change in fair value of commodity positions (607)exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsChangeInFairValue
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
466exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsChangeInFairValue
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
(147)exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsChangeInFairValue
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
Reclassification to realized at settlement 8exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsReclassificationToRealizedAtSettlement
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
40exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsReclassificationToRealizedAtSettlement
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
670exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsReclassificationToRealizedAtSettlement
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
Net mark-to market gains (losses) (599)exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
506exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
523exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
Exelon Generation Co L L C [Member] | Interest Expense [Member]      
Derivative [Line Items]      
Change in fair value of commodity positions 0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsChangeInFairValue
/ us-gaap_IncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsChangeInFairValue
/ us-gaap_IncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsChangeInFairValue
/ us-gaap_IncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
Reclassification to realized at settlement 0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsReclassificationToRealizedAtSettlement
/ us-gaap_IncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsReclassificationToRealizedAtSettlement
/ us-gaap_IncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsReclassificationToRealizedAtSettlement
/ us-gaap_IncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
Net mark-to market gains (losses) 0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ us-gaap_IncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ us-gaap_IncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ us-gaap_IncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
Exelon Generation Co L L C [Member] | Purchased Power [Member]      
Derivative [Line Items]      
Change in fair value of commodity positions 8exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsChangeInFairValue
/ us-gaap_IncomeStatementLocationAxis
= exc_PurchasedPowerMember
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
(5)exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsChangeInFairValue
/ us-gaap_IncomeStatementLocationAxis
= exc_PurchasedPowerMember
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
6exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsChangeInFairValue
/ us-gaap_IncomeStatementLocationAxis
= exc_PurchasedPowerMember
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
Reclassification to realized at settlement (2)exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsReclassificationToRealizedAtSettlement
/ us-gaap_IncomeStatementLocationAxis
= exc_PurchasedPowerMember
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
(1)exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsReclassificationToRealizedAtSettlement
/ us-gaap_IncomeStatementLocationAxis
= exc_PurchasedPowerMember
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
(3)exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsReclassificationToRealizedAtSettlement
/ us-gaap_IncomeStatementLocationAxis
= exc_PurchasedPowerMember
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
Net mark-to market gains (losses) (593)exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ us-gaap_IncomeStatementLocationAxis
= exc_PurchasedPowerMember
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
500exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ us-gaap_IncomeStatementLocationAxis
= exc_PurchasedPowerMember
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
526exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ us-gaap_IncomeStatementLocationAxis
= exc_PurchasedPowerMember
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
Exelon Generation Co L L C [Member] | Operating Revenue [Member]      
Derivative [Line Items]      
Change in fair value of commodity positions (413)exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsChangeInFairValue
/ us-gaap_IncomeStatementLocationAxis
= exc_OperatingRevenueMember
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
286exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsChangeInFairValue
/ us-gaap_IncomeStatementLocationAxis
= exc_OperatingRevenueMember
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
(362)exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsChangeInFairValue
/ us-gaap_IncomeStatementLocationAxis
= exc_OperatingRevenueMember
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
Reclassification to realized at settlement 231exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsReclassificationToRealizedAtSettlement
/ us-gaap_IncomeStatementLocationAxis
= exc_OperatingRevenueMember
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
(64)exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsReclassificationToRealizedAtSettlement
/ us-gaap_IncomeStatementLocationAxis
= exc_OperatingRevenueMember
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
432exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsReclassificationToRealizedAtSettlement
/ us-gaap_IncomeStatementLocationAxis
= exc_OperatingRevenueMember
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
Net mark-to market gains (losses) (182)exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ us-gaap_IncomeStatementLocationAxis
= exc_OperatingRevenueMember
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
222exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ us-gaap_IncomeStatementLocationAxis
= exc_OperatingRevenueMember
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
70exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ us-gaap_IncomeStatementLocationAxis
= exc_OperatingRevenueMember
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
Exelon Generation Co L L C [Member] | Purchased Power And Fuel [Member]      
Derivative [Line Items]      
Change in fair value of commodity positions (194)exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsChangeInFairValue
/ us-gaap_IncomeStatementLocationAxis
= exc_PurchasedPowerAndFuelMember
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
180exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsChangeInFairValue
/ us-gaap_IncomeStatementLocationAxis
= exc_PurchasedPowerAndFuelMember
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
215exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsChangeInFairValue
/ us-gaap_IncomeStatementLocationAxis
= exc_PurchasedPowerAndFuelMember
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
Reclassification to realized at settlement (223)exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsReclassificationToRealizedAtSettlement
/ us-gaap_IncomeStatementLocationAxis
= exc_PurchasedPowerAndFuelMember
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
104exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsReclassificationToRealizedAtSettlement
/ us-gaap_IncomeStatementLocationAxis
= exc_PurchasedPowerAndFuelMember
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
238exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsReclassificationToRealizedAtSettlement
/ us-gaap_IncomeStatementLocationAxis
= exc_PurchasedPowerAndFuelMember
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
Net mark-to market gains (losses) (417)exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ us-gaap_IncomeStatementLocationAxis
= exc_PurchasedPowerAndFuelMember
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
284exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ us-gaap_IncomeStatementLocationAxis
= exc_PurchasedPowerAndFuelMember
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
453exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ us-gaap_IncomeStatementLocationAxis
= exc_PurchasedPowerAndFuelMember
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
Exelon Generation Co L L C [Member] | Operating Revenue [Member]      
Derivative [Line Items]      
Change in fair value of commodity positions 10exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsChangeInFairValue
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= exc_OperatingRevenueMember
(1)exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsChangeInFairValue
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= exc_OperatingRevenueMember
0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsChangeInFairValue
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= exc_OperatingRevenueMember
Reclassification to realized at settlement (2)exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsReclassificationToRealizedAtSettlement
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= exc_OperatingRevenueMember
(1)exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsReclassificationToRealizedAtSettlement
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= exc_OperatingRevenueMember
(3)exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsReclassificationToRealizedAtSettlement
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= exc_OperatingRevenueMember
Net mark-to market gains (losses) (174)exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= exc_OperatingRevenueMember
220exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= exc_OperatingRevenueMember
67exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= exc_OperatingRevenueMember
Exelon Generation Co L L C [Member] | Purchased Power And Fuel [Member]      
Derivative [Line Items]      
Change in fair value of commodity positions 0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsChangeInFairValue
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= exc_PurchasedPowerAndFuelMember
0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsChangeInFairValue
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= exc_PurchasedPowerAndFuelMember
0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsChangeInFairValue
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= exc_PurchasedPowerAndFuelMember
Reclassification to realized at settlement 0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsReclassificationToRealizedAtSettlement
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= exc_PurchasedPowerAndFuelMember
0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsReclassificationToRealizedAtSettlement
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= exc_PurchasedPowerAndFuelMember
0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsReclassificationToRealizedAtSettlement
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= exc_PurchasedPowerAndFuelMember
Net mark-to market gains (losses) (417)exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= exc_PurchasedPowerAndFuelMember
284exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= exc_PurchasedPowerAndFuelMember
453exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= exc_PurchasedPowerAndFuelMember
Exelon Generation Co L L C [Member] | Interest Expense [Member]      
Derivative [Line Items]      
Change in fair value of commodity positions (2)exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsChangeInFairValue
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
(4)exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsChangeInFairValue
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
6exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsChangeInFairValue
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
Reclassification to realized at settlement 0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsReclassificationToRealizedAtSettlement
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsReclassificationToRealizedAtSettlement
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsReclassificationToRealizedAtSettlement
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
Net mark-to market gains (losses) (2)exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
(4)exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
6exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
Exelon Generation Co L L C [Member] | Interest Rate Swap [Member] | Purchased Power [Member]      
Derivative [Line Items]      
Net mark-to market gains (losses) 6exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateSwapMember
/ us-gaap_IncomeStatementLocationAxis
= exc_PurchasedPowerMember
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
(6)exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateSwapMember
/ us-gaap_IncomeStatementLocationAxis
= exc_PurchasedPowerMember
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
3exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateSwapMember
/ us-gaap_IncomeStatementLocationAxis
= exc_PurchasedPowerMember
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
Exelon Generation Co L L C [Member] | Interest Rate Swap [Member] | Operating Revenue [Member]      
Derivative [Line Items]      
Net mark-to market gains (losses) 8exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateSwapMember
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= exc_OperatingRevenueMember
(2)exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateSwapMember
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= exc_OperatingRevenueMember
(3)exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateSwapMember
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= exc_OperatingRevenueMember
Exelon Generation Co L L C [Member] | Interest Rate Swap [Member] | Purchased Power And Fuel [Member]      
Derivative [Line Items]      
Net mark-to market gains (losses) 0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateSwapMember
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= exc_PurchasedPowerAndFuelMember
0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateSwapMember
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= exc_PurchasedPowerAndFuelMember
0exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateSwapMember
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= exc_PurchasedPowerAndFuelMember
Exelon Generation Co L L C [Member] | Interest Rate Swap [Member] | Interest Expense [Member]      
Derivative [Line Items]      
Net mark-to market gains (losses) $ (2)exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateSwapMember
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
$ (4)exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateSwapMember
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
$ 6exc_OtherDerivativesNotDesignatedAsHedgingInstrumentsGainLossNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateSwapMember
/ dei_LegalEntityAxis
= exc_ExelonGenerationCoLLCMember
/ exc_ProprietaryTradingActivitiesGainLossByIncomeStatementLocationAxis
= us-gaap_InterestExpenseMember