Keeping track of dumb things

I’m looking for a home-assistant solution for keeping track of when dumb things need to be changed.

Like when my humidifier is out of water and needs to be filled. I use a smart switch to turn it on and off. So I’m looking for a (non-exact-science) way of knowing how long it can run on a full tank, before needing more water?

I’m thinking of an automation that starts a timer when the humidifier gets turned on, and stops the timer when the humidifier is turned off. Then when I fill the tank, reset the timer to 0. Pretty soon I’d have a pretty good estimate on how many hours the humidifier can run, before needing to be refilled, and can create a to-do for myself at a predefined interval.

The same could be applied to dumb battery powered devices that don’t have any way of reporting their level. Or how many dishwasher cycles you can run before you need to buy more detergent. And so on.

Looking for insight as to how I’d go about creating something like this.

Yes, I’m fully aware I could do this with some sensors and ESPHome; and when I have time, I’ll do that. Looking for an in-the-meantime solution.