XML 1144 R95.htm IDEA: XBRL DOCUMENT v2.4.1.9
Derivatives - Pre-tax Effect of Derivatives on Balance Sheets and Statements of Income (Details) (USD $)
In Thousands, unless otherwise specified
12 Months Ended
Dec. 31, 2014
Dec. 31, 2013
Dec. 31, 2012
Derivative Instruments, Gain (Loss) [Line Items]      
Regulatory Hedge Unrealized Loss $ (197,000)so_RegulatoryHedgeUnrealizedLoss $ (55,000)so_RegulatoryHedgeUnrealizedLoss  
Regulatory Hedge Unrealized Gain 7,000so_RegulatoryHedgeUnrealizedGain 23,000so_RegulatoryHedgeUnrealizedGain  
Other regulatory assets current [Member] | Energy Related Derivative [Member]      
Derivative Instruments, Gain (Loss) [Line Items]      
Regulatory Hedge Unrealized Loss (118,000)so_RegulatoryHedgeUnrealizedLoss
/ us-gaap_BalanceSheetLocationAxis
= so_OtherRegulatoryAssetsCurrentMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
(26,000)so_RegulatoryHedgeUnrealizedLoss
/ us-gaap_BalanceSheetLocationAxis
= so_OtherRegulatoryAssetsCurrentMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
 
Other regulatory assets deferred [Member] | Energy Related Derivative [Member]      
Derivative Instruments, Gain (Loss) [Line Items]      
Regulatory Hedge Unrealized Loss (79,000)so_RegulatoryHedgeUnrealizedLoss
/ us-gaap_BalanceSheetLocationAxis
= so_OtherRegulatoryAssetsDeferredMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
(29,000)so_RegulatoryHedgeUnrealizedLoss
/ us-gaap_BalanceSheetLocationAxis
= so_OtherRegulatoryAssetsDeferredMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
 
Other regulatory liabilities current [Member] | Energy Related Derivative [Member]      
Derivative Instruments, Gain (Loss) [Line Items]      
Regulatory Hedge Unrealized Gain 7,000so_RegulatoryHedgeUnrealizedGain
/ us-gaap_BalanceSheetLocationAxis
= so_OtherRegulatoryLiabilitiesCurrentMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
16,000so_RegulatoryHedgeUnrealizedGain
/ us-gaap_BalanceSheetLocationAxis
= so_OtherRegulatoryLiabilitiesCurrentMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
 
Other regulatory liabilities deferred [Member] | Energy Related Derivative [Member]      
Derivative Instruments, Gain (Loss) [Line Items]      
Regulatory Hedge Unrealized Gain 0so_RegulatoryHedgeUnrealizedGain
/ us-gaap_BalanceSheetLocationAxis
= so_OtherRegulatoryLiabilitiesDeferredMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
7,000so_RegulatoryHedgeUnrealizedGain
/ us-gaap_BalanceSheetLocationAxis
= so_OtherRegulatoryLiabilitiesDeferredMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
 
Alabama Power [Member] | Interest expense, net of amounts capitalized [Member]      
Pre-tax effect of derivatives designated as cash flow hedging instruments      
Gain (Loss) Reclassified from Accumulated OCI into Income (Effective Portion) (3,000)us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet
/ us-gaap_IncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
(3,000)us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet
/ us-gaap_IncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
(3,000)us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet
/ us-gaap_IncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
Alabama Power [Member] | Interest rate derivatives [Member]      
Pre-tax effect of derivatives designated as cash flow hedging instruments      
Gain (Loss) Recognized in OCI on Derivative (Effective Portion) (8,000)us-gaap_DerivativeInstrumentsGainLossRecognizedInOtherComprehensiveIncomeEffectivePortionNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
0us-gaap_DerivativeInstrumentsGainLossRecognizedInOtherComprehensiveIncomeEffectivePortionNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
(18,000)us-gaap_DerivativeInstrumentsGainLossRecognizedInOtherComprehensiveIncomeEffectivePortionNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
Alabama Power [Member] | Other regulatory assets current [Member] | Energy Related Derivative [Member]      
Derivative Instruments, Gain (Loss) [Line Items]      
Regulatory Hedge Unrealized Loss (32,000)so_RegulatoryHedgeUnrealizedLoss
/ us-gaap_BalanceSheetLocationAxis
= so_OtherRegulatoryAssetsCurrentMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
(3,000)so_RegulatoryHedgeUnrealizedLoss
/ us-gaap_BalanceSheetLocationAxis
= so_OtherRegulatoryAssetsCurrentMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
 
Alabama Power [Member] | Other regulatory assets deferred [Member] | Energy Related Derivative [Member]      
Derivative Instruments, Gain (Loss) [Line Items]      
Regulatory Hedge Unrealized Loss (21,000)so_RegulatoryHedgeUnrealizedLoss
/ us-gaap_BalanceSheetLocationAxis
= so_OtherRegulatoryAssetsDeferredMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
(5,000)so_RegulatoryHedgeUnrealizedLoss
/ us-gaap_BalanceSheetLocationAxis
= so_OtherRegulatoryAssetsDeferredMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
 
Alabama Power [Member] | Other regulatory assets [Member]      
Derivative Instruments, Gain (Loss) [Line Items]      
Regulatory Hedge Unrealized Loss (53,000)so_RegulatoryHedgeUnrealizedLoss
/ us-gaap_BalanceSheetLocationAxis
= so_OtherRegulatoryAssetsMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
(8,000)so_RegulatoryHedgeUnrealizedLoss
/ us-gaap_BalanceSheetLocationAxis
= so_OtherRegulatoryAssetsMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
 
Alabama Power [Member] | Other Current Liabilities [Member] | Energy Related Derivative [Member]      
Derivative Instruments, Gain (Loss) [Line Items]      
Regulatory Hedge Unrealized Gain 1,000so_RegulatoryHedgeUnrealizedGain
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherCurrentLiabilitiesMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
5,000so_RegulatoryHedgeUnrealizedGain
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherCurrentLiabilitiesMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
 
Alabama Power [Member] | Other regulatory liabilities deferred [Member] | Energy Related Derivative [Member]      
Derivative Instruments, Gain (Loss) [Line Items]      
Regulatory Hedge Unrealized Gain 0so_RegulatoryHedgeUnrealizedGain
/ us-gaap_BalanceSheetLocationAxis
= so_OtherRegulatoryLiabilitiesDeferredMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
2,000so_RegulatoryHedgeUnrealizedGain
/ us-gaap_BalanceSheetLocationAxis
= so_OtherRegulatoryLiabilitiesDeferredMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
 
Alabama Power [Member] | Other regulatory liabilities [Member]      
Derivative Instruments, Gain (Loss) [Line Items]      
Regulatory Hedge Unrealized Gain 1,000so_RegulatoryHedgeUnrealizedGain
/ us-gaap_BalanceSheetLocationAxis
= so_OtherRegulatoryLiabilitiesMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
7,000so_RegulatoryHedgeUnrealizedGain
/ us-gaap_BalanceSheetLocationAxis
= so_OtherRegulatoryLiabilitiesMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
 
Georgia Power [Member] | Other regulatory assets current [Member] | Hedging Instruments for Regulatory Purposes [Member] | Energy Related Derivative [Member]      
Derivative Instruments, Gain (Loss) [Line Items]      
Regulatory Hedge Unrealized Loss (23,000)so_RegulatoryHedgeUnrealizedLoss
/ us-gaap_BalanceSheetLocationAxis
= so_OtherRegulatoryAssetsCurrentMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= so_HedgingInstrumentsForRegulatoryPurposesMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
(13,000)so_RegulatoryHedgeUnrealizedLoss
/ us-gaap_BalanceSheetLocationAxis
= so_OtherRegulatoryAssetsCurrentMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= so_HedgingInstrumentsForRegulatoryPurposesMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
 
Georgia Power [Member] | Other regulatory assets deferred [Member] | Hedging Instruments for Regulatory Purposes [Member] | Energy Related Derivative [Member]      
Derivative Instruments, Gain (Loss) [Line Items]      
Regulatory Hedge Unrealized Loss (4,000)so_RegulatoryHedgeUnrealizedLoss
/ us-gaap_BalanceSheetLocationAxis
= so_OtherRegulatoryAssetsDeferredMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= so_HedgingInstrumentsForRegulatoryPurposesMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
(8,000)so_RegulatoryHedgeUnrealizedLoss
/ us-gaap_BalanceSheetLocationAxis
= so_OtherRegulatoryAssetsDeferredMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= so_HedgingInstrumentsForRegulatoryPurposesMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
 
Georgia Power [Member] | Other regulatory assets [Member] | Hedging Instruments for Regulatory Purposes [Member] | Energy Related Derivative [Member]      
Derivative Instruments, Gain (Loss) [Line Items]      
Regulatory Hedge Unrealized Loss (27,000)so_RegulatoryHedgeUnrealizedLoss
/ us-gaap_BalanceSheetLocationAxis
= so_OtherRegulatoryAssetsMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= so_HedgingInstrumentsForRegulatoryPurposesMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
(21,000)so_RegulatoryHedgeUnrealizedLoss
/ us-gaap_BalanceSheetLocationAxis
= so_OtherRegulatoryAssetsMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= so_HedgingInstrumentsForRegulatoryPurposesMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
 
Georgia Power [Member] | Other regulatory liabilities current [Member] | Hedging Instruments for Regulatory Purposes [Member] | Energy Related Derivative [Member]      
Derivative Instruments, Gain (Loss) [Line Items]      
Regulatory Hedge Unrealized Gain 6,000so_RegulatoryHedgeUnrealizedGain
/ us-gaap_BalanceSheetLocationAxis
= so_OtherRegulatoryLiabilitiesCurrentMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= so_HedgingInstrumentsForRegulatoryPurposesMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
3,000so_RegulatoryHedgeUnrealizedGain
/ us-gaap_BalanceSheetLocationAxis
= so_OtherRegulatoryLiabilitiesCurrentMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= so_HedgingInstrumentsForRegulatoryPurposesMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
 
Georgia Power [Member] | Other deferred credits and liabilities [Member] | Hedging Instruments for Regulatory Purposes [Member] | Energy Related Derivative [Member]      
Derivative Instruments, Gain (Loss) [Line Items]      
Regulatory Hedge Unrealized Gain 1,000so_RegulatoryHedgeUnrealizedGain
/ us-gaap_BalanceSheetLocationAxis
= so_OtherDeferredCreditsAndLiabilitiesMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= so_HedgingInstrumentsForRegulatoryPurposesMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
2,000so_RegulatoryHedgeUnrealizedGain
/ us-gaap_BalanceSheetLocationAxis
= so_OtherDeferredCreditsAndLiabilitiesMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= so_HedgingInstrumentsForRegulatoryPurposesMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
 
Georgia Power [Member] | Other regulatory liabilities [Member] | Hedging Instruments for Regulatory Purposes [Member] | Energy Related Derivative [Member]      
Derivative Instruments, Gain (Loss) [Line Items]      
Regulatory Hedge Unrealized Gain 7,000so_RegulatoryHedgeUnrealizedGain
/ us-gaap_BalanceSheetLocationAxis
= so_OtherRegulatoryLiabilitiesMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= so_HedgingInstrumentsForRegulatoryPurposesMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
5,000so_RegulatoryHedgeUnrealizedGain
/ us-gaap_BalanceSheetLocationAxis
= so_OtherRegulatoryLiabilitiesMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= so_HedgingInstrumentsForRegulatoryPurposesMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
 
Gulf Power [Member] | Interest rate derivatives [Member]      
Pre-tax effect of derivatives designated as cash flow hedging instruments      
Gain (Loss) Recognized in OCI on Derivative (Effective Portion) 0us-gaap_DerivativeInstrumentsGainLossRecognizedInOtherComprehensiveIncomeEffectivePortionNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ dei_LegalEntityAxis
= so_GulfPowerMember
0us-gaap_DerivativeInstrumentsGainLossRecognizedInOtherComprehensiveIncomeEffectivePortionNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ dei_LegalEntityAxis
= so_GulfPowerMember
0us-gaap_DerivativeInstrumentsGainLossRecognizedInOtherComprehensiveIncomeEffectivePortionNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ dei_LegalEntityAxis
= so_GulfPowerMember
Gulf Power [Member] | Interest rate derivatives [Member] | Interest expense, net of amounts capitalized [Member]      
Pre-tax effect of derivatives designated as cash flow hedging instruments      
Gain (Loss) Reclassified from Accumulated OCI into Income (Effective Portion) (606)us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ us-gaap_IncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
/ dei_LegalEntityAxis
= so_GulfPowerMember
(769)us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ us-gaap_IncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
/ dei_LegalEntityAxis
= so_GulfPowerMember
(933)us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ us-gaap_IncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
/ dei_LegalEntityAxis
= so_GulfPowerMember
Gulf Power [Member] | Hedging Instruments for Regulatory Purposes [Member] | Energy Related Derivative [Member]      
Derivative Instruments, Gain (Loss) [Line Items]      
Regulatory Hedge Unrealized Loss (72,424)so_RegulatoryHedgeUnrealizedLoss
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= so_HedgingInstrumentsForRegulatoryPurposesMember
/ dei_LegalEntityAxis
= so_GulfPowerMember
(17,043)so_RegulatoryHedgeUnrealizedLoss
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= so_HedgingInstrumentsForRegulatoryPurposesMember
/ dei_LegalEntityAxis
= so_GulfPowerMember
 
Regulatory Hedge Unrealized Gain 112so_RegulatoryHedgeUnrealizedGain
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= so_HedgingInstrumentsForRegulatoryPurposesMember
/ dei_LegalEntityAxis
= so_GulfPowerMember
6,962so_RegulatoryHedgeUnrealizedGain
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= so_HedgingInstrumentsForRegulatoryPurposesMember
/ dei_LegalEntityAxis
= so_GulfPowerMember
 
Gulf Power [Member] | Other regulatory assets current [Member] | Hedging Instruments for Regulatory Purposes [Member] | Energy Related Derivative [Member]      
Derivative Instruments, Gain (Loss) [Line Items]      
Regulatory Hedge Unrealized Loss (36,922)so_RegulatoryHedgeUnrealizedLoss
/ us-gaap_BalanceSheetLocationAxis
= so_OtherRegulatoryAssetsCurrentMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= so_HedgingInstrumentsForRegulatoryPurposesMember
/ dei_LegalEntityAxis
= so_GulfPowerMember
(6,470)so_RegulatoryHedgeUnrealizedLoss
/ us-gaap_BalanceSheetLocationAxis
= so_OtherRegulatoryAssetsCurrentMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= so_HedgingInstrumentsForRegulatoryPurposesMember
/ dei_LegalEntityAxis
= so_GulfPowerMember
 
Gulf Power [Member] | Other regulatory assets deferred [Member] | Hedging Instruments for Regulatory Purposes [Member] | Energy Related Derivative [Member]      
Derivative Instruments, Gain (Loss) [Line Items]      
Regulatory Hedge Unrealized Loss (35,502)so_RegulatoryHedgeUnrealizedLoss
/ us-gaap_BalanceSheetLocationAxis
= so_OtherRegulatoryAssetsDeferredMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= so_HedgingInstrumentsForRegulatoryPurposesMember
/ dei_LegalEntityAxis
= so_GulfPowerMember
(10,573)so_RegulatoryHedgeUnrealizedLoss
/ us-gaap_BalanceSheetLocationAxis
= so_OtherRegulatoryAssetsDeferredMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= so_HedgingInstrumentsForRegulatoryPurposesMember
/ dei_LegalEntityAxis
= so_GulfPowerMember
 
Gulf Power [Member] | Other regulatory liabilities current [Member] | Hedging Instruments for Regulatory Purposes [Member] | Energy Related Derivative [Member]      
Derivative Instruments, Gain (Loss) [Line Items]      
Regulatory Hedge Unrealized Gain 34so_RegulatoryHedgeUnrealizedGain
/ us-gaap_BalanceSheetLocationAxis
= so_OtherRegulatoryLiabilitiesCurrentMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= so_HedgingInstrumentsForRegulatoryPurposesMember
/ dei_LegalEntityAxis
= so_GulfPowerMember
4,893so_RegulatoryHedgeUnrealizedGain
/ us-gaap_BalanceSheetLocationAxis
= so_OtherRegulatoryLiabilitiesCurrentMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= so_HedgingInstrumentsForRegulatoryPurposesMember
/ dei_LegalEntityAxis
= so_GulfPowerMember
 
Gulf Power [Member] | Other regulatory liabilities deferred [Member] | Hedging Instruments for Regulatory Purposes [Member] | Energy Related Derivative [Member]      
Derivative Instruments, Gain (Loss) [Line Items]      
Regulatory Hedge Unrealized Gain 78so_RegulatoryHedgeUnrealizedGain
/ us-gaap_BalanceSheetLocationAxis
= so_OtherRegulatoryLiabilitiesDeferredMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= so_HedgingInstrumentsForRegulatoryPurposesMember
/ dei_LegalEntityAxis
= so_GulfPowerMember
2,069so_RegulatoryHedgeUnrealizedGain
/ us-gaap_BalanceSheetLocationAxis
= so_OtherRegulatoryLiabilitiesDeferredMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= so_HedgingInstrumentsForRegulatoryPurposesMember
/ dei_LegalEntityAxis
= so_GulfPowerMember
 
Mississippi Power [Member] | Hedging Instruments for Regulatory Purposes [Member]      
Derivative Instruments, Gain (Loss) [Line Items]      
Regulatory Hedge Unrealized Loss (45,418)so_RegulatoryHedgeUnrealizedLoss
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= so_HedgingInstrumentsForRegulatoryPurposesMember
/ dei_LegalEntityAxis
= so_MississippiPowerMember
(10,281)so_RegulatoryHedgeUnrealizedLoss
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= so_HedgingInstrumentsForRegulatoryPurposesMember
/ dei_LegalEntityAxis
= so_MississippiPowerMember
 
Regulatory Hedge Unrealized Gain 52so_RegulatoryHedgeUnrealizedGain
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= so_HedgingInstrumentsForRegulatoryPurposesMember
/ dei_LegalEntityAxis
= so_MississippiPowerMember
4,803so_RegulatoryHedgeUnrealizedGain
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= so_HedgingInstrumentsForRegulatoryPurposesMember
/ dei_LegalEntityAxis
= so_MississippiPowerMember
 
Mississippi Power [Member] | Cash Flow Hedging [Member]      
Pre-tax effect of derivatives designated as cash flow hedging instruments      
Gain (Loss) Recognized in OCI on Derivative (Effective Portion) 0us-gaap_DerivativeInstrumentsGainLossRecognizedInOtherComprehensiveIncomeEffectivePortionNet
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CashFlowHedgingMember
/ dei_LegalEntityAxis
= so_MississippiPowerMember
0us-gaap_DerivativeInstrumentsGainLossRecognizedInOtherComprehensiveIncomeEffectivePortionNet
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CashFlowHedgingMember
/ dei_LegalEntityAxis
= so_MississippiPowerMember
(774)us-gaap_DerivativeInstrumentsGainLossRecognizedInOtherComprehensiveIncomeEffectivePortionNet
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CashFlowHedgingMember
/ dei_LegalEntityAxis
= so_MississippiPowerMember
Gain (Loss) Reclassified from Accumulated OCI into Income (Effective Portion) (1,375)us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CashFlowHedgingMember
/ dei_LegalEntityAxis
= so_MississippiPowerMember
(1,375)us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CashFlowHedgingMember
/ dei_LegalEntityAxis
= so_MississippiPowerMember
(1,073)us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CashFlowHedgingMember
/ dei_LegalEntityAxis
= so_MississippiPowerMember
Mississippi Power [Member] | Cash Flow Hedging [Member] | Energy Related Derivative [Member]      
Pre-tax effect of derivatives designated as cash flow hedging instruments      
Gain (Loss) Recognized in OCI on Derivative (Effective Portion) 0us-gaap_DerivativeInstrumentsGainLossRecognizedInOtherComprehensiveIncomeEffectivePortionNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CashFlowHedgingMember
/ dei_LegalEntityAxis
= so_MississippiPowerMember
0us-gaap_DerivativeInstrumentsGainLossRecognizedInOtherComprehensiveIncomeEffectivePortionNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CashFlowHedgingMember
/ dei_LegalEntityAxis
= so_MississippiPowerMember
0us-gaap_DerivativeInstrumentsGainLossRecognizedInOtherComprehensiveIncomeEffectivePortionNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CashFlowHedgingMember
/ dei_LegalEntityAxis
= so_MississippiPowerMember
Mississippi Power [Member] | Cash Flow Hedging [Member] | Energy Related Derivative [Member] | Fuel [Member]      
Pre-tax effect of derivatives designated as cash flow hedging instruments      
Gain (Loss) Reclassified from Accumulated OCI into Income (Effective Portion) 0us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CashFlowHedgingMember
/ us-gaap_IncomeStatementLocationAxis
= so_FuelExpenseMember
/ dei_LegalEntityAxis
= so_MississippiPowerMember
0us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CashFlowHedgingMember
/ us-gaap_IncomeStatementLocationAxis
= so_FuelExpenseMember
/ dei_LegalEntityAxis
= so_MississippiPowerMember
0us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CashFlowHedgingMember
/ us-gaap_IncomeStatementLocationAxis
= so_FuelExpenseMember
/ dei_LegalEntityAxis
= so_MississippiPowerMember
Mississippi Power [Member] | Cash Flow Hedging [Member] | Interest rate derivatives [Member]      
Pre-tax effect of derivatives designated as cash flow hedging instruments      
Gain (Loss) Recognized in OCI on Derivative (Effective Portion) 0us-gaap_DerivativeInstrumentsGainLossRecognizedInOtherComprehensiveIncomeEffectivePortionNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CashFlowHedgingMember
/ dei_LegalEntityAxis
= so_MississippiPowerMember
0us-gaap_DerivativeInstrumentsGainLossRecognizedInOtherComprehensiveIncomeEffectivePortionNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CashFlowHedgingMember
/ dei_LegalEntityAxis
= so_MississippiPowerMember
(774)us-gaap_DerivativeInstrumentsGainLossRecognizedInOtherComprehensiveIncomeEffectivePortionNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CashFlowHedgingMember
/ dei_LegalEntityAxis
= so_MississippiPowerMember
Mississippi Power [Member] | Cash Flow Hedging [Member] | Interest rate derivatives [Member] | Interest expense, net of amounts capitalized [Member]      
Pre-tax effect of derivatives designated as cash flow hedging instruments      
Gain (Loss) Reclassified from Accumulated OCI into Income (Effective Portion) (1,375)us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CashFlowHedgingMember
/ us-gaap_IncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
/ dei_LegalEntityAxis
= so_MississippiPowerMember
(1,375)us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CashFlowHedgingMember
/ us-gaap_IncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
/ dei_LegalEntityAxis
= so_MississippiPowerMember
(1,073)us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CashFlowHedgingMember
/ us-gaap_IncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
/ dei_LegalEntityAxis
= so_MississippiPowerMember
Mississippi Power [Member] | Other regulatory assets current [Member] | Hedging Instruments for Regulatory Purposes [Member] | Energy Related Derivative [Member]      
Derivative Instruments, Gain (Loss) [Line Items]      
Regulatory Hedge Unrealized Loss (26,259)so_RegulatoryHedgeUnrealizedLoss
/ us-gaap_BalanceSheetLocationAxis
= so_OtherRegulatoryAssetsCurrentMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= so_HedgingInstrumentsForRegulatoryPurposesMember
/ dei_LegalEntityAxis
= so_MississippiPowerMember
(3,652)so_RegulatoryHedgeUnrealizedLoss
/ us-gaap_BalanceSheetLocationAxis
= so_OtherRegulatoryAssetsCurrentMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= so_HedgingInstrumentsForRegulatoryPurposesMember
/ dei_LegalEntityAxis
= so_MississippiPowerMember
 
Mississippi Power [Member] | Other regulatory assets deferred [Member] | Hedging Instruments for Regulatory Purposes [Member] | Energy Related Derivative [Member]      
Derivative Instruments, Gain (Loss) [Line Items]      
Regulatory Hedge Unrealized Loss (19,159)so_RegulatoryHedgeUnrealizedLoss
/ us-gaap_BalanceSheetLocationAxis
= so_OtherRegulatoryAssetsDeferredMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= so_HedgingInstrumentsForRegulatoryPurposesMember
/ dei_LegalEntityAxis
= so_MississippiPowerMember
(6,629)so_RegulatoryHedgeUnrealizedLoss
/ us-gaap_BalanceSheetLocationAxis
= so_OtherRegulatoryAssetsDeferredMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= so_HedgingInstrumentsForRegulatoryPurposesMember
/ dei_LegalEntityAxis
= so_MississippiPowerMember
 
Mississippi Power [Member] | Other regulatory liabilities current [Member] | Hedging Instruments for Regulatory Purposes [Member] | Energy Related Derivative [Member]      
Derivative Instruments, Gain (Loss) [Line Items]      
Regulatory Hedge Unrealized Gain 30so_RegulatoryHedgeUnrealizedGain
/ us-gaap_BalanceSheetLocationAxis
= so_OtherRegulatoryLiabilitiesCurrentMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= so_HedgingInstrumentsForRegulatoryPurposesMember
/ dei_LegalEntityAxis
= so_MississippiPowerMember
3,352so_RegulatoryHedgeUnrealizedGain
/ us-gaap_BalanceSheetLocationAxis
= so_OtherRegulatoryLiabilitiesCurrentMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= so_HedgingInstrumentsForRegulatoryPurposesMember
/ dei_LegalEntityAxis
= so_MississippiPowerMember
 
Mississippi Power [Member] | Other regulatory liabilities deferred [Member] | Hedging Instruments for Regulatory Purposes [Member] | Energy Related Derivative [Member]      
Derivative Instruments, Gain (Loss) [Line Items]      
Regulatory Hedge Unrealized Gain 22so_RegulatoryHedgeUnrealizedGain
/ us-gaap_BalanceSheetLocationAxis
= so_OtherRegulatoryLiabilitiesDeferredMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= so_HedgingInstrumentsForRegulatoryPurposesMember
/ dei_LegalEntityAxis
= so_MississippiPowerMember
1,451so_RegulatoryHedgeUnrealizedGain
/ us-gaap_BalanceSheetLocationAxis
= so_OtherRegulatoryLiabilitiesDeferredMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= so_HedgingInstrumentsForRegulatoryPurposesMember
/ dei_LegalEntityAxis
= so_MississippiPowerMember
 
Southern Power [Member]      
Pre-tax effect of derivatives designated as cash flow hedging instruments      
Gain (Loss) Reclassified from Accumulated OCI into Income (Effective Portion) (500)us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet
/ dei_LegalEntityAxis
= so_SouthernPowerMember
(6,100)us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet
/ dei_LegalEntityAxis
= so_SouthernPowerMember
(10,100)us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet
/ dei_LegalEntityAxis
= so_SouthernPowerMember
Southern Power [Member] | Energy Related Derivative [Member] | Depreciation and amortization [Member]      
Pre-tax effect of derivatives designated as cash flow hedging instruments      
Gain (Loss) Reclassified from Accumulated OCI into Income (Effective Portion) 400us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
/ us-gaap_IncomeStatementLocationAxis
= so_DepreciationAndAmortizationMember
/ dei_LegalEntityAxis
= so_SouthernPowerMember
400us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
/ us-gaap_IncomeStatementLocationAxis
= so_DepreciationAndAmortizationMember
/ dei_LegalEntityAxis
= so_SouthernPowerMember
400us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_EnergyRelatedDerivativeMember
/ us-gaap_IncomeStatementLocationAxis
= so_DepreciationAndAmortizationMember
/ dei_LegalEntityAxis
= so_SouthernPowerMember
Southern Power [Member] | Interest rate derivatives [Member] | Interest expense, net of amounts capitalized [Member]      
Pre-tax effect of derivatives designated as cash flow hedging instruments      
Gain (Loss) Reclassified from Accumulated OCI into Income (Effective Portion) $ (900)us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ us-gaap_IncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
/ dei_LegalEntityAxis
= so_SouthernPowerMember
$ (6,500)us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ us-gaap_IncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
/ dei_LegalEntityAxis
= so_SouthernPowerMember
$ (10,500)us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ us-gaap_IncomeStatementLocationAxis
= us-gaap_InterestExpenseMember
/ dei_LegalEntityAxis
= so_SouthernPowerMember