XML 103 R73.htm IDEA: XBRL DOCUMENT
v3.25.0.1

Regulatory Matters - Schedule of Regulatory Assets and Liabilities (Details) - USD ($) $ in Thousands | Dec. 31, 2024 | Dec. 31, 2023
--- | --- | ---
Schedule of Regulatory Assets and Liabilities [Line Items] |  |
Regulatory assets - current | $ 9,962 | $ 16,127
Regulatory assets, long-term | 98,673 | 95,715
Regulatory liabilities, current | 29,307 | 25,408
Regulatory liabilities, long -term | 288,928 | 276,547
Deferred Income Taxes |  |
Schedule of Regulatory Assets and Liabilities [Line Items] |  |
Regulatory liabilities, current | 0 | 0
Regulatory liabilities, long -term | 130,387 | 136,022
Plant Removal Obligations |  |
Schedule of Regulatory Assets and Liabilities [Line Items] |  |
Regulatory liabilities, current | 0 | 0
Regulatory liabilities, long -term | 126,263 | 117,030
Fuel Clause Adjustments |  |
Schedule of Regulatory Assets and Liabilities [Line Items] |  |
Regulatory liabilities, current | 11,432 | 11,350
Regulatory liabilities, long -term | $ 0 | 0
Regulatory liabilities - remaining recovery/refund period | 1 year |
Alternative Revenue Program Riders |  |
Schedule of Regulatory Assets and Liabilities [Line Items] |  |
Regulatory liabilities, current | $ 14,255 | 6,885
Regulatory liabilities, long -term | $ 0 | 0
Regulatory liabilities - remaining recovery/refund period | 1 year |
North Dakota PTC Refunds |  |
Schedule of Regulatory Assets and Liabilities [Line Items] |  |
Regulatory liabilities, current | $ 0 | 0
Regulatory liabilities, long -term | 20,099 | 12,011
Pension and Other Postretirement Benefit Plans |  |
Schedule of Regulatory Assets and Liabilities [Line Items] |  |
Regulatory liabilities, current | 2,547 | 6,138
Regulatory liabilities, long -term | 10,758 | 11,307
Other |  |
Schedule of Regulatory Assets and Liabilities [Line Items] |  |
Regulatory liabilities, current | 1,073 | 1,035
Regulatory liabilities, long -term | 1,421 | 177
Pension and Other Postretirement Benefit Plans |  |
Schedule of Regulatory Assets and Liabilities [Line Items] |  |
Regulatory assets - current | 0 | 154
Regulatory assets, long-term | 88,161 | 86,134
Alternative Revenue Program Riders |  |
Schedule of Regulatory Assets and Liabilities [Line Items] |  |
Regulatory assets - current | 4,257 | 3,719
Regulatory assets, long-term | $ 195 | 158
Regulatory assets - Remaining recovery/refund period | 2 years |
Deferred Income Taxes |  |
Schedule of Regulatory Assets and Liabilities [Line Items] |  |
Regulatory assets - current | $ 0 | 0
Regulatory assets, long-term | 8,944 | 6,940
Fuel Clause Adjustments |  |
Schedule of Regulatory Assets and Liabilities [Line Items] |  |
Regulatory assets - current | 2,218 | 7,294
Regulatory assets, long-term | $ 0 | 0
Regulatory assets - Remaining recovery/refund period | 1 year |
Derivative Instruments |  |
Schedule of Regulatory Assets and Liabilities [Line Items] |  |
Regulatory assets - current | $ 1,989 | 4,210
Regulatory assets, long-term | $ 0 | 0
Regulatory assets - Remaining recovery/refund period | 1 year |
Other |  |
Schedule of Regulatory Assets and Liabilities [Line Items] |  |
Regulatory assets - current | $ 1,498 | 750
Regulatory assets, long-term | $ 1,373 | $ 2,483

X
- Definition Schedule of Regulatory Assets and Liabilities + References No definition available. + Details
Name: | ottr_ScheduleOfRegulatoryAssetsAndLiabilitiesLineItems
Namespace Prefix: | ottr_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Amortization period for the recovery of regulatory asset, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. + References No definition available. + Details
Name: | us-gaap_RegulatoryAssetAmortizationPeriod
Namespace Prefix: | us-gaap_
Data Type: | xbrli:durationItemType
Balance Type: | na
Period Type: | instant

X
- Definition Carrying amount as of the balance sheet date of capitalized costs of regulated entities that are expected to be recovered through revenue sources within one year or the normal operating cycle, if longer. Such costs are capitalized if they meet both of the following criteria: a. It is probable that future revenue in an amount at least equal to the capitalized cost will result from inclusion of that cost in allowable costs for rate-making purposes. b. Based on available evidence, the future revenue will be provided to permit recovery of the previously incurred cost rather than to provide for expected levels of similar future costs. If the revenue will be provided through an automatic rate-adjustment clause, this criterion requires that the regulator's intent clearly be to permit recovery of the previously incurred cost. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Topic 980 -SubTopic 340 -Name Accounting Standards Codification -Section 50 -Paragraph 1 -Publisher FASB -URI https://asc.fasb.org/1943274/2147478742/980-340-50-1 + Details
Name: | us-gaap_RegulatoryAssetsCurrent
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Definition Carrying amount as of the balance sheet date of capitalized costs of regulated entities that are not expected to be recovered through revenue sources within one year or the normal operating cycle if longer. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Topic 980 -SubTopic 340 -Name Accounting Standards Codification -Section 50 -Paragraph 1 -Publisher FASB -URI https://asc.fasb.org/1943274/2147478742/980-340-50-1 + Details
Name: | us-gaap_RegulatoryAssetsNoncurrent
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Definition Amortization period for the recovery of regulatory liability, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. + References No definition available. + Details
Name: | us-gaap_RegulatoryLiabilityAmortizationPeriod
Namespace Prefix: | us-gaap_
Data Type: | xbrli:durationItemType
Balance Type: | na
Period Type: | instant

X
- Definition The amount for the individual regulatory current liability as itemized in a table of regulatory current liabilities as of the end of the period. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Topic 980 -SubTopic 405 -Name Accounting Standards Codification -Section 25 -Paragraph 1 -Publisher FASB -URI https://asc.fasb.org/1943274/2147477571/980-405-25-1 + Details
Name: | us-gaap_RegulatoryLiabilityCurrent
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition The amount for the individual regulatory noncurrent liability as itemized in a table of regulatory noncurrent liabilities as of the end of the period. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Topic 210 -SubTopic 10 -Name Accounting Standards Codification -Section S99 -Paragraph 1 -Subparagraph (SX 210.5-02(24)) -Publisher FASB -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1 + Details
Name: | us-gaap_RegulatoryLiabilityNoncurrent
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Details
Name: | us-gaap_RegulatoryLiabilityAxis=ottr_DeferredIncomeTaxesMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_RegulatoryLiabilityAxis=ottr_PlantRemovalObligationsMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_RegulatoryLiabilityAxis=ottr_FuelClauseAdjustmentMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_RegulatoryLiabilityAxis=ottr_AlternativeRevenueProgramRidersMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_RegulatoryLiabilityAxis=ottr_NorthDakotaPTCRefundsMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_RegulatoryLiabilityAxis=ottr_PensionAndOtherPostretirementBenefitPlansMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_RegulatoryLiabilityAxis=ottr_OtherRegulatoryLiabilitiesMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_RegulatoryAssetAxis=ottr_PensionAndOtherPostretirementBenefitPlansMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_RegulatoryAssetAxis=ottr_AlternativeRevenueProgramRidersMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_RegulatoryAssetAxis=ottr_DeferredIncomeTaxesMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_RegulatoryAssetAxis=ottr_FuelClauseAdjustmentsMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_RegulatoryAssetAxis=ottr_RegulatoryAssetDerivativeInstrumentsMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_RegulatoryAssetAxis=ottr_OtherRegulatoryAssetsMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |