XML 144 R116.htm IDEA: XBRL DOCUMENT
v3.23.2

Derivatives - Schedule of Foreign Currency Derivatives (Details) - 6 months ended Jun. 30, 2023 - Foreign currency derivatives € in Millions, $ in Millions | USD ($) | EUR (€)
--- | --- | ---
Derivative [Line Items] |  |
Pay Notional | $ 2,040 |
Receive Notional | € |  | € 1,750
Fair Value Gain (Loss) | (170) |
Cash Flow Hedges of Forecasted Debt | SOUTHERN POWER CO |  |
Derivative [Line Items] |  |
Pay Notional | $ 564 |
Pay Rate | 3.78% |
Receive Notional | € |  | 500
Receive Rate | 1.85% |
Fair Value Gain (Loss) | $ (28) |
Fair Value Hedges of Existing Debt | Southern Company parent(a) |  |
Derivative [Line Items] |  |
Pay Notional | $ 1,476 |
Pay Rate | 3.39% |
Receive Notional | € |  | € 1,250
Receive Rate | 1.88% |
Fair Value Gain (Loss) | $ (142) |

X
- Definition Derivative Notional Amount, Pay + References No definition available. + Details
Name: | so_DerivativeNotionalAmountPay
Namespace Prefix: | so_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Definition Derivative Notional Amount, Receive + References No definition available. + Details
Name: | so_DerivativeNotionalAmountReceive
Namespace Prefix: | so_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Definition Fair value gain (Loss). + References No definition available. + Details
Name: | so_FairValueGainLoss
Namespace Prefix: | so_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Notional Amount Of Foreign Currency Derivatives, Pay Rate + References No definition available. + Details
Name: | so_NotionalAmountOfForeignCurrencyDerivativesPayRate
Namespace Prefix: | so_
Data Type: | dtr-types1:percentItemType
Balance Type: | na
Period Type: | duration

X
- Definition Notional Amount Of Foreign Currency Derivatives, Receive Rate + References No definition available. + Details
Name: | so_NotionalAmountOfForeignCurrencyDerivativesReceiveRate
Namespace Prefix: | so_
Data Type: | dtr-types1:percentItemType
Balance Type: | na
Period Type: | duration

X
- Definition Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Topic 815 -SubTopic 40 -Name Accounting Standards Codification -Section 50 -Paragraph 5 -Subparagraph (f) -Publisher FASB -URI https://asc.fasb.org//1943274/2147480237/815-40-50-5 + Details
Name: | us-gaap_DerivativeLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Details
Name: | us-gaap_DerivativeInstrumentRiskAxis=us-gaap_ForeignExchangeContractMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis=so_CashFlowHedgesOfExistingDebtMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | dei_LegalEntityAxis=so_SouthernPowerMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis=so_FairValueHedgesOfExistingDebtMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | dei_LegalEntityAxis=so_SouthernCompanyMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |