ElectriFixHome Automation
Perth WA · worldwide remote

Home › Help guides

My automation isn't triggering — a diagnostic checklist

Updated 25 September 2026

The symptom

"The automation is on but nothing happens." "It worked yesterday." "It fires when I press Run, but never by itself." "It only works sometimes."

These all sound like the same fault, and they're not. The single most useful thing you can do is find out which of two situations you're in, because they have completely different causes:

Why it happens

Automations are more literal than people expect. A trigger fires on a change, not on a state that's already true. A for: timer starts again from zero after a restart. A condition written as a template can quietly evaluate to false. An action aimed at a light that was renamed does nothing and says nothing. None of these produce an obvious error, which is why "it just doesn't work" is such a common description.

How to fix it yourself

Work through these in order. The first three take a minute and find most problems.

  1. Check the trace first. Open the automation (Settings → Automations & scenes), then the three-dot menu, then Traces. If there is no trace at all for the time you expected, it never triggered: go to step 4. If there is one, open it. The trace shows the path taken, step by step, and highlights where it stopped: a condition that returned false, or an action that errored. Home Assistant keeps the last five traces for each automation by default. Automations written in YAML without an id: don't get traces, so add one.
  2. Check it's actually on, and actually loaded. In the automations list, the toggle must be on. If the automation shows as unavailable, Home Assistant couldn't load it at all, usually because of a YAML mistake (a common one is enabled: false written as a top-level key, which isn't valid there). Check Settings → System → Logs and Settings → System → Repairs for the reason.
  3. Check every entity it names still exists. An automation that points at a renamed or re-paired device looks perfectly normal and does nothing. This is common enough to have its own guide.
  4. Check the trigger fires on a change, not a state. A State trigger with to: "on" fires when the entity becomes on. If it was already on when you saved the automation, nothing happens until it goes off and on again. A Numeric state trigger with above: 25 fires when the value crosses 25, not while it sits above it. A template trigger fires only when its result goes from false to true.
  5. **Check for: against restarts and blips.** A trigger like "door open for 10 minutes" needs ten unbroken minutes. A Home Assistant restart starts the clock again, and so does an entity flicking to unavailable for a second, which Wi-Fi and cloud devices do regularly. If the entity was already in that state when Home Assistant restarted, the trigger never fires at all, because the entity never changes into the state again. If this automation must not miss, add a second trigger on Home Assistant starting, and a condition that checks how long the entity has really been in that state.
  6. Check the mode. The default mode is single: if the automation is still running (say, in a five-minute delay) when it triggers again, the new trigger is ignored and a warning is logged. A motion light usually wants restart, so each new movement resets the timer. Look for "Already running" in the log.
  7. Check your time conditions. A Time condition with after: and before: handles midnight for you. A template that compares times as text does not: "04:00" < "20:30" is true, so a "before bedtime" check written that way passes at four in the morning. If you have a template comparing times, replace it with a Time condition, and make sure every window has both a start and an end.
  8. Check the conditions against reality. Open Developer tools → States, find each entity your conditions test, and compare its current value with what the condition expects: on versus On, home versus a zone name, a number stored as 21.0 versus 21.
  9. Check for a device trigger that went stale. A Device trigger is tied to the device's registry id. If the device was removed and added again, the trigger points at a device that no longer exists: the automation may fail to load (it shows as unavailable, and the log says why), or, for a device action, fail only when it runs. Replace it with a State trigger on the entity.
  10. Test the pieces separately. From the three-dot menu, Run actions runs the actions without the trigger or conditions. If that works, the problem is in the trigger or conditions. If it doesn't, it's in the actions or the devices they control.

The two quiet ones

Two causes don't show up in any of the above and are worth knowing about.

**A duplicated section in configuration.yaml.** If the file has two template: blocks (or two sensor: blocks, and so on), Home Assistant keeps only the last one. Every sensor defined in the first block silently stops existing. The config check passes. Automations that depend on those sensors stop working with no error. Search your config for any top-level key that appears twice, and merge them into one.

A threshold that fires without anything crossing. After a restart or a blip to unavailable, a numeric trigger can fire as soon as the real value comes back, even though nothing crossed the threshold. That's the opposite of "not triggering", but it's the same investigation, and the fix (a condition that checks where the value came from) costs you real crossings too, so only add it where a false trigger is expensive.

Do it properly

Or we'll look for you — from A$29, no subscription. We find and repair broken references (Repair, A$89); a trigger, condition or mode that needs changing, we point out in the report for you to change.

ElectriFix Perth Rockingham, WA Home Help guides Claude's robot Terms Privacy Refunds