XML 58 R46.htm IDEA: XBRL DOCUMENT
v3.20.2

Note 3 - Rate and Regulatory Matters - Summary of Status of Updates for Previous Two Years for Various Rate Riders (Details) - Otter Tail Power Company [Member] $ in Thousands | 3 Months Ended | 9 Months Ended
--- | --- | ---
Sep. 30, 2020 USD ($) | Sep. 30, 2019 USD ($) | Sep. 30, 2020 USD ($) kWh | Sep. 30, 2019 USD ($)
Annual Revenue | $ 11,258 | $ 4,399 | $ 28,440 | $ 15,816
Annual Revenue | 11,258 | 4,399 | 28,440 | 15,816
Minnesota1 [Member] | Conservation Improvement Program Costs and Incentives [Member] |  |  |  |
Annual Revenue | 2,096 | 1,518 | 4,703 | 4,246
Annual Revenue | 2,096 | 1,518 | $ 4,703 | 4,246
Minnesota1 [Member] | Conservation Improvement Program Costs and Incentives [Member] | The 2019 Incentive and Cost Recovery [Member] |  |  |  |
Request date |  |  | Aug. 18, 2020 |
Effective Date Requested or Approved |  |  | Oct. 01, 2020 |
Annual Revenue |  |  | $ 8,247 |
Rate rider rate (Kilowatt-Hour) | kWh |  |  | 0.00485 |
Request date |  |  | Aug. 18, 2020 |
Effective Date Requested or Approved |  |  | Oct. 01, 2020 |
Annual Revenue |  |  | $ 8,247 |
Minnesota1 [Member] | Conservation Improvement Program Costs and Incentives [Member] | The 2018 Incentive and Cost Recovery [Member] |  |  |  |
Effective Date Requested or Approved |  |  | Jan. 01, 2020 |
Annual Revenue |  |  | $ 11,926 |
Rate rider rate (Kilowatt-Hour) | kWh |  |  | 0.00710 |
Approval date |  |  | Dec. 27, 2019 |
Effective Date Requested or Approved |  |  | Jan. 01, 2020 |
Annual Revenue |  |  | $ 11,926 |
Minnesota1 [Member] | Conservation Improvement Program Costs and Incentives [Member] | The 2017 Incentive and Cost Recovery [Member] |  |  |  |
Effective Date Requested or Approved |  |  | Nov. 01, 2018 |
Annual Revenue |  |  | $ 10,283 |
Rate rider rate (Kilowatt-Hour) | kWh |  |  | 0.00600 |
Approval date |  |  | Oct. 04, 2018 |
Effective Date Requested or Approved |  |  | Nov. 01, 2018 |
Annual Revenue |  |  | $ 10,283 |
Minnesota1 [Member] | Transmission Cost Recovery Rider [Member] |  |  |  |
Annual Revenue | 2,001 | (284) | 2,402 | 301
Annual Revenue | 2,001 | (284) | $ 2,402 | 301
Minnesota1 [Member] | Transmission Cost Recovery Rider [Member] | The 2018 Annual Update [Member] |  |  |  |
Request date |  |  | Oct. 22, 2020 |
Effective Date Requested or Approved |  |  | Jan. 01, 2021 |
Annual Revenue |  |  | $ 10,260 |
Request date |  |  | Oct. 22, 2020 |
Effective Date Requested or Approved |  |  | Jan. 01, 2021 |
Annual Revenue |  |  | $ 10,260 |
Minnesota1 [Member] | Transmission Cost Recovery Rider [Member] | The 2017 Rate Reset [Member] |  |  |  |
Effective Date Requested or Approved |  |  | Nov. 01, 2017 |
Annual Revenue |  |  | $ (3,311) |
Approval date |  |  | Oct. 30, 2017 |
Effective Date Requested or Approved |  |  | Nov. 01, 2017 |
Annual Revenue |  |  | $ (3,311) |
Minnesota1 [Member] | Environmental Cost Recovery Rider [Member] |  |  |  |
Annual Revenue | 0 | 0 | 0 | (1)
Annual Revenue | 0 | 0 | $ 0 | (1)
Minnesota1 [Member] | Environmental Cost Recovery Rider [Member] | The 2018 Annual Update [Member] |  |  |  |
Effective Date Requested or Approved |  |  | Dec. 01, 2018 |
Annual Revenue |  |  | $ 0 |
Approval date |  |  | Nov. 29, 2018 |
Effective Date Requested or Approved |  |  | Dec. 01, 2018 |
Rate of base |  |  | 0.00% |
Annual Revenue |  |  | $ 0 |
Minnesota1 [Member] | Renewable Resource Adjustment [Member] |  |  |  |
Annual Revenue | 3,318 | 1,316 | 9,660 | 3,949
Annual Revenue | 3,318 | 1,316 | $ 9,660 | 3,949
Minnesota1 [Member] | Renewable Resource Adjustment [Member] | The 2018 Annual Update [Member] |  |  |  |
Effective Date Requested or Approved |  |  | Nov. 01, 2018 |
Annual Revenue |  |  | $ 5,886 |
Rate rider rate (Kilowatt-Hour) | kWh |  |  | 0.00219 |
Approval date |  |  | Aug. 29, 2018 |
Effective Date Requested or Approved |  |  | Nov. 01, 2018 |
Annual Revenue |  |  | $ 5,886 |
Minnesota1 [Member] | Renewable Resource Adjustment [Member] | The 2019 Annual Update - Revised [Member] |  |  |  |
Effective Date Requested or Approved |  |  | Jan. 01, 2020 |
Annual Revenue |  |  | $ 12,506 |
Rate rider rate (Kilowatt-Hour) | kWh |  |  | 0.00467 |
Approval date |  |  | Dec. 19, 2019 |
Effective Date Requested or Approved |  |  | Jan. 01, 2020 |
Annual Revenue |  |  | $ 12,506 |
North Dakota 1 [Member] | Transmission Cost Recovery Rider [Member] |  |  |  |
Annual Revenue | 809 | 908 | 3,131 | 3,554
Annual Revenue | 809 | 908 | $ 3,131 | 3,554
North Dakota 1 [Member] | Transmission Cost Recovery Rider [Member] | The 2020 Annual Update [Member] |  |  |  |
Effective Date Requested or Approved |  |  | Jan. 01, 2021 |
Annual Revenue |  |  | $ 5,570 |
Approval date |  |  | Aug. 31, 2020 |
Effective Date Requested or Approved |  |  | Jan. 01, 2021 |
Annual Revenue |  |  | $ 5,570 |
North Dakota 1 [Member] | Transmission Cost Recovery Rider [Member] | The 2019 Annual Update [Member] |  |  |  |
Effective Date Requested or Approved |  |  | Jan. 01, 2020 |
Annual Revenue |  |  | $ 5,739 |
Approval date |  |  | Dec. 18, 2019 |
Effective Date Requested or Approved |  |  | Jan. 01, 2020 |
Annual Revenue |  |  | $ 5,739 |
North Dakota 1 [Member] | Transmission Cost Recovery Rider [Member] | The 2018 Rate Reset for Effect of TCJA [Member] |  |  |  |
Effective Date Requested or Approved |  |  | Mar. 01, 2018 |
Annual Revenue |  |  | $ 7,469 |
Approval date |  |  | Feb. 27, 2018 |
Effective Date Requested or Approved |  |  | Mar. 01, 2018 |
Annual Revenue |  |  | $ 7,469 |
North Dakota 1 [Member] | Transmission Cost Recovery Rider [Member] | The 2018 Supplemental Update [Member] |  |  |  |
Effective Date Requested or Approved |  |  | Feb. 01, 2019 |
Annual Revenue |  |  | $ 4,801 |
Approval date |  |  | Dec. 06, 2018 |
Effective Date Requested or Approved |  |  | Feb. 01, 2019 |
Annual Revenue |  |  | $ 4,801 |
North Dakota 1 [Member] | Environmental Cost Recovery Rider [Member] |  |  |  |
Annual Revenue | 0 | (7) | 0 | 556
Annual Revenue | 0 | (7) | $ 0 | 556
North Dakota 1 [Member] | Environmental Cost Recovery Rider [Member] | The 2018 Annual Update [Member] |  |  |  |
Effective Date Requested or Approved |  |  | Feb. 01, 2019 |
Annual Revenue |  |  | $ (378) |
Approval date |  |  | Dec. 19, 2018 |
Effective Date Requested or Approved |  |  | Feb. 01, 2019 |
Rate of base |  |  | (0.31%) |
Annual Revenue |  |  | $ (378) |
North Dakota 1 [Member] | Environmental Cost Recovery Rider [Member] | The 2019 Annual Update [Member] |  |  |  |
Effective Date Requested or Approved |  |  | Nov. 01, 2019 |
Annual Revenue |  |  | $ 0 |
Approval date |  |  | Oct. 22, 2019 |
Effective Date Requested or Approved |  |  | Nov. 01, 2019 |
Rate of base |  |  | 0.00% |
Annual Revenue |  |  | $ 0 |
North Dakota 1 [Member] | Environmental Cost Recovery Rider [Member] | The 2018 Rate Reset for Effect of TCJA [Member] |  |  |  |
Effective Date Requested or Approved |  |  | Mar. 01, 2018 |
Annual Revenue |  |  | $ 7,718 |
Approval date |  |  | Feb. 27, 2018 |
Effective Date Requested or Approved |  |  | Mar. 01, 2018 |
Rate of base |  |  | 5.593% |
Annual Revenue |  |  | $ 7,718 |
North Dakota 1 [Member] | Renewable Resource Adjustment [Member] |  |  |  |
Annual Revenue | 1,256 | (20) | 3,455 | 616
Annual Revenue | 1,256 | (20) | $ 3,455 | 616
North Dakota 1 [Member] | Renewable Resource Adjustment [Member] | The 2020 Annual Update [Member] |  |  |  |
Effective Date Requested or Approved |  |  | Apr. 01, 2020 |
Annual Revenue |  |  | $ 5,762 |
Approval date |  |  | Mar. 18, 2020 |
Effective Date Requested or Approved |  |  | Apr. 01, 2020 |
Rate of base |  |  | 5.637% |
Annual Revenue |  |  | $ 5,762 |
North Dakota 1 [Member] | Renewable Resource Adjustment [Member] | The 2019 Annual Update [Member] |  |  |  |
Effective Date Requested or Approved |  |  | Jun. 01, 2019 |
Annual Revenue |  |  | $ (235) |
Approval date |  |  | May 01, 2019 |
Effective Date Requested or Approved |  |  | Jun. 01, 2019 |
Rate of base |  |  | (0.224%) |
Annual Revenue |  |  | $ (235) |
North Dakota 1 [Member] | Renewable Resource Adjustment [Member] | The 2018 Rate Reset for Effect of TCJA [Member] |  |  |  |
Effective Date Requested or Approved |  |  | Mar. 01, 2018 |
Annual Revenue |  |  | $ 9,650 |
Approval date |  |  | Feb. 27, 2018 |
Effective Date Requested or Approved |  |  | Mar. 01, 2018 |
Rate of base |  |  | 7.493% |
Annual Revenue |  |  | $ 9,650 |
North Dakota 1 [Member] | Generation Cost Recovery [Member] |  |  |  |
Annual Revenue | 1,187 | 137 | 3,035 | 607
Annual Revenue | 1,187 | 137 | $ 3,035 | 607
North Dakota 1 [Member] | Generation Cost Recovery [Member] | The 2020 Annual Update [Member] |  |  |  |
Effective Date Requested or Approved |  |  | Jul. 01, 2020 |
Annual Revenue |  |  | $ 6,184 |
Approval date |  |  | Jun. 10, 2020 |
Effective Date Requested or Approved |  |  | Jul. 01, 2020 |
Rate of base |  |  | 6.041% |
Annual Revenue |  |  | $ 6,184 |
North Dakota 1 [Member] | Generation Cost Recovery [Member] | The 2019 Initial Request [Member] |  |  |  |
Effective Date Requested or Approved |  |  | Jul. 01, 2019 |
Annual Revenue |  |  | $ 2,720 |
Approval date |  |  | May 15, 2019 |
Effective Date Requested or Approved |  |  | Jul. 01, 2019 |
Rate of base |  |  | 2.547% |
Annual Revenue |  |  | $ 2,720 |
South Dakota 1 [Member] | Conservation Improvement Program Costs and Incentives [Member] |  |  |  |
Annual Revenue | 194 | 100 | 748 | 440
Annual Revenue | 194 | 100 | 748 | 440
South Dakota 1 [Member] | Transmission Cost Recovery Rider [Member] |  |  |  |
Annual Revenue | 450 | 743 | 1,383 | 1,587
Annual Revenue | 450 | 743 | $ 1,383 | 1,587
South Dakota 1 [Member] | Transmission Cost Recovery Rider [Member] | The 2020 Annual Update [Member] |  |  |  |
Effective Date Requested or Approved |  |  | Mar. 01, 2020 |
Annual Revenue |  |  | $ 2,327 |
Approval date |  |  | Feb. 19, 2020 |
Effective Date Requested or Approved |  |  | Mar. 01, 2020 |
Annual Revenue |  |  | $ 2,327 |
South Dakota 1 [Member] | Transmission Cost Recovery Rider [Member] | The 2019 Annual Update [Member] |  |  |  |
Request date |  |  | Feb. 20, 2019 |
Effective Date Requested or Approved |  |  | Mar. 01, 2019 |
Annual Revenue |  |  | $ 1,638 |
Request date |  |  | Feb. 20, 2019 |
Effective Date Requested or Approved |  |  | Mar. 01, 2019 |
Annual Revenue |  |  | $ 1,638 |
South Dakota 1 [Member] | Transmission Cost Recovery Rider [Member] | The 2019 Rate Reset [Member] |  |  |  |
Effective Date Requested or Approved |  |  | Oct. 01, 2019 |
Annual Revenue |  |  | $ 2,046 |
Approval date |  |  | Sep. 17, 2019 |
Effective Date Requested or Approved |  |  | Oct. 01, 2019 |
Annual Revenue |  |  | $ 2,046 |
South Dakota 1 [Member] | Transmission Cost Recovery Rider [Member] | The 2018 Interim Rate Reset [Member] |  |  |  |
Effective Date Requested or Approved |  |  | Oct. 18, 2018 |
Annual Revenue |  |  | $ 1,171 |
Approval date |  |  | Oct. 18, 2018 |
Effective Date Requested or Approved |  |  | Oct. 18, 2018 |
Annual Revenue |  |  | $ 1,171 |
South Dakota 1 [Member] | Environmental Cost Recovery Rider [Member] |  |  |  |
Annual Revenue | 0 | (2) | 0 | (29)
Annual Revenue | 0 | (2) | $ 0 | (29)
South Dakota 1 [Member] | Environmental Cost Recovery Rider [Member] | The 2018 Interim Rate Reset [Member] |  |  |  |
Effective Date Requested or Approved |  |  | Oct. 18, 2018 |
Annual Revenue |  |  | $ (189) |
Rate rider rate (Kilowatt-Hour) | kWh |  |  | (0.00075) |
Approval date |  |  | Oct. 18, 2018 |
Effective Date Requested or Approved |  |  | Oct. 18, 2018 |
Annual Revenue |  |  | $ (189) |
South Dakota 1 [Member] | Phase-in Rate Plan Recovery [Member] | The 2020 Annual Update [Member] |  |  |  |
Effective Date Requested or Approved |  |  | Sep. 01, 2020 |
Annual Revenue |  |  | $ 1,625 |
Approval date |  |  | Aug. 06, 2020 |
Effective Date Requested or Approved |  |  | Sep. 01, 2020 |
Rate of base |  |  | 6.521% |
Annual Revenue |  |  | $ 1,625 |
South Dakota 1 [Member] | Phase-In Rate Plan [Member] |  |  |  |
Annual Revenue | (53) | (10) | (77) | (10)
Annual Revenue | $ (53) | $ (10) | $ (77) | $ (10)
South Dakota 1 [Member] | Phase-In Rate Plan [Member] | The 2019 Initial Request [Member] |  |  |  |
Effective Date Requested or Approved |  |  | Sep. 01, 2019 |
Annual Revenue |  |  | $ 864 |
Approval date |  |  | Aug. 21, 2019 |
Effective Date Requested or Approved |  |  | Sep. 01, 2019 |
Rate of base |  |  | 3.345% |
Annual Revenue |  |  | $ 864 |

X
- Definition Represents the approval date related to the rate rider. + References No definition available. + Details
Name: | ottr_ApprovalDate
Namespace Prefix: | ottr_
Data Type: | xbrli:dateItemType
Balance Type: | na
Period Type: | duration

X
- Definition Represents the effective date which includes requested or approved date. + References No definition available. + Details
Name: | ottr_EffectiveDate
Namespace Prefix: | ottr_
Data Type: | xbrli:dateItemType
Balance Type: | na
Period Type: | duration

X
- Definition The rate of the rate rider. + References No definition available. + Details
Name: | ottr_RateRiderRate
Namespace Prefix: | ottr_
Data Type: | num:energyItemType
Balance Type: | na
Period Type: | duration

X
- Definition The rate rider rate of the percentage of the base. + References No definition available. + Details
Name: | ottr_RateRiderRatePercentageOfBase
Namespace Prefix: | ottr_
Data Type: | num:percentItemType
Balance Type: | na
Period Type: | duration

X
- Definition Represents the request date related to the rate rider. + References No definition available. + Details
Name: | ottr_RequestDate
Namespace Prefix: | ottr_
Data Type: | xbrli:dateItemType
Balance Type: | na
Period Type: | duration

X
- Definition Amount of revenue recognized from goods sold, services rendered, insurance premiums, or other activities that constitute an earning process. Includes, but is not limited to, investment and interest income before deduction of interest expense when recognized as a component of revenue, and sales and trading gain (loss). + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 280 -SubTopic 10 -Section 50 -Paragraph 22 -Subparagraph (a) -URI http://asc.fasb.org/extlink&oid=120311839&loc=d3e8736-108599 Reference 2: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 323 -SubTopic 10 -Section 50 -Paragraph 3 -Subparagraph (c) -URI http://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571 Reference 3: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 825 -SubTopic 10 -Section 50 -Paragraph 28 -Subparagraph (f) -URI http://asc.fasb.org/extlink&oid=75031198&loc=d3e14064-108612 Reference 4: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 280 -SubTopic 10 -Section 50 -Paragraph 32 -Subparagraph (b) -URI http://asc.fasb.org/extlink&oid=120311839&loc=d3e8933-108599 Reference 5: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 280 -SubTopic 10 -Section 50 -Paragraph 32 -Subparagraph (a) -URI http://asc.fasb.org/extlink&oid=120311839&loc=d3e8933-108599 Reference 6: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 280 -SubTopic 10 -Section 50 -Paragraph 22 -Subparagraph (b) -URI http://asc.fasb.org/extlink&oid=120311839&loc=d3e8736-108599 Reference 7: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 280 -SubTopic 10 -Section 50 -Paragraph 40 -URI http://asc.fasb.org/extlink&oid=120311839&loc=d3e9031-108599 Reference 8: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 280 -SubTopic 10 -Section 50 -Paragraph 30 -Subparagraph (a) -URI http://asc.fasb.org/extlink&oid=120311839&loc=d3e8906-108599 Reference 9: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 280 -SubTopic 10 -Section 50 -Paragraph 41 -Subparagraph (a) -URI http://asc.fasb.org/extlink&oid=120311839&loc=d3e9038-108599 Reference 10: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 280 -SubTopic 10 -Section 50 -Paragraph 42 -URI http://asc.fasb.org/extlink&oid=120311839&loc=d3e9054-108599 Reference 11: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 235 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SX 210.4-08(g)(1)(ii)) -URI http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690 Reference 12: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 942 -SubTopic 235 -Section S99 -Paragraph 1 -Subparagraph (SX 210.9-05(b)(2)) -URI http://asc.fasb.org/extlink&oid=120399901&loc=d3e537907-122884 Reference 13: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 220 -SubTopic 10 -Section S99 -Paragraph 2 -Subparagraph (SX 210.5-03(1)) -URI http://asc.fasb.org/extlink&oid=120395209&loc=SL114868664-224227 + Details
Name: | us-gaap_Revenues
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

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

X
- Details
Name: | us-gaap_RegulatoryAgencyAxis=ottr_Minnesota1Member
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_PublicUtilitiesRegulatoryProceedingAxis=ottr_ConservationImprovementProgramCostsAndIncentivesMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_TypeOfArrangementAxis=ottr_The2019IncentiveAndCostRecoveryMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_TypeOfArrangementAxis=ottr_The2018IncentiveAndCostRecoveryMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_TypeOfArrangementAxis=ottr_The2017IncentiveAndCostRecoveryMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_PublicUtilitiesRegulatoryProceedingAxis=ottr_TransmissionCostRecoveryRiderMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_TypeOfArrangementAxis=ottr_The2018AnnualUpdateMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_TypeOfArrangementAxis=ottr_The2017RateResetMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_PublicUtilitiesRegulatoryProceedingAxis=ottr_EnvironmentalCostRecoveryRiderMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_PublicUtilitiesRegulatoryProceedingAxis=ottr_RenewableResourceAdjustmentMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_TypeOfArrangementAxis=ottr_The2019AnnualUpdateRevisedMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_RegulatoryAgencyAxis=ottr_NorthDakota1Member
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_TypeOfArrangementAxis=ottr_The2020AnnualUpdateMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_TypeOfArrangementAxis=ottr_The2019AnnualUpdateMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_TypeOfArrangementAxis=ottr_The2018RateResetForEffectOfTCJAMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_TypeOfArrangementAxis=ottr_The2018SupplementalUpdateMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_PublicUtilitiesRegulatoryProceedingAxis=ottr_GenerationCostRecoveryMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_TypeOfArrangementAxis=ottr_The2019InitialRequestMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_RegulatoryAgencyAxis=ottr_SouthDakota1Member
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_TypeOfArrangementAxis=ottr_The2019RateResetMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_TypeOfArrangementAxis=ottr_The2018InterimRateResetMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_PublicUtilitiesRegulatoryProceedingAxis=ottr_PhaseInRatePlanRecoveryMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_PublicUtilitiesRegulatoryProceedingAxis=ottr_PhaseInRatePlanMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |