XML 58 R142.htm IDEA: XBRL DOCUMENT v2.4.1.9
Employee Benefit Plans (Projected Benefit Obligations Reconciliation of Funded Status to Net Amount Recognized) (Details) (USD $)
In Millions, unless otherwise specified
12 Months Ended
Dec. 31, 2014
Dec. 31, 2013
Dec. 31, 2012
Qualified Pension Plans [Member]      
Change in Projected Benefit Obligation [Rollforward]      
Obligation at prior measurement date $ 7,510us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
$ 8,030us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
 
Service cost 135us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
167us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
122us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
Interest cost on projected benefit obligation 344us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
320us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
307us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
Actuarial (gains) losses 618us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
(399)us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
 
Plan amendments (4)us-gaap_DefinedBenefitPlanPlanAmendments
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
(41)us-gaap_DefinedBenefitPlanPlanAmendments
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
 
Benefits paid (496)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
(567)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
 
Obligation at measurement date 8,107us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
7,510us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
8,030us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
Accumulated benefit obligation at measurement date 7,966us-gaap_DefinedBenefitPlanAccumulatedBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
7,361us-gaap_DefinedBenefitPlanAccumulatedBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
 
Change in Fair Value of Plan Assets [Rollforward]      
Plan assets at prior measurement date 8,142us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
7,754us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
 
Actual return on plan assets 852us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
705us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
 
Benefits paid (496)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
(567)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
 
Employer contributions   250us-gaap_DefinedBenefitPlanContributionsByEmployer
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
304us-gaap_DefinedBenefitPlanContributionsByEmployer
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
Plan assets at measurement date 8,498us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
8,142us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
7,754us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
Funded status of plan 391us-gaap_DefinedBenefitPlanFundedStatusOfPlan
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
632us-gaap_DefinedBenefitPlanFundedStatusOfPlan
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
 
Qualified Pension Plans [Member] | Change in Assumptions for Pension Plans [Member]      
Change in Projected Benefit Obligation [Rollforward]      
Actuarial (gains) losses 180us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_ChangeInAccountingEstimateByTypeAxis
= us-gaap_ChangeInAssumptionsForPensionPlansMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
   
Qualified Pension Plans [Member] | Duke Energy Carolinas [Member]      
Change in Projected Benefit Obligation [Rollforward]      
Obligation at prior measurement date 1,875us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
2,028us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
 
Service cost 41us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
49us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
35us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
Interest cost on projected benefit obligation 85us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
80us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
90us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
Actuarial (gains) losses 132us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
(73)us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
 
Transfers of benefit obligation 37duk_DefinedBenefitObligationTransferredToFromPlan
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
(26)duk_DefinedBenefitObligationTransferredToFromPlan
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
 
Plan amendments (1)us-gaap_DefinedBenefitPlanPlanAmendments
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
(13)us-gaap_DefinedBenefitPlanPlanAmendments
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
 
Benefits paid (116)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
(170)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
 
Obligation at measurement date 2,053us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
1,875us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
2,028us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
Accumulated benefit obligation at measurement date 2,052us-gaap_DefinedBenefitPlanAccumulatedBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
1,875us-gaap_DefinedBenefitPlanAccumulatedBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
 
Change in Fair Value of Plan Assets [Rollforward]      
Plan assets at prior measurement date 2,162us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
2,151us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
 
Actual return on plan assets 217us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
207us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
 
Benefits paid (116)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
(170)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
 
Transfer of plan assets 37us-gaap_DefinedBenefitPlanAssetsTransferredToFromPlan
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
(26)us-gaap_DefinedBenefitPlanAssetsTransferredToFromPlan
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
 
Plan assets at measurement date 2,300us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
2,162us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
2,151us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
Funded status of plan 247us-gaap_DefinedBenefitPlanFundedStatusOfPlan
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
287us-gaap_DefinedBenefitPlanFundedStatusOfPlan
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
 
Qualified Pension Plans [Member] | Progress Energy [Member]      
Change in Projected Benefit Obligation [Rollforward]      
Obligation at prior measurement date 2,739us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
2,868us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
 
Service cost 40us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
60us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
63us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
Interest cost on projected benefit obligation 112us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
116us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
127us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
Actuarial (gains) losses 211us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
(118)us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
 
Transfers of benefit obligation (375)duk_DefinedBenefitObligationTransferredToFromPlan
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
(7)duk_DefinedBenefitObligationTransferredToFromPlan
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
 
Plan amendments   (19)us-gaap_DefinedBenefitPlanPlanAmendments
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
 
Benefits paid (170)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
(161)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
 
Obligation at measurement date 2,557us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
2,739us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
2,868us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
Accumulated benefit obligation at measurement date 2,519us-gaap_DefinedBenefitPlanAccumulatedBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
2,698us-gaap_DefinedBenefitPlanAccumulatedBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
 
Change in Fair Value of Plan Assets [Rollforward]      
Plan assets at prior measurement date 2,944us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
2,647us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
 
Actual return on plan assets 300us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
215us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
 
Benefits paid (170)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
(161)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
 
Transfer of plan assets (352)us-gaap_DefinedBenefitPlanAssetsTransferredToFromPlan
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
(7)us-gaap_DefinedBenefitPlanAssetsTransferredToFromPlan
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
 
Employer contributions   250us-gaap_DefinedBenefitPlanContributionsByEmployer
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
346us-gaap_DefinedBenefitPlanContributionsByEmployer
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
Plan assets at measurement date 2,722us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
2,944us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
2,647us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
Funded status of plan 165us-gaap_DefinedBenefitPlanFundedStatusOfPlan
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
205us-gaap_DefinedBenefitPlanFundedStatusOfPlan
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
 
Qualified Pension Plans [Member] | Duke Energy Progress [Member]      
Change in Projected Benefit Obligation [Rollforward]      
Obligation at prior measurement date 1,172us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
1,264us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
 
Service cost 21us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
22us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
25us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
Interest cost on projected benefit obligation 54us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
50us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
58us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
Actuarial (gains) losses 98us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
(26)us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
 
Transfers of benefit obligation (61)duk_DefinedBenefitObligationTransferredToFromPlan
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
(45)duk_DefinedBenefitObligationTransferredToFromPlan
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
 
Plan amendments   (8)us-gaap_DefinedBenefitPlanPlanAmendments
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
 
Benefits paid (97)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
(85)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
 
Obligation at measurement date 1,187us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
1,172us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
1,264us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
Accumulated benefit obligation at measurement date 1,187us-gaap_DefinedBenefitPlanAccumulatedBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
1,172us-gaap_DefinedBenefitPlanAccumulatedBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
 
Change in Fair Value of Plan Assets [Rollforward]      
Plan assets at prior measurement date 1,330us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
1,289us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
 
Actual return on plan assets 149us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
108us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
 
Benefits paid (97)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
(85)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
 
Transfer of plan assets (61)us-gaap_DefinedBenefitPlanAssetsTransferredToFromPlan
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
(45)us-gaap_DefinedBenefitPlanAssetsTransferredToFromPlan
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
 
Employer contributions   63us-gaap_DefinedBenefitPlanContributionsByEmployer
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
141us-gaap_DefinedBenefitPlanContributionsByEmployer
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
Plan assets at measurement date 1,321us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
1,330us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
1,289us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
Funded status of plan 134us-gaap_DefinedBenefitPlanFundedStatusOfPlan
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
158us-gaap_DefinedBenefitPlanFundedStatusOfPlan
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
 
Qualified Pension Plans [Member] | Duke Energy Florida [Member]      
Change in Projected Benefit Obligation [Rollforward]      
Obligation at prior measurement date 1,233us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
1,309us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
 
Service cost 20us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
30us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
30us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
Interest cost on projected benefit obligation 57us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
53us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
56us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
Actuarial (gains) losses 105us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
(75)us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
 
Transfers of benefit obligation (9)duk_DefinedBenefitObligationTransferredToFromPlan
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
(17)duk_DefinedBenefitObligationTransferredToFromPlan
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
 
Plan amendments   (7)us-gaap_DefinedBenefitPlanPlanAmendments
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
 
Benefits paid (71)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
(60)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
 
Obligation at measurement date 1,335us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
1,233us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
1,309us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
Accumulated benefit obligation at measurement date 1,297us-gaap_DefinedBenefitPlanAccumulatedBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
1,192us-gaap_DefinedBenefitPlanAccumulatedBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
 
Change in Fair Value of Plan Assets [Rollforward]      
Plan assets at prior measurement date 1,299us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
1,150us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
 
Actual return on plan assets 144us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
93us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
 
Benefits paid (71)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
(60)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
 
Transfer of plan assets (9)us-gaap_DefinedBenefitPlanAssetsTransferredToFromPlan
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
(17)us-gaap_DefinedBenefitPlanAssetsTransferredToFromPlan
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
 
Employer contributions   133us-gaap_DefinedBenefitPlanContributionsByEmployer
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
128us-gaap_DefinedBenefitPlanContributionsByEmployer
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
Plan assets at measurement date 1,363us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
1,299us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
1,150us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
Funded status of plan 28us-gaap_DefinedBenefitPlanFundedStatusOfPlan
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
66us-gaap_DefinedBenefitPlanFundedStatusOfPlan
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
 
Qualified Pension Plans [Member] | Duke Energy Ohio [Member]      
Change in Projected Benefit Obligation [Rollforward]      
Obligation at prior measurement date 442us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
527us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
 
Service cost 4us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
6us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
6us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
Interest cost on projected benefit obligation 20us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
21us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
31us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
Actuarial (gains) losses 41us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
(71)us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
 
Transfers of benefit obligation (6)duk_DefinedBenefitObligationTransferredToFromPlan
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
(2)duk_DefinedBenefitObligationTransferredToFromPlan
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
 
Plan amendments (1)us-gaap_DefinedBenefitPlanPlanAmendments
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
   
Benefits paid (31)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
(39)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
 
Obligation at measurement date 469us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
442us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
527us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
Accumulated benefit obligation at measurement date 459us-gaap_DefinedBenefitPlanAccumulatedBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
429us-gaap_DefinedBenefitPlanAccumulatedBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
 
Change in Fair Value of Plan Assets [Rollforward]      
Plan assets at prior measurement date 448us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
446us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
 
Actual return on plan assets 45us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
43us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
 
Benefits paid (31)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
(39)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
 
Transfer of plan assets (6)us-gaap_DefinedBenefitPlanAssetsTransferredToFromPlan
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
(2)us-gaap_DefinedBenefitPlanAssetsTransferredToFromPlan
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
 
Plan assets at measurement date 456us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
448us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
446us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
Funded status of plan (13)us-gaap_DefinedBenefitPlanFundedStatusOfPlan
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
6us-gaap_DefinedBenefitPlanFundedStatusOfPlan
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
 
Qualified Pension Plans [Member] | Duke Energy Indiana [Member]      
Change in Projected Benefit Obligation [Rollforward]      
Obligation at prior measurement date 632us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
684us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
 
Service cost 9us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
11us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
9us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
Interest cost on projected benefit obligation 29us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
28us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
30us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
Actuarial (gains) losses 41us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
(56)us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
 
Transfers of benefit obligation   (2)duk_DefinedBenefitObligationTransferredToFromPlan
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
 
Benefits paid (38)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
(33)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
 
Obligation at measurement date 673us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
632us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
684us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
Accumulated benefit obligation at measurement date 645us-gaap_DefinedBenefitPlanAccumulatedBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
608us-gaap_DefinedBenefitPlanAccumulatedBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
 
Change in Fair Value of Plan Assets [Rollforward]      
Plan assets at prior measurement date 654us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
627us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
 
Actual return on plan assets 65us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
62us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
 
Benefits paid (38)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
(33)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
 
Transfer of plan assets   (2)us-gaap_DefinedBenefitPlanAssetsTransferredToFromPlan
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
 
Plan assets at measurement date 681us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
654us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
627us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
Funded status of plan 8us-gaap_DefinedBenefitPlanFundedStatusOfPlan
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
22us-gaap_DefinedBenefitPlanFundedStatusOfPlan
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_PensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
 
Non Qualified Pension Plans [Member]      
Change in Projected Benefit Obligation [Rollforward]      
Obligation at prior measurement date 304us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
335us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
 
Service cost 3us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
3us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
2us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
Interest cost on projected benefit obligation 14us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
13us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
12us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
Actuarial (gains) losses 43us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
(15)us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
 
Settlements   (5)us-gaap_DefinedBenefitPlanSettlementsBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
 
Plan amendments   (1)us-gaap_DefinedBenefitPlanPlanAmendments
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
 
Benefits paid (27)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
(26)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
 
Obligation at measurement date 337us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
304us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
335us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
Accumulated benefit obligation at measurement date 333us-gaap_DefinedBenefitPlanAccumulatedBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
302us-gaap_DefinedBenefitPlanAccumulatedBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
 
Change in Fair Value of Plan Assets [Rollforward]      
Benefits paid (27)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
(26)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
 
Employer contributions 27us-gaap_DefinedBenefitPlanContributionsByEmployer
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
26us-gaap_DefinedBenefitPlanContributionsByEmployer
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
 
Non Qualified Pension Plans [Member] | Change in Assumptions for Pension Plans [Member]      
Change in Projected Benefit Obligation [Rollforward]      
Actuarial (gains) losses 21us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_ChangeInAccountingEstimateByTypeAxis
= us-gaap_ChangeInAssumptionsForPensionPlansMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
   
Non Qualified Pension Plans [Member] | Duke Energy Carolinas [Member]      
Change in Projected Benefit Obligation [Rollforward]      
Obligation at prior measurement date 15us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
16us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
 
Interest cost on projected benefit obligation 1us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
1us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
1us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
Actuarial (gains) losses 2us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
1us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
 
Benefits paid (2)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
(3)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
 
Obligation at measurement date 16us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
15us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
16us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
Accumulated benefit obligation at measurement date 15us-gaap_DefinedBenefitPlanAccumulatedBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
15us-gaap_DefinedBenefitPlanAccumulatedBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
 
Change in Fair Value of Plan Assets [Rollforward]      
Benefits paid (2)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
(3)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
 
Employer contributions 2us-gaap_DefinedBenefitPlanContributionsByEmployer
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
3us-gaap_DefinedBenefitPlanContributionsByEmployer
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
 
Non Qualified Pension Plans [Member] | Progress Energy [Member]      
Change in Projected Benefit Obligation [Rollforward]      
Obligation at prior measurement date 140us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
176us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
 
Service cost 1us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
1us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
2us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
Interest cost on projected benefit obligation 5us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
7us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
8us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
Actuarial (gains) losses 11us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
(11)us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
 
Transfers of benefit obligation (32)duk_DefinedBenefitObligationTransferredToFromPlan
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
(21)duk_DefinedBenefitObligationTransferredToFromPlan
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
 
Benefits paid (9)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
(12)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
 
Obligation at measurement date 116us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
140us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
176us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
Accumulated benefit obligation at measurement date 116us-gaap_DefinedBenefitPlanAccumulatedBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
140us-gaap_DefinedBenefitPlanAccumulatedBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
 
Change in Fair Value of Plan Assets [Rollforward]      
Benefits paid (9)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
(12)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
 
Employer contributions 9us-gaap_DefinedBenefitPlanContributionsByEmployer
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
12us-gaap_DefinedBenefitPlanContributionsByEmployer
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
 
Non Qualified Pension Plans [Member] | Duke Energy Progress [Member]      
Change in Projected Benefit Obligation [Rollforward]      
Obligation at prior measurement date 34us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
38us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
 
Service cost 1us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
1us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
1us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
Interest cost on projected benefit obligation 1us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
1us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
1us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
Actuarial (gains) losses 2us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
(3)us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
 
Benefits paid (3)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
(3)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
 
Obligation at measurement date 35us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
34us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
38us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
Accumulated benefit obligation at measurement date 35us-gaap_DefinedBenefitPlanAccumulatedBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
34us-gaap_DefinedBenefitPlanAccumulatedBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
 
Change in Fair Value of Plan Assets [Rollforward]      
Benefits paid (3)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
(3)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
 
Employer contributions 3us-gaap_DefinedBenefitPlanContributionsByEmployer
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
3us-gaap_DefinedBenefitPlanContributionsByEmployer
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
 
Non Qualified Pension Plans [Member] | Duke Energy Florida [Member]      
Change in Projected Benefit Obligation [Rollforward]      
Obligation at prior measurement date 39us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
45us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
 
Interest cost on projected benefit obligation 2us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
1us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
2us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
Actuarial (gains) losses 20us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
(3)us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
 
Transfers of benefit obligation 4duk_DefinedBenefitObligationTransferredToFromPlan
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
   
Benefits paid (4)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
(4)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
 
Obligation at measurement date 61us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
39us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
45us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
Accumulated benefit obligation at measurement date 61us-gaap_DefinedBenefitPlanAccumulatedBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
39us-gaap_DefinedBenefitPlanAccumulatedBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
 
Change in Fair Value of Plan Assets [Rollforward]      
Benefits paid (4)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
(4)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
 
Employer contributions 4us-gaap_DefinedBenefitPlanContributionsByEmployer
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
4us-gaap_DefinedBenefitPlanContributionsByEmployer
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
 
Non Qualified Pension Plans [Member] | Duke Energy Ohio [Member]      
Change in Projected Benefit Obligation [Rollforward]      
Obligation at prior measurement date 3us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
4us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
 
Actuarial (gains) losses 1us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
(1)us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
 
Obligation at measurement date 4us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
3us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
 
Accumulated benefit obligation at measurement date 4us-gaap_DefinedBenefitPlanAccumulatedBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
3us-gaap_DefinedBenefitPlanAccumulatedBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
 
Non Qualified Pension Plans [Member] | Duke Energy Indiana [Member]      
Change in Projected Benefit Obligation [Rollforward]      
Obligation at prior measurement date 5us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
   
Actuarial (gains) losses 1us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
   
Benefits paid (1)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
   
Obligation at measurement date 5us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
  5us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
Accumulated benefit obligation at measurement date 5us-gaap_DefinedBenefitPlanAccumulatedBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
5us-gaap_DefinedBenefitPlanAccumulatedBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
 
Change in Fair Value of Plan Assets [Rollforward]      
Benefits paid (1)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
   
Employer contributions 1us-gaap_DefinedBenefitPlanContributionsByEmployer
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPensionPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
   
Other Post-Retirement Benefit Plans [Member]      
Change in Projected Benefit Obligation [Rollforward]      
Obligation at prior measurement date 1,106us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
1,794us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
 
Service cost 10us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
24us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
16us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
Interest cost on projected benefit obligation 49us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
68us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
56us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
Plan participants' contributions 25us-gaap_DefinedBenefitPlanContributionsByPlanParticipants
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
47us-gaap_DefinedBenefitPlanContributionsByPlanParticipants
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
 
Actuarial (gains) losses (87)us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
(227)us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
 
Plan amendments (85)us-gaap_DefinedBenefitPlanPlanAmendments
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
(476)us-gaap_DefinedBenefitPlanPlanAmendments
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
 
Benefits paid (103)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
(132)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
 
Accrued retiree drug subsidy 1us-gaap_DefinedBenefitPlanGrossPrescriptionDrugSubsidyReceiptsReceived
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
8us-gaap_DefinedBenefitPlanGrossPrescriptionDrugSubsidyReceiptsReceived
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
 
Obligation at measurement date 916us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
1,106us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
1,794us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
Change in Fair Value of Plan Assets [Rollforward]      
Plan assets at prior measurement date 214us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
198us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
 
Actual return on plan assets 18us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
18us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
 
Benefits paid (103)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
(132)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
 
Employer contributions 73us-gaap_DefinedBenefitPlanContributionsByEmployer
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
83us-gaap_DefinedBenefitPlanContributionsByEmployer
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
 
Plan participants' contributions 25us-gaap_DefinedBenefitPlanContributionsByPlanParticipants
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
47us-gaap_DefinedBenefitPlanContributionsByPlanParticipants
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
 
Plan assets at measurement date 227us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
214us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
198us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
Other Post-Retirement Benefit Plans [Member] | Change in Assumptions for Pension Plans [Member]      
Change in Projected Benefit Obligation [Rollforward]      
Actuarial (gains) losses 7us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_ChangeInAccountingEstimateByTypeAxis
= us-gaap_ChangeInAssumptionsForPensionPlansMember
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
   
Other Post-Retirement Benefit Plans [Member] | Duke Energy Carolinas [Member]      
Change in Projected Benefit Obligation [Rollforward]      
Obligation at prior measurement date 265us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
316us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
 
Service cost 2us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
2us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
2us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
Interest cost on projected benefit obligation 12us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
13us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
15us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
Plan participants' contributions 10us-gaap_DefinedBenefitPlanContributionsByPlanParticipants
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
15us-gaap_DefinedBenefitPlanContributionsByPlanParticipants
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
 
Actuarial (gains) losses (35)us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
(32)us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
 
Transfers of benefit obligation 1duk_DefinedBenefitObligationTransferredToFromPlan
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
   
Plan amendments (4)us-gaap_DefinedBenefitPlanPlanAmendments
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
(16)us-gaap_DefinedBenefitPlanPlanAmendments
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
 
Benefits paid (31)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
(36)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
 
Accrued retiree drug subsidy   3us-gaap_DefinedBenefitPlanGrossPrescriptionDrugSubsidyReceiptsReceived
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
 
Obligation at measurement date 220us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
265us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
316us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
Change in Fair Value of Plan Assets [Rollforward]      
Plan assets at prior measurement date 143us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
134us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
 
Actual return on plan assets 12us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
13us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
 
Benefits paid (31)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
(36)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
 
Transfer of plan assets (1)us-gaap_DefinedBenefitPlanAssetsTransferredToFromPlan
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
(1)us-gaap_DefinedBenefitPlanAssetsTransferredToFromPlan
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
 
Employer contributions 12us-gaap_DefinedBenefitPlanContributionsByEmployer
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
18us-gaap_DefinedBenefitPlanContributionsByEmployer
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
 
Plan participants' contributions 10us-gaap_DefinedBenefitPlanContributionsByPlanParticipants
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
15us-gaap_DefinedBenefitPlanContributionsByPlanParticipants
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
 
Plan assets at measurement date 145us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
143us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
134us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyCarolinasMember
Other Post-Retirement Benefit Plans [Member] | Progress Energy [Member]      
Change in Projected Benefit Obligation [Rollforward]      
Obligation at prior measurement date 533us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
1,128us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
 
Service cost 4us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
18us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
17us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
Interest cost on projected benefit obligation 22us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
41us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
43us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
Plan participants' contributions 8us-gaap_DefinedBenefitPlanContributionsByPlanParticipants
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
14us-gaap_DefinedBenefitPlanContributionsByPlanParticipants
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
 
Actuarial (gains) losses (19)us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
(156)us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
 
Transfers of benefit obligation (48)duk_DefinedBenefitObligationTransferredToFromPlan
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
(1)duk_DefinedBenefitObligationTransferredToFromPlan
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
 
Plan amendments (77)us-gaap_DefinedBenefitPlanPlanAmendments
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
(455)us-gaap_DefinedBenefitPlanPlanAmendments
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
 
Benefits paid (44)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
(60)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
 
Accrued retiree drug subsidy   4us-gaap_DefinedBenefitPlanGrossPrescriptionDrugSubsidyReceiptsReceived
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
 
Obligation at measurement date 379us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
533us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
1,128us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
Change in Fair Value of Plan Assets [Rollforward]      
Benefits paid (44)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
(60)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
 
Employer contributions 36us-gaap_DefinedBenefitPlanContributionsByEmployer
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
46us-gaap_DefinedBenefitPlanContributionsByEmployer
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
 
Plan participants' contributions 8us-gaap_DefinedBenefitPlanContributionsByPlanParticipants
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
14us-gaap_DefinedBenefitPlanContributionsByPlanParticipants
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_ProgressEnergyMember
 
Other Post-Retirement Benefit Plans [Member] | Duke Energy Progress [Member]      
Change in Projected Benefit Obligation [Rollforward]      
Obligation at prior measurement date 233us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
612us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
 
Service cost 1us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
9us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
8us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
Interest cost on projected benefit obligation 11us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
22us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
23us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
Plan participants' contributions 4us-gaap_DefinedBenefitPlanContributionsByPlanParticipants
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
6us-gaap_DefinedBenefitPlanContributionsByPlanParticipants
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
 
Actuarial (gains) losses (21)us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
(73)us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
 
Transfers of benefit obligation (2)duk_DefinedBenefitObligationTransferredToFromPlan
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
(8)duk_DefinedBenefitObligationTransferredToFromPlan
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
 
Plan amendments    (311)us-gaap_DefinedBenefitPlanPlanAmendments
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
 
Benefits paid (19)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
(26)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
 
Accrued retiree drug subsidy   2us-gaap_DefinedBenefitPlanGrossPrescriptionDrugSubsidyReceiptsReceived
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
 
Obligation at measurement date 207us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
233us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
612us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
Change in Fair Value of Plan Assets [Rollforward]      
Benefits paid (19)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
(26)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
 
Employer contributions 14us-gaap_DefinedBenefitPlanContributionsByEmployer
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
20us-gaap_DefinedBenefitPlanContributionsByEmployer
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
 
Plan participants' contributions 4us-gaap_DefinedBenefitPlanContributionsByPlanParticipants
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
6us-gaap_DefinedBenefitPlanContributionsByPlanParticipants
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
 
Plan assets at measurement date (1)us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyProgressMember
   
Other Post-Retirement Benefit Plans [Member] | Duke Energy Florida [Member]      
Change in Projected Benefit Obligation [Rollforward]      
Obligation at prior measurement date 253us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
413us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
 
Service cost 3us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
7us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
7us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
Interest cost on projected benefit obligation 12us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
16us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
18us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
Plan participants' contributions 4us-gaap_DefinedBenefitPlanContributionsByPlanParticipants
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
7us-gaap_DefinedBenefitPlanContributionsByPlanParticipants
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
 
Actuarial (gains) losses   (70)us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
 
Plan amendments (78)us-gaap_DefinedBenefitPlanPlanAmendments
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
(91)us-gaap_DefinedBenefitPlanPlanAmendments
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
 
Benefits paid (24)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
(31)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
 
Accrued retiree drug subsidy   2us-gaap_DefinedBenefitPlanGrossPrescriptionDrugSubsidyReceiptsReceived
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
 
Obligation at measurement date 170us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
253us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
413us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
Change in Fair Value of Plan Assets [Rollforward]      
Benefits paid (24)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
(31)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
 
Employer contributions 20us-gaap_DefinedBenefitPlanContributionsByEmployer
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
24us-gaap_DefinedBenefitPlanContributionsByEmployer
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
 
Plan participants' contributions 4us-gaap_DefinedBenefitPlanContributionsByPlanParticipants
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
7us-gaap_DefinedBenefitPlanContributionsByPlanParticipants
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyFloridaMember
 
Other Post-Retirement Benefit Plans [Member] | Duke Energy Ohio [Member]      
Change in Projected Benefit Obligation [Rollforward]      
Obligation at prior measurement date 42us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
48us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
 
Service cost   1us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
1us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
Interest cost on projected benefit obligation 2us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
2us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
3us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
Plan participants' contributions   3us-gaap_DefinedBenefitPlanContributionsByPlanParticipants
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
 
Actuarial (gains) losses   (6)us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
 
Transfers of benefit obligation (1)duk_DefinedBenefitObligationTransferredToFromPlan
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
   
Plan amendments (1)us-gaap_DefinedBenefitPlanPlanAmendments
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
   
Benefits paid (3)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
(6)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
 
Obligation at measurement date 39us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
42us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
48us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
Change in Fair Value of Plan Assets [Rollforward]      
Plan assets at prior measurement date 8us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
7us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
 
Actual return on plan assets   2us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
 
Benefits paid (3)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
(6)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
 
Employer contributions 3us-gaap_DefinedBenefitPlanContributionsByEmployer
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
2us-gaap_DefinedBenefitPlanContributionsByEmployer
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
 
Plan participants' contributions   3us-gaap_DefinedBenefitPlanContributionsByPlanParticipants
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
 
Plan assets at measurement date 8us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
8us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
7us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyOhioMember
Other Post-Retirement Benefit Plans [Member] | Duke Energy Indiana [Member]      
Change in Projected Benefit Obligation [Rollforward]      
Obligation at prior measurement date 118us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
136us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
 
Service cost 1us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
1us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
1us-gaap_DefinedBenefitPlanServiceCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
Interest cost on projected benefit obligation 5us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
5us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
6us-gaap_DefinedBenefitPlanInterestCost
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
Plan participants' contributions 2us-gaap_DefinedBenefitPlanContributionsByPlanParticipants
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
3us-gaap_DefinedBenefitPlanContributionsByPlanParticipants
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
 
Actuarial (gains) losses (20)us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
(12)us-gaap_DefinedBenefitPlanActuarialGainLoss
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
 
Plan amendments   (3)us-gaap_DefinedBenefitPlanPlanAmendments
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
 
Benefits paid (10)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
(14)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
 
Accrued retiree drug subsidy   2us-gaap_DefinedBenefitPlanGrossPrescriptionDrugSubsidyReceiptsReceived
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
 
Obligation at measurement date 96us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
118us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
136us-gaap_DefinedBenefitPlanBenefitObligation
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
Change in Fair Value of Plan Assets [Rollforward]      
Plan assets at prior measurement date 18us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
17us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
 
Actual return on plan assets 2us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
2us-gaap_DefinedBenefitPlanActualReturnOnPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
 
Benefits paid (10)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
(14)us-gaap_DefinedBenefitPlanBenefitsPaid
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
 
Employer contributions 11us-gaap_DefinedBenefitPlanContributionsByEmployer
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
10us-gaap_DefinedBenefitPlanContributionsByEmployer
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
 
Plan participants' contributions 2us-gaap_DefinedBenefitPlanContributionsByPlanParticipants
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
3us-gaap_DefinedBenefitPlanContributionsByPlanParticipants
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
 
Plan assets at measurement date $ 23us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
$ 18us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember
$ 17us-gaap_DefinedBenefitPlanFairValueOfPlanAssets
/ us-gaap_DefinedBenefitPlansDisclosuresDefinedBenefitPlansAxis
= us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember
/ dei_LegalEntityAxis
= duk_DukeEnergyIndianaMember