Timers and their available states

When using the state of a timer in an automation, the available choices are On, Off, Unknown, Unavailable. When a timer finishes, it becomes “idle”. Thats is not an option to choose in the UI. You can write that in, but newcomers may get confused.
Not sure if this is a bug to be reported or not.

Did you look at the documentations of timers.
Timers use events.

A timer also becomes idle when it is cancelled. If you are only looking at the state then its impossible to tell whether a timer finished or was cancelled.

Similarly if HA was restarting or rebooting at the time when a running timer was supposed to finish then the timer begins in the idle state. Timers that weren’t running at all prior to an HA restart also begin in an idle state. This too is indistinguishable if only looking at the state.

This is the answer. Never trigger off the state of your timers. Trigger off these events instead:

Ah…ok, learn something new every day!
Been using Idle but for the purposes of the couple automations I used them in it made no difference if they were cancelled or finished. So never noticed any issues.

Yea that’s true, if you don’t use cancel at all then triggering off idle is pretty accurate.

But the restart thing still matters. It’s an edge case for sure so it may never have come up yet. But surviving restarts is one of the big advantages of using timers over a simple delay so typically it’s important to account for it.