Doing an action between 8am and 10am, and discarding everything else.

I want to be able to make Beeminder forcing me to scan the NFC tag outside my house between 8am and 10am.
Setting a deadline at 10am is not good enough because I often end up with a buffer because I scan my tag later in the day (e.g. at 3pm) and it counts that same as if I did it at 9am the day after.

Is there a way to restrict the start and end hours of a Beeminder goal?
I’m currently using a meta goal called morning_walk, that’s linked to my mh_walks goal.

The alternative is ratcheting manually before going to sleep, which is what I’m doing right now, but I’d like something a bit more automated. I’ve thought about writing a script as well.


I’m no kind of expert, but nobody else has responded so I will. As far as I know, what you want is not possible because Beeminder isn’t designed for time-specific limitations like that. If you go walk outside of hours, why scan the tag at all? If it’s counting for multiple goals, can you get multiple tags? Then you wouldn’t scan this one unless it’s during the hours you want. Otherwise, you might be able to do something with IFTTT. Otherwise, writing a script is probably your best option.


Thanks for answering, I appreciate it a lot!

I’ve been thinking about this in the past few days, and the best seem to have a separate morning_walk and an evening_walk goal instead of doing metaminding shenanigans. And have multiple tags like you proposed.

1 Like

I have an apple shortcuts script which updates “brush-teeth-am” or “brush-teeth-pm” depending on time of day. (I can share if useful, not sure what platform you are on). You could adopt a similar approach to have a QR-code triggered shortcut selectively update beeminder (or update different goals) based on time of day.


If you’re on Android, Tasker or Android Automate may be able to do what you want.


Maybe you can separate the recording of the event from the reconciliation in Beeminder.

As a light-weight example, you could have a Do More goal due daily at midnight that asks “Did you go for your walk on time”, and add a 1 or 0. You’ll know the answer. I’ve found this is pretty lightweight.

Does anything happen when you scan the NFC tag? Like, can it trigger an iOS shortcut or automation of some kind? If so, automation could record some kind of persistent record of the timestamp. Then Beeminder can check (via another script or a dedicated integration or whatever) at any point in the day after 10am: is there a timestamp for day between 8am and 10am? If so, you get a 1, otherwise 0.


A shortcut can be launched via NFC scan. You could make it only put a data point if between certain time (though I military not sure how well it will do with AM/PM). This was a quick example of a iOS shortcut I threw together there is probably a better way to do it. This only applies if you use an iPhone.