XML 81 R34.htm IDEA: XBRL DOCUMENT v2.4.1.9
Fair Value Measurements - Assets and Liabilities Measured at Fair Value on a Recurring Basis (Details) (USD $)
In Millions, unless otherwise specified
Mar. 31, 2015
Dec. 31, 2014
Fair Value, Measurements, Recurring [Member]    
Assets:    
Derivative Asset, Fair Value, Gross Asset $ 7us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
 
Interest Rate Derivative Assets, at Fair Value 8us-gaap_InterestRateDerivativeAssetsAtFairValue
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
 
Nuclear decommissioning trusts 1,573us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
[1]  
Cash equivalents 863us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
 
Other investments 10us-gaap_OtherAssetsFairValueDisclosure
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
 
Total 2,461us-gaap_AssetsFairValueDisclosure
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
 
Liabilities:    
Derivative Liability, Fair Value, Gross Liability 225us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
 
Interest rate derivatives 46us-gaap_InterestRateDerivativeLiabilitiesAtFairValue
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
 
Total 271us-gaap_LiabilitiesFairValueDisclosure
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
 
Fair Value, Measurements, Recurring [Member] | Quoted Prices in Active Markets for Identical Assets (Level 1) [Member]    
Assets:    
Derivative Asset, Fair Value, Gross Asset 0us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
 
Interest Rate Derivative Assets, at Fair Value 0us-gaap_InterestRateDerivativeAssetsAtFairValue
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
 
Nuclear decommissioning trusts 632us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
[1]  
Cash equivalents 863us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
 
Other investments 9us-gaap_OtherAssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
 
Total 1,504us-gaap_AssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
 
Liabilities:    
Derivative Liability, Fair Value, Gross Liability 0us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
 
Interest rate derivatives 0us-gaap_InterestRateDerivativeLiabilitiesAtFairValue
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
 
Total 0us-gaap_LiabilitiesFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
 
Fair Value, Measurements, Recurring [Member] | Significant Other Observable Inputs (Level 2) [Member]    
Assets:    
Derivative Asset, Fair Value, Gross Asset 7us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
 
Interest Rate Derivative Assets, at Fair Value 8us-gaap_InterestRateDerivativeAssetsAtFairValue
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
 
Nuclear decommissioning trusts 937us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
[1]  
Cash equivalents 0us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
 
Other investments 0us-gaap_OtherAssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
 
Total 952us-gaap_AssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
 
Liabilities:    
Derivative Liability, Fair Value, Gross Liability 225us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
 
Interest rate derivatives 46us-gaap_InterestRateDerivativeLiabilitiesAtFairValue
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
 
Total 271us-gaap_LiabilitiesFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
 
Fair Value, Measurements, Recurring [Member] | Significant Unobservable Inputs (Level 3) [Member]    
Assets:    
Derivative Asset, Fair Value, Gross Asset 0us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
 
Interest Rate Derivative Assets, at Fair Value 0us-gaap_InterestRateDerivativeAssetsAtFairValue
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
 
Nuclear decommissioning trusts 4us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
[1]  
Cash equivalents 0us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
 
Other investments 1us-gaap_OtherAssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
 
Total 5us-gaap_AssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
 
Liabilities:    
Derivative Liability, Fair Value, Gross Liability 0us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
 
Interest rate derivatives 0us-gaap_InterestRateDerivativeLiabilitiesAtFairValue
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
 
Total 0us-gaap_LiabilitiesFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
 
Alabama Power [Member]    
Assets:    
Derivative Asset, Fair Value, Gross Asset 1us-gaap_DerivativeFairValueOfDerivativeAsset
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
1us-gaap_DerivativeFairValueOfDerivativeAsset
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
Liabilities:    
Derivative Liability, Fair Value, Gross Liability 73us-gaap_DerivativeFairValueOfDerivativeLiability
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
61us-gaap_DerivativeFairValueOfDerivativeLiability
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
Alabama Power [Member] | Fair Value, Measurements, Recurring [Member]    
Assets:    
Derivative Asset, Fair Value, Gross Asset 1us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
 
Cash equivalents 287us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
 
Total 1,057us-gaap_AssetsFairValueDisclosure
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
 
Liabilities:    
Derivative Liability, Fair Value, Gross Liability 59us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
 
Interest rate derivatives 14us-gaap_InterestRateDerivativeLiabilitiesAtFairValue
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
 
Total 73us-gaap_LiabilitiesFairValueDisclosure
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
 
Alabama Power [Member] | Fair Value, Measurements, Recurring [Member] | Domestic Equity [Member]    
Assets:    
Nuclear decommissioning trusts 483us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= so_DomesticEquityMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
[2]  
Alabama Power [Member] | Fair Value, Measurements, Recurring [Member] | Foreign equity [Member]    
Assets:    
Nuclear decommissioning trusts 101us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= so_ForeignEquityMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
[2]  
Alabama Power [Member] | Fair Value, Measurements, Recurring [Member] | U.S. Treasury and government agency securities [Member]    
Assets:    
Nuclear decommissioning trusts 34us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_USTreasuryAndGovernmentMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
[2]  
Alabama Power [Member] | Fair Value, Measurements, Recurring [Member] | Corporate bonds [Member]    
Assets:    
Nuclear decommissioning trusts 123us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_CorporateDebtSecuritiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
[2]  
Alabama Power [Member] | Fair Value, Measurements, Recurring [Member] | Mortgage and asset backed securities [Member]    
Assets:    
Nuclear decommissioning trusts 18us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AssetBackedSecuritiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
[2]  
Alabama Power [Member] | Fair Value, Measurements, Recurring [Member] | Other investments [Member]    
Assets:    
Nuclear decommissioning trusts 10us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_OtherThanSecuritiesInvestmentMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
[2]  
Alabama Power [Member] | Fair Value, Measurements, Recurring [Member] | Quoted Prices in Active Markets for Identical Assets (Level 1) [Member]    
Assets:    
Derivative Asset, Fair Value, Gross Asset 0us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
 
Cash equivalents 287us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
 
Total 726us-gaap_AssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
 
Liabilities:    
Derivative Liability, Fair Value, Gross Liability 0us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
 
Interest rate derivatives 0us-gaap_InterestRateDerivativeLiabilitiesAtFairValue
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
 
Total 0us-gaap_LiabilitiesFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
 
Alabama Power [Member] | Fair Value, Measurements, Recurring [Member] | Quoted Prices in Active Markets for Identical Assets (Level 1) [Member] | Domestic Equity [Member]    
Assets:    
Nuclear decommissioning trusts 393us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= so_DomesticEquityMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
[2]  
Alabama Power [Member] | Fair Value, Measurements, Recurring [Member] | Quoted Prices in Active Markets for Identical Assets (Level 1) [Member] | Foreign equity [Member]    
Assets:    
Nuclear decommissioning trusts 36us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= so_ForeignEquityMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
[2]  
Alabama Power [Member] | Fair Value, Measurements, Recurring [Member] | Quoted Prices in Active Markets for Identical Assets (Level 1) [Member] | U.S. Treasury and government agency securities [Member]    
Assets:    
Nuclear decommissioning trusts 0us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_USTreasuryAndGovernmentMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
[2]  
Alabama Power [Member] | Fair Value, Measurements, Recurring [Member] | Quoted Prices in Active Markets for Identical Assets (Level 1) [Member] | Corporate bonds [Member]    
Assets:    
Nuclear decommissioning trusts 10us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_CorporateDebtSecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
[2]  
Alabama Power [Member] | Fair Value, Measurements, Recurring [Member] | Quoted Prices in Active Markets for Identical Assets (Level 1) [Member] | Mortgage and asset backed securities [Member]    
Assets:    
Nuclear decommissioning trusts 0us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AssetBackedSecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
[2]  
Alabama Power [Member] | Fair Value, Measurements, Recurring [Member] | Quoted Prices in Active Markets for Identical Assets (Level 1) [Member] | Other investments [Member]    
Assets:    
Nuclear decommissioning trusts 0us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_OtherThanSecuritiesInvestmentMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
[2]  
Alabama Power [Member] | Fair Value, Measurements, Recurring [Member] | Significant Other Observable Inputs (Level 2) [Member]    
Assets:    
Derivative Asset, Fair Value, Gross Asset 1us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
 
Cash equivalents 0us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
 
Total 327us-gaap_AssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
 
Liabilities:    
Derivative Liability, Fair Value, Gross Liability 59us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
 
Interest rate derivatives 14us-gaap_InterestRateDerivativeLiabilitiesAtFairValue
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
 
Total 73us-gaap_LiabilitiesFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
 
Alabama Power [Member] | Fair Value, Measurements, Recurring [Member] | Significant Other Observable Inputs (Level 2) [Member] | Domestic Equity [Member]    
Assets:    
Nuclear decommissioning trusts 90us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= so_DomesticEquityMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
[2]  
Alabama Power [Member] | Fair Value, Measurements, Recurring [Member] | Significant Other Observable Inputs (Level 2) [Member] | Foreign equity [Member]    
Assets:    
Nuclear decommissioning trusts 65us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= so_ForeignEquityMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
[2]  
Alabama Power [Member] | Fair Value, Measurements, Recurring [Member] | Significant Other Observable Inputs (Level 2) [Member] | U.S. Treasury and government agency securities [Member]    
Assets:    
Nuclear decommissioning trusts 34us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_USTreasuryAndGovernmentMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
[2]  
Alabama Power [Member] | Fair Value, Measurements, Recurring [Member] | Significant Other Observable Inputs (Level 2) [Member] | Corporate bonds [Member]    
Assets:    
Nuclear decommissioning trusts 113us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_CorporateDebtSecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
[2]  
Alabama Power [Member] | Fair Value, Measurements, Recurring [Member] | Significant Other Observable Inputs (Level 2) [Member] | Mortgage and asset backed securities [Member]    
Assets:    
Nuclear decommissioning trusts 18us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AssetBackedSecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
[2]  
Alabama Power [Member] | Fair Value, Measurements, Recurring [Member] | Significant Other Observable Inputs (Level 2) [Member] | Other investments [Member]    
Assets:    
Nuclear decommissioning trusts 6us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_OtherThanSecuritiesInvestmentMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
[2]  
Alabama Power [Member] | Fair Value, Measurements, Recurring [Member] | Significant Unobservable Inputs (Level 3) [Member]    
Assets:    
Derivative Asset, Fair Value, Gross Asset 0us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
 
Cash equivalents 0us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
 
Total 4us-gaap_AssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
 
Liabilities:    
Derivative Liability, Fair Value, Gross Liability 0us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
 
Interest rate derivatives 0us-gaap_InterestRateDerivativeLiabilitiesAtFairValue
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
 
Total 0us-gaap_LiabilitiesFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
 
Alabama Power [Member] | Fair Value, Measurements, Recurring [Member] | Significant Unobservable Inputs (Level 3) [Member] | Domestic Equity [Member]    
Assets:    
Nuclear decommissioning trusts 0us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= so_DomesticEquityMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
[2]  
Alabama Power [Member] | Fair Value, Measurements, Recurring [Member] | Significant Unobservable Inputs (Level 3) [Member] | Foreign equity [Member]    
Assets:    
Nuclear decommissioning trusts 0us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= so_ForeignEquityMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
[2]  
Alabama Power [Member] | Fair Value, Measurements, Recurring [Member] | Significant Unobservable Inputs (Level 3) [Member] | U.S. Treasury and government agency securities [Member]    
Assets:    
Nuclear decommissioning trusts 0us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_USTreasuryAndGovernmentMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
[2]  
Alabama Power [Member] | Fair Value, Measurements, Recurring [Member] | Significant Unobservable Inputs (Level 3) [Member] | Corporate bonds [Member]    
Assets:    
Nuclear decommissioning trusts 0us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_CorporateDebtSecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
[2]  
Alabama Power [Member] | Fair Value, Measurements, Recurring [Member] | Significant Unobservable Inputs (Level 3) [Member] | Mortgage and asset backed securities [Member]    
Assets:    
Nuclear decommissioning trusts 0us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AssetBackedSecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
[2]  
Alabama Power [Member] | Fair Value, Measurements, Recurring [Member] | Significant Unobservable Inputs (Level 3) [Member] | Other investments [Member]    
Assets:    
Nuclear decommissioning trusts 4us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_OtherThanSecuritiesInvestmentMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_AlabamaPowerMember
[2]  
Georgia Power [Member]    
Assets:    
Derivative Asset, Fair Value, Gross Asset 12us-gaap_DerivativeFairValueOfDerivativeAsset
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
13us-gaap_DerivativeFairValueOfDerivativeAsset
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
Nuclear decommissioning trusts 50us-gaap_DecommissioningTrustAssetsAmount
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
 
Liabilities:    
Derivative Liability, Fair Value, Gross Liability 55us-gaap_DerivativeFairValueOfDerivativeLiability
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
41us-gaap_DerivativeFairValueOfDerivativeLiability
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
Georgia Power [Member] | Fair Value, Measurements, Recurring [Member]    
Assets:    
Derivative Asset, Fair Value, Gross Asset 6us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
 
Interest Rate Derivative Assets, at Fair Value 6us-gaap_InterestRateDerivativeAssetsAtFairValue
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
 
Cash equivalents 406us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
 
Total 1,222us-gaap_AssetsFairValueDisclosure
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
 
Liabilities:    
Derivative Liability, Fair Value, Gross Liability 24us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
 
Interest rate derivatives 31us-gaap_InterestRateDerivativeLiabilitiesAtFairValue
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
 
Total 55us-gaap_LiabilitiesFairValueDisclosure
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
 
Georgia Power [Member] | Fair Value, Measurements, Recurring [Member] | Domestic Equity [Member]    
Assets:    
Nuclear decommissioning trusts 184us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= so_DomesticEquityMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
[2],[3]  
Georgia Power [Member] | Fair Value, Measurements, Recurring [Member] | Foreign equity [Member]    
Assets:    
Nuclear decommissioning trusts 126us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= so_ForeignEquityMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
[2],[3]  
Georgia Power [Member] | Fair Value, Measurements, Recurring [Member] | U.S. Treasury and government agency securities [Member]    
Assets:    
Nuclear decommissioning trusts 86us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_USTreasuryAndGovernmentMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
[2],[3]  
Georgia Power [Member] | Fair Value, Measurements, Recurring [Member] | Municipal bonds [Member]    
Assets:    
Nuclear decommissioning trusts 92us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_MunicipalBondsMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
[2],[3]  
Georgia Power [Member] | Fair Value, Measurements, Recurring [Member] | Corporate bonds [Member]    
Assets:    
Nuclear decommissioning trusts 192us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_CorporateDebtSecuritiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
[2],[3]  
Georgia Power [Member] | Fair Value, Measurements, Recurring [Member] | Mortgage and asset backed securities [Member]    
Assets:    
Nuclear decommissioning trusts 107us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AssetBackedSecuritiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
[2],[3]  
Georgia Power [Member] | Fair Value, Measurements, Recurring [Member] | Other investments [Member]    
Assets:    
Nuclear decommissioning trusts 17us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_OtherThanSecuritiesInvestmentMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
[2],[3]  
Georgia Power [Member] | Fair Value, Measurements, Recurring [Member] | Quoted Prices in Active Markets for Identical Assets (Level 1) [Member]    
Assets:    
Derivative Asset, Fair Value, Gross Asset 0us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
 
Interest Rate Derivative Assets, at Fair Value 0us-gaap_InterestRateDerivativeAssetsAtFairValue
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
 
Cash equivalents 406us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
 
Total 599us-gaap_AssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
 
Liabilities:    
Derivative Liability, Fair Value, Gross Liability 0us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
 
Interest rate derivatives 0us-gaap_InterestRateDerivativeLiabilitiesAtFairValue
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
 
Total 0us-gaap_LiabilitiesFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
 
Georgia Power [Member] | Fair Value, Measurements, Recurring [Member] | Quoted Prices in Active Markets for Identical Assets (Level 1) [Member] | Domestic Equity [Member]    
Assets:    
Nuclear decommissioning trusts 182us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= so_DomesticEquityMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
[2],[3]  
Georgia Power [Member] | Fair Value, Measurements, Recurring [Member] | Quoted Prices in Active Markets for Identical Assets (Level 1) [Member] | Foreign equity [Member]    
Assets:    
Nuclear decommissioning trusts 0us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= so_ForeignEquityMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
[2],[3]  
Georgia Power [Member] | Fair Value, Measurements, Recurring [Member] | Quoted Prices in Active Markets for Identical Assets (Level 1) [Member] | U.S. Treasury and government agency securities [Member]    
Assets:    
Nuclear decommissioning trusts 0us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_USTreasuryAndGovernmentMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
[2],[3]  
Georgia Power [Member] | Fair Value, Measurements, Recurring [Member] | Quoted Prices in Active Markets for Identical Assets (Level 1) [Member] | Municipal bonds [Member]    
Assets:    
Nuclear decommissioning trusts 0us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_MunicipalBondsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
[2],[3]  
Georgia Power [Member] | Fair Value, Measurements, Recurring [Member] | Quoted Prices in Active Markets for Identical Assets (Level 1) [Member] | Corporate bonds [Member]    
Assets:    
Nuclear decommissioning trusts 0us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_CorporateDebtSecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
[2],[3]  
Georgia Power [Member] | Fair Value, Measurements, Recurring [Member] | Quoted Prices in Active Markets for Identical Assets (Level 1) [Member] | Mortgage and asset backed securities [Member]    
Assets:    
Nuclear decommissioning trusts 0us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AssetBackedSecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
[2],[3]  
Georgia Power [Member] | Fair Value, Measurements, Recurring [Member] | Quoted Prices in Active Markets for Identical Assets (Level 1) [Member] | Other investments [Member]    
Assets:    
Nuclear decommissioning trusts 11us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_OtherThanSecuritiesInvestmentMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
[2],[3]  
Georgia Power [Member] | Fair Value, Measurements, Recurring [Member] | Significant Other Observable Inputs (Level 2) [Member]    
Assets:    
Derivative Asset, Fair Value, Gross Asset 6us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
 
Interest Rate Derivative Assets, at Fair Value 6us-gaap_InterestRateDerivativeAssetsAtFairValue
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
 
Cash equivalents 0us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
 
Total 623us-gaap_AssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
 
Liabilities:    
Derivative Liability, Fair Value, Gross Liability 24us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
 
Interest rate derivatives 31us-gaap_InterestRateDerivativeLiabilitiesAtFairValue
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
 
Total 55us-gaap_LiabilitiesFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
 
Georgia Power [Member] | Fair Value, Measurements, Recurring [Member] | Significant Other Observable Inputs (Level 2) [Member] | Domestic Equity [Member]    
Assets:    
Nuclear decommissioning trusts 2us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= so_DomesticEquityMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
[2],[3]  
Georgia Power [Member] | Fair Value, Measurements, Recurring [Member] | Significant Other Observable Inputs (Level 2) [Member] | Foreign equity [Member]    
Assets:    
Nuclear decommissioning trusts 126us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= so_ForeignEquityMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
[2],[3]  
Georgia Power [Member] | Fair Value, Measurements, Recurring [Member] | Significant Other Observable Inputs (Level 2) [Member] | U.S. Treasury and government agency securities [Member]    
Assets:    
Nuclear decommissioning trusts 86us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_USTreasuryAndGovernmentMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
[2],[3]  
Georgia Power [Member] | Fair Value, Measurements, Recurring [Member] | Significant Other Observable Inputs (Level 2) [Member] | Municipal bonds [Member]    
Assets:    
Nuclear decommissioning trusts 92us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_MunicipalBondsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
[2],[3]  
Georgia Power [Member] | Fair Value, Measurements, Recurring [Member] | Significant Other Observable Inputs (Level 2) [Member] | Corporate bonds [Member]    
Assets:    
Nuclear decommissioning trusts 192us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_CorporateDebtSecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
[2],[3]  
Georgia Power [Member] | Fair Value, Measurements, Recurring [Member] | Significant Other Observable Inputs (Level 2) [Member] | Mortgage and asset backed securities [Member]    
Assets:    
Nuclear decommissioning trusts 107us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AssetBackedSecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
[2],[3]  
Georgia Power [Member] | Fair Value, Measurements, Recurring [Member] | Significant Other Observable Inputs (Level 2) [Member] | Other investments [Member]    
Assets:    
Nuclear decommissioning trusts 6us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_OtherThanSecuritiesInvestmentMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
[2],[3]  
Georgia Power [Member] | Fair Value, Measurements, Recurring [Member] | Significant Unobservable Inputs (Level 3) [Member]    
Assets:    
Derivative Asset, Fair Value, Gross Asset 0us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
 
Interest Rate Derivative Assets, at Fair Value 0us-gaap_InterestRateDerivativeAssetsAtFairValue
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
 
Cash equivalents 0us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
 
Total 0us-gaap_AssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
 
Liabilities:    
Derivative Liability, Fair Value, Gross Liability 0us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
 
Interest rate derivatives 0us-gaap_InterestRateDerivativeLiabilitiesAtFairValue
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
 
Total 0us-gaap_LiabilitiesFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
 
Georgia Power [Member] | Fair Value, Measurements, Recurring [Member] | Significant Unobservable Inputs (Level 3) [Member] | Domestic Equity [Member]    
Assets:    
Nuclear decommissioning trusts 0us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= so_DomesticEquityMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
[2],[3]  
Georgia Power [Member] | Fair Value, Measurements, Recurring [Member] | Significant Unobservable Inputs (Level 3) [Member] | Foreign equity [Member]    
Assets:    
Nuclear decommissioning trusts 0us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= so_ForeignEquityMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
[2],[3]  
Georgia Power [Member] | Fair Value, Measurements, Recurring [Member] | Significant Unobservable Inputs (Level 3) [Member] | U.S. Treasury and government agency securities [Member]    
Assets:    
Nuclear decommissioning trusts 0us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_USTreasuryAndGovernmentMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
[2],[3]  
Georgia Power [Member] | Fair Value, Measurements, Recurring [Member] | Significant Unobservable Inputs (Level 3) [Member] | Municipal bonds [Member]    
Assets:    
Nuclear decommissioning trusts 0us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_MunicipalBondsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
[2],[3]  
Georgia Power [Member] | Fair Value, Measurements, Recurring [Member] | Significant Unobservable Inputs (Level 3) [Member] | Corporate bonds [Member]    
Assets:    
Nuclear decommissioning trusts 0us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_CorporateDebtSecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
[2],[3]  
Georgia Power [Member] | Fair Value, Measurements, Recurring [Member] | Significant Unobservable Inputs (Level 3) [Member] | Mortgage and asset backed securities [Member]    
Assets:    
Nuclear decommissioning trusts 0us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_AssetBackedSecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
[2],[3]  
Georgia Power [Member] | Fair Value, Measurements, Recurring [Member] | Significant Unobservable Inputs (Level 3) [Member] | Other investments [Member]    
Assets:    
Nuclear decommissioning trusts 0us-gaap_DecommissioningTrustAssetsAmount
/ us-gaap_FairValueByAssetClassAxis
= us-gaap_OtherThanSecuritiesInvestmentMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GeorgiaPowerMember
[2],[3]  
Gulf Power [Member]    
Assets:    
Derivative Asset, Fair Value, Gross Asset 0us-gaap_DerivativeFairValueOfDerivativeAsset
/ dei_LegalEntityAxis
= so_GulfPowerMember
0us-gaap_DerivativeFairValueOfDerivativeAsset
/ dei_LegalEntityAxis
= so_GulfPowerMember
Liabilities:    
Derivative Liability, Fair Value, Gross Liability 90us-gaap_DerivativeFairValueOfDerivativeLiability
/ dei_LegalEntityAxis
= so_GulfPowerMember
72us-gaap_DerivativeFairValueOfDerivativeLiability
/ dei_LegalEntityAxis
= so_GulfPowerMember
Gulf Power [Member] | Fair Value, Measurements, Recurring [Member]    
Assets:    
Cash equivalents 18us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GulfPowerMember
 
Liabilities:    
Derivative Liability, Fair Value, Gross Liability 90us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GulfPowerMember
 
Gulf Power [Member] | Fair Value, Measurements, Recurring [Member] | Quoted Prices in Active Markets for Identical Assets (Level 1) [Member]    
Assets:    
Cash equivalents 18us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GulfPowerMember
 
Liabilities:    
Derivative Liability, Fair Value, Gross Liability 0us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GulfPowerMember
 
Gulf Power [Member] | Fair Value, Measurements, Recurring [Member] | Significant Other Observable Inputs (Level 2) [Member]    
Assets:    
Cash equivalents 0us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GulfPowerMember
 
Liabilities:    
Derivative Liability, Fair Value, Gross Liability 90us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GulfPowerMember
 
Gulf Power [Member] | Fair Value, Measurements, Recurring [Member] | Significant Unobservable Inputs (Level 3) [Member]    
Assets:    
Cash equivalents 0us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GulfPowerMember
 
Liabilities:    
Derivative Liability, Fair Value, Gross Liability 0us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_GulfPowerMember
 
Mississippi Power [Member]    
Assets:    
Derivative Asset, Fair Value, Gross Asset 0us-gaap_DerivativeFairValueOfDerivativeAsset
/ dei_LegalEntityAxis
= so_MississippiPowerMember
0us-gaap_DerivativeFairValueOfDerivativeAsset
/ dei_LegalEntityAxis
= so_MississippiPowerMember
Liabilities:    
Derivative Liability, Fair Value, Gross Liability 52us-gaap_DerivativeFairValueOfDerivativeLiability
/ dei_LegalEntityAxis
= so_MississippiPowerMember
45us-gaap_DerivativeFairValueOfDerivativeLiability
/ dei_LegalEntityAxis
= so_MississippiPowerMember
Mississippi Power [Member] | Fair Value, Measurements, Recurring [Member]    
Assets:    
Cash equivalents 110us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_MississippiPowerMember
 
Liabilities:    
Derivative Liability, Fair Value, Gross Liability 52us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_MississippiPowerMember
 
Mississippi Power [Member] | Fair Value, Measurements, Recurring [Member] | Quoted Prices in Active Markets for Identical Assets (Level 1) [Member]    
Assets:    
Cash equivalents 110us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_MississippiPowerMember
 
Liabilities:    
Derivative Liability, Fair Value, Gross Liability 0us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_MississippiPowerMember
 
Mississippi Power [Member] | Fair Value, Measurements, Recurring [Member] | Significant Other Observable Inputs (Level 2) [Member]    
Assets:    
Cash equivalents 0us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_MississippiPowerMember
 
Liabilities:    
Derivative Liability, Fair Value, Gross Liability 52us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_MississippiPowerMember
 
Mississippi Power [Member] | Fair Value, Measurements, Recurring [Member] | Significant Unobservable Inputs (Level 3) [Member]    
Assets:    
Cash equivalents 0us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_MississippiPowerMember
 
Liabilities:    
Derivative Liability, Fair Value, Gross Liability 0us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_MississippiPowerMember
 
Southern Power [Member]    
Assets:    
Derivative Asset, Fair Value, Gross Asset 0us-gaap_DerivativeFairValueOfDerivativeAsset
/ dei_LegalEntityAxis
= so_SouthernPowerMember
5us-gaap_DerivativeFairValueOfDerivativeAsset
/ dei_LegalEntityAxis
= so_SouthernPowerMember
Liabilities:    
Derivative Liability, Fair Value, Gross Liability 0us-gaap_DerivativeFairValueOfDerivativeLiability
/ dei_LegalEntityAxis
= so_SouthernPowerMember
4us-gaap_DerivativeFairValueOfDerivativeLiability
/ dei_LegalEntityAxis
= so_SouthernPowerMember
Southern Power [Member] | Fair Value, Measurements, Recurring [Member]    
Assets:    
Cash equivalents 3us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_SouthernPowerMember
 
Southern Power [Member] | Fair Value, Measurements, Recurring [Member] | Quoted Prices in Active Markets for Identical Assets (Level 1) [Member]    
Assets:    
Cash equivalents 3us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_SouthernPowerMember
 
Southern Power [Member] | Fair Value, Measurements, Recurring [Member] | Significant Other Observable Inputs (Level 2) [Member]    
Assets:    
Cash equivalents 0us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_SouthernPowerMember
 
Southern Power [Member] | Fair Value, Measurements, Recurring [Member] | Significant Unobservable Inputs (Level 3) [Member]    
Assets:    
Cash equivalents $ 0us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ dei_LegalEntityAxis
= so_SouthernPowerMember
 
[1] For additional detail, see the nuclear decommissioning trusts sections for Alabama Power and Georgia Power in this table.
[2] Excludes receivables related to investment income, pending investment sales, payables related to pending investment purchases, and currencies.
[3] Includes the investment securities pledged to creditors and collateral received and excludes payables related to the securities lending program. As of March 31, 2015, approximately $50 million of the fair market value of Georgia Power's nuclear decommissioning trust funds' securities were on loan and pledged to creditors under the funds' managers' securities lending program.