Navaja

Checker · runs in your browser

Why your automation never runs

It loads without an error, the YAML looks fine, and nothing happens. Paste it and find out which of the usual suspects it is.

Why it never runs
1…
Nothing leaves your browser.

The four that catch everybody

to: on without quotes

YAML reads on, off, yes and no as true/false values, not as words. A state is the text "on", so the comparison never matches and the trigger never fires. Quote it: to: "on".

The condition contradicts the trigger

Trigger on to: "off", then a condition demanding the same entity be "on". Both cannot be true in the same instant, so the trace shows the automation starting and stopping at the condition, every time.

numeric_state only fires on the way past

It triggers when the value crosses the threshold, not while it sits beyond it. If it was already above 25 when Home Assistant restarted, nothing happens until it drops below and climbs back.

mode: single and a delay

While the automation waits, every new trigger is thrown away and the log says already running. Use mode: restart to start over, or queued if none of them may be lost.

If this page finds nothing

Open Settings → Automations → the three dots → Traces. A trace means the trigger fired and something stopped it later — the trace shows exactly which step. No trace at all means the trigger never fired: check the entity id in Developer Tools → States (a renamed device leaves the old id behind in the YAML), and check that you reloaded automations after editing the file. Editing automations.yaml by hand changes nothing until Developer Tools → YAML → Reload Automations.

Questions people ask

The trace says the condition stopped it. Now what?

Then the trigger is fine and the condition was false at that exact moment. Open the trace, click the condition step and look at the value it actually saw — nine times out of ten it is the same entity the trigger just changed, being asked to be in the state it has left.

There is no trace at all.

The trigger never fired. Check the entity id in Developer Tools → States (renaming a device does not rewrite your YAML), and remember that editing automations.yaml by hand does nothing until Developer Tools → YAML → Reload Automations.

It worked for months and then stopped.

Two usual causes. An integration renamed its entities in an update, so the id in the automation no longer exists. Or it is a numeric_state trigger that was already past its threshold when Home Assistant restarted — it only fires on the way past, not while it is beyond it.

Does this run my automation?

No. Nothing is sent anywhere and nothing is executed — it reads the YAML and looks for the patterns that cannot work. To see a real run, use the traces inside Home Assistant.