Count the opportunities, not the checkmarks, and see how often you actually take them.
* Two emails, ever: one to confirm the address, one on launch day.

One slide per habit: right when you took the opportunity, left when you let it go. The week runs along the top, and a ticked day is one where you hit your goal.

Goal, opportunities, actions and rate for all your habits at once, then the rate for each, over whichever period you are looking at. A period still running is measured against the days you have left, so today is never counted as a failure.

One grid where darker means a higher action rate that day — every habit together, or one at a time. Patterns show up here that no weekly total will tell you: the days you consistently let slip, and the ones you never miss.

Each habit grows a tree from the opportunities you actually took, not from days survived. Let the rate slip and it fades.
There were always opportunities. What was missing was the action.
The habit started at work. A demo runs two or three hours, and going for the win meant filling it with small wins: things that took eight hours to build and got thirty seconds of that time. On its own each one looked too small to matter, and doing it every time is what made the difference. Outside work I was doing none of that, and I wanted to become a person of action with a number that told me whether I was.
For months that was four columns in Excel: the goal, the opportunities that came up, the actions I took, and a formula dividing one by the other. One March week of “start a conversation”, the sheet counted 56 opportunities. I had taken 27, and I would have sworn it was a quiet week.
The method worked. The logging did not. Opportunities happen out in the world, so every one meant a note in my phone, then finding the right cell in the sheet that evening and copying it over: two entries, two places, hours after the moment. Opportunity Habit is that sheet with the friction taken out: log it once, in the two seconds you have, wherever you are.

One week of “start a conversation”, recorded two ways. Only one of them can tell you whether the week was quiet or whether you kept talking yourself out of it.
The app teaches this before it asks you for anything. One week of one habit runs through all six: five chances to exercise, three taken.
01
You name it, and you say where it comes up. That is the whole setup.
Not a box you tick once a day. Not a streak to protect. A habit here is a standing decision you get to make over and over.
Exercise
Goal: five times a week
Which gives you chances to act, every week
02
Not a day on a calendar. A moment that shows up, again and again.
It is six o’clock, nothing in the diary, and your kit is still in the bag by the door.
That is one opportunity — a window where you could exercise. It counts from the second you notice it.
03
One slide, either way. This is exactly how you will log every opportunity, and it takes about two seconds.
Forgot yesterday? There is a one-tap way to add it, and only yesterday, so the number stays honest.
Right when you took the chance, left when you let it pass. Try it on the phone at the top of this page.
04
A missed chance is not a blank in your history. It is half the picture.
A checkbox cannot tell a quiet week from a week you let five chances go by. Both come out blank, and only one of them is a problem.
Five windows to exercise this week. You used three.
05
Actions divided by total opportunities. How often you take the chance when it appears.
Miss one and your rate dips. Nothing resets, nothing is lost. There is no streak to break here.
You exercised in three of the five windows you had this week.
06
The rate says how reliably you act when a chance appears. The goal says how many chances you are aiming to take.
A short list to pick from: once a day, three times a day, three times a week, five times a week. Or a number you set yourself.
Exercise
Goal: 5× / week
Your goal sits beside your opportunities, actions and rate — four views of the same week.
Pick Match opps and your goal is simply every opportunity you had that week — taken or not.
| Week | Opps | Goal | Acts | Rate |
|---|---|---|---|---|
| Week 1 | 4 | 4 | 3 | 75% |
| Week 2 | 6 | 6 | 6 | 100% |
| Week 3 | 3 | 3 | 2 | 67% |
Your goal always equals the chances you had — so hitting it and a 100% rate are the same thing. A busy week asks more of you than a quiet one.
Trends and a weekly report, over any day, week, month or year. This is Daniel's own demo data. Change the view, the period or the habit and watch it recalculate.
Action rate per month · grey means no opportunity came up
A period still running is measured only against the days that have happened, so today is never counted as a shortfall.
An opportunity habit is a habit measured by the chances you had, not the days you did not miss. You log each opportunity as it comes up and whether you took it, and the number that matters is the rate between the two. A checkbox tracker can only record attendance; it cannot tell a quiet week from a week you let five chances go by.
Your action rate is the share of opportunities you took: actions divided by opportunities, across a real calendar period. Take two of the three chances you had today and the rate is 67%. Unlike a streak it survives a bad day: one opportunity you let pass moves the number a little, it does not erase what came before.
Any moment it was genuinely in front of you. If you walked past the gym with a free hour, that was an opportunity, whether or not you went in. You log the opportunity and what you did with it: one entry, two seconds. Letting one pass is data, not a failure.
A checkbox tracker records attendance: you either did the thing or the day is blank. It cannot tell the difference between a quiet week with no opportunities and a busy week where you let five go by. Logging opportunities separately turns attendance into an action rate (the share of the chances in front of you that you took), and unlike a streak, that is a number you can actually work on.
You can add an entry for yesterday, in one tap, and it is labelled as added later so you can always tell the difference. Anything further back is deliberately not possible: with unlimited backfill you could construct any rate you liked, and the number would stop meaning anything.
There is no streak to lose. The app does not keep one, so there is nothing to reset, no freezes to ration and nothing to buy to repair. Your rate is self-correcting: one bad day moves it by a point or two and a bad week dilutes it, rather than erasing what came before.
We're a small team, so a reply takes 3–5 working days. Every ticket gets one.
