Skip to main content
Oklahoma Weather Automation

Home Assistant Weather Alerts for Oklahoma

Oklahoma averages 52 tornadoes per year, plus ice storms, derechos, and extreme heat. Home Assistant can pull NWS alerts for your county and trigger automations instantly: flash lights, send critical notifications, close the garage, and unlock the safe room.

Part of our Home Assistant Ultimate Guide

~18 min read Updated March 2026

Oklahoma Weather: Why Automation Matters

Oklahoma sits at the intersection of warm Gulf moisture and cold Canadian air masses, producing some of the most violent weather on Earth. The OKC metro is in the heart of Tornado Alley, and severe weather season stretches from March through June with secondary risks from November ice storms and summer heat waves.

The problem with relying on TV weather or phone alerts alone is that they are passive. You have to be watching TV or have your phone nearby with sound on. Home Assistant automations are active. They flash your lights, blare a siren, send critical notifications that bypass Do Not Disturb, close your garage door, and unlock your safe room door. All automatically, all within seconds of an NWS alert being issued.

Peak Tornado Season

April through June. May is the highest-risk month. Oklahoma averages 52 tornadoes per year, many of them in the OKC metro corridor.

Ice Storm Season

December through February. Major ice storms every 2-3 years. Extended power outages (days to weeks) and hazardous road conditions.

Severe Thunderstorms

March through October. Large hail (golf ball+), damaging winds (60-100 mph), and flash flooding. More common than tornadoes.

Freeze Warnings

October through April. Protect outdoor pipes, irrigation systems, and pets. Overnight lows below 32F are common from November through March.

NWS Alerts Integration Setup

The NWS Alerts custom integration connects Home Assistant to NOAA's National Weather Service API. It monitors your specific NWS forecast zone and creates a sensor that updates whenever an alert is issued or expires.

  1. 1 Install the NWS Alerts integration via HACS (search "NWS Alerts" by finity). If you do not have HACS installed yet, see our Add-ons Guide.
  2. 2 Find your NWS zone ID at alerts.weather.gov. Common Oklahoma zones:
Zone ID County/Area
OKZ009Oklahoma County (OKC)
OKZ012Canadian County (Yukon, Mustang, El Reno)
OKZ026Cleveland County (Norman, Moore)
OKZ010Logan County (Guthrie, Edmond area)
OKZ011Lincoln County (Chandler)
OKZ025Grady County (Chickasha)
  1. 3 Add the integration in HA: Settings > Devices & Services > Add Integration > NWS Alerts. Enter your zone ID (e.g., OKZ012 for Canadian County).
  2. 4 The integration creates sensor.nws_alerts with the count of active alerts. Alert details (title, description, severity) are available as attributes.

Tornado Warning Automation

This is the most critical automation for any Oklahoma smart home. When a Tornado Warning is issued for your zone, every second of warning time counts. This automation sends a critical push notification (bypasses Do Not Disturb), flashes lights red, and triggers any additional actions you configure.

automation:
  - alias: "Tornado Warning - Oklahoma"
    trigger:
      - platform: state
        entity_id: sensor.nws_alerts
    condition:
      - condition: template
        value_template: >-
          {{ 'Tornado Warning' in
            state_attr('sensor.nws_alerts', 'title') }}
    action:
      # Critical push notification (bypasses DND)
      - service: notify.mobile_app_all
        data:
          title: "TORNADO WARNING"
          message: >-
            {{ state_attr('sensor.nws_alerts',
              'display_desc').split('\n')[0] }}
          data:
            push:
              sound:
                name: default
                critical: 1
                volume: 1.0
      # Flash all lights red
      - service: light.turn_on
        target:
          entity_id: all
        data:
          color_name: red
          brightness: 255
          flash: long
      # Close garage door
      - service: cover.close_cover
        target:
          entity_id: cover.garage_door
      # Unlock safe room
      - service: lock.unlock
        target:
          entity_id: lock.safe_room_door

Important: Critical Notifications

The critical: 1 flag is essential for tornado warnings. Without it, notifications follow your phone's normal Do Not Disturb settings. At 2 AM during a tornado, you need this to wake you up. On iOS, critical notifications also bypass the silent switch. On Android, they use the highest priority channel.

Severe Thunderstorm Automation

Severe thunderstorm warnings are far more common than tornado warnings in Oklahoma but still carry significant risk from large hail, damaging winds, and flash flooding. This automation closes the garage and sends a standard (non-critical) notification.

automation:
  - alias: "Severe Thunderstorm Warning - Oklahoma"
    trigger:
      - platform: state
        entity_id: sensor.nws_alerts
    condition:
      - condition: template
        value_template: >-
          {{ 'Severe Thunderstorm Warning' in
            state_attr('sensor.nws_alerts', 'title') }}
    action:
      # Close garage door if open
      - service: cover.close_cover
        target:
          entity_id: cover.garage_door
      # Standard notification
      - service: notify.mobile_app_all
        data:
          title: "Severe Thunderstorm Warning"
          message: >-
            Severe storms approaching your area.
            Garage door closed automatically.
            {{ state_attr('sensor.nws_alerts',
              'display_desc').split('\n')[0] }}
      # Switch exterior cameras to continuous recording
      - service: switch.turn_on
        target:
          entity_id: switch.driveway_camera_continuous

Ice Storm and Freeze Automations

Oklahoma ice storms cause extended power outages and property damage. Freeze warnings are critical for protecting outdoor pipes, irrigation systems, and pets. These automations use both NWS alerts and local temperature sensors to respond automatically.

Freeze Warning Automation

This automation triggers when your outdoor temperature sensor drops below 35F (giving you a buffer before actual freezing). It sends a notification reminding you to drip faucets and bring in pets, and can optionally activate pipe heat tape via a smart plug.

automation:
  - alias: "Freeze Warning - Pipes and Pets"
    trigger:
      - platform: numeric_state
        entity_id: sensor.outdoor_temperature
        below: 35
    condition:
      - condition: time
        after: "18:00:00"
        before: "09:00:00"
    action:
      # Turn on pipe heat tape
      - service: switch.turn_on
        target:
          entity_id: switch.pipe_heat_tape
      # Notification
      - service: notify.mobile_app_all
        data:
          title: "Freeze Warning"
          message: >-
            Outdoor temp below 35F. Pipe heat tape
            activated. Drip indoor faucets and bring
            pets inside. Current: {{
            states('sensor.outdoor_temperature')
            }}F

Ice Storm Response

When an Ice Storm Warning is issued, this automation turns on exterior pathway lighting (helps with visibility on ice), sends a notification, and can pre-heat the home to build a thermal buffer before potential power loss.

automation:
  - alias: "Ice Storm Warning Response"
    trigger:
      - platform: state
        entity_id: sensor.nws_alerts
    condition:
      - condition: template
        value_template: >-
          {{ 'Ice Storm Warning' in
            state_attr('sensor.nws_alerts', 'title') }}
    action:
      # Bump thermostat up to build thermal buffer
      - service: climate.set_temperature
        target:
          entity_id: climate.thermostat
        data:
          temperature: 72
      # Turn on exterior pathway lights
      - service: light.turn_on
        target:
          entity_id: light.exterior_pathway
      # Notification
      - service: notify.mobile_app_all
        data:
          title: "Ice Storm Warning"
          message: >-
            Ice storm warning issued. Thermostat
            raised to 72F as thermal buffer. Check
            UPS battery levels and ensure backup
            supplies are ready.

Push Notifications with ntfy

The Home Assistant Companion App handles push notifications natively, but ntfy gives you a lightweight alternative that works on any device, including computers and tablets without the HA app installed. It is free, self-hostable, and supports priority levels.

HA Companion App

  • Built into the HA mobile app (iOS/Android)
  • Supports critical notifications (bypass DND)
  • Rich notifications with images and actions
  • Location tracking for presence detection
  • No external service required

ntfy

  • Works on any device with a web browser
  • Self-hostable for full privacy
  • Supports priority levels (urgent/high/default/low)
  • Send to multiple subscribers at once
  • Free tier handles most home automation needs
# configuration.yaml - ntfy notification service
notify:
  - name: ntfy_weather
    platform: rest
    resource: https://ntfy.sh/your-topic-name
    method: POST_JSON
    data:
      topic: your-topic-name
      priority: 5
    title_param_name: title
    message_param_name: message

Our recommendation: Use the HA Companion App for critical notifications (tornado warnings) because of the critical: 1 flag that bypasses DND. Use ntfy as a backup notification channel and for reaching devices without the HA app installed (wall tablets, family computers).

Power Outage Detection

With a UPS connected to Home Assistant via USB (apcupsd or NUT integration), your system can detect power outages, track UPS battery drain, and automatically conserve resources during extended outages. See our Storm Safety Guide for the full UPS setup.

automation:
  - alias: "Power Outage Detected"
    trigger:
      - platform: state
        entity_id: sensor.ups_status
        to: "On Battery"
    action:
      - service: notify.mobile_app_all
        data:
          title: "Power Outage"
          message: >-
            Power outage detected. Running on UPS.
            Battery: {{
            states('sensor.ups_battery_charge')
            }}%. Estimated runtime: {{
            states('sensor.ups_battery_runtime')
            }} minutes.
      # Turn off non-essential smart devices
      - service: light.turn_off
        target:
          entity_id:
            - light.accent_lights
            - light.decorative_lights
      # Log outage start time
      - service: input_datetime.set_datetime
        target:
          entity_id: input_datetime.last_outage_start
        data:
          datetime: >-
            {{ now().strftime('%Y-%m-%d %H:%M:%S') }}

Weather Dashboard Cards

A dedicated weather tab on your Home Assistant dashboard keeps storm information visible and actionable. Here are the cards to include for an Oklahoma-optimized weather dashboard.

NWS Alert Banner

Conditional card that shows a red alert banner with the active NWS alert title and description. Only visible when alerts are active. Use a Mushroom Chip card for a compact display or a Markdown card for the full alert text.

Weather Forecast

The built-in Weather Forecast card shows current conditions, temperature, and a multi-day forecast. Use the NWS Weather integration for Oklahoma-specific forecasts from the Norman, OK weather office.

Indoor/Outdoor Comparison

Gauge or Glance cards comparing indoor temperature/humidity with outdoor readings. Useful during Oklahoma summer heat (is the AC keeping up?) and winter freeze events (are pipes at risk?).

UPS Battery Status

Gauge card showing UPS battery percentage and estimated runtime. During storms, this tells you how long your smart home will keep running if power goes out.

Wind Speed & Direction

Critical during tornado season. A compass-style card showing real-time wind direction and speed from your weather station or weather integration helps assess approaching storm movement.

Radar Map

Use a Webpage card with an iframe to weather.gov radar or install a community radar card via HACS. The OKC-area radar (KTLX in Twin Lakes, OK) gives the best local coverage.

Frequently Asked Questions

Common questions about Home Assistant weather alerts and Oklahoma weather automation.

Is NWS Alerts better than Weather Underground for Home Assistant?

For severe weather alerts, NWS Alerts is the clear winner. It pulls directly from NOAA (the official source for all US weather alerts) with no API key, no subscription, and no rate limits. Weather Underground and other weather integrations provide forecasts, conditions, and historical data, but they often lag behind NWS for critical alerts by 1-3 minutes. For a comprehensive setup, use both: NWS Alerts for severe weather automations (tornado warnings, thunderstorm warnings) and a weather integration like OpenWeatherMap or the built-in NWS Weather for daily forecasts, radar, and dashboard weather cards.

How quickly does the NWS Alerts integration update?

The NWS Alerts integration polls the NOAA API every 1-5 minutes by default. During active severe weather, NOAA updates alerts in near-real-time, and the integration picks up new alerts on its next polling cycle. In practice, you will receive an HA notification within 1-5 minutes of an alert being issued, which is comparable to or faster than most TV weather coverage. If you need faster alerts, you can reduce the polling interval in the integration configuration, though going below 1 minute may trigger NOAA rate limiting.

Can I monitor multiple Oklahoma counties with NWS Alerts?

Yes. You can add multiple NWS Alerts integration instances, each configured for a different zone. This is useful if you live in one county and work in another, or if family members are spread across the OKC metro. Each instance creates its own sensor (e.g., sensor.nws_alerts_okz009 for Oklahoma County, sensor.nws_alerts_okz012 for Canadian County). Your automations can trigger on any of them. Common Oklahoma zones: OKZ009 (Oklahoma County), OKZ012 (Canadian County), OKZ026 (Cleveland County), OKZ021 (Comanche County).

Will my weather alerts work if the internet is down?

No. The NWS Alerts integration requires an internet connection to poll the NOAA API. If your internet goes down during a storm (common with cable providers), the integration cannot fetch new alerts. This is why we recommend a cellular backup modem (see our Storm Safety Guide) and keeping your router and HA hub on UPS battery backup. As a fallback, NOAA Weather Radio and phone Wireless Emergency Alerts (WEA) work independently of your internet connection.

What should I include on a weather dashboard in Home Assistant?

A good Oklahoma weather dashboard includes: (1) A Weather Forecast card showing the current conditions and 5-day forecast. (2) A Conditional card that shows active NWS alerts (red banner with alert title and description) only when alerts are active. (3) An indoor/outdoor temperature comparison using Glance or Gauge cards. (4) Wind speed and direction sensors. (5) UPS battery status (percentage and runtime remaining). (6) A Radar card using a community card like Weather Radar or an iframe to weather.gov radar. For Oklahoma specifically, add the NWS Alerts sensor prominently at the top of the dashboard so tornado warnings are impossible to miss.

Get Storm-Ready Before Spring

We set up complete weather alert automation systems for Oklahoma homeowners. NWS integration, tornado warning automations, UPS backup, freeze protection, and everything your smart home needs to weather Oklahoma storms.

Or call us at (405) 785-7705