Habit Streak Calculator
Enter your habit start date and the days you missed. Get your current streak, best streak, total days logged, and the date you hit your next milestone.
Habit Streak Calculator
Habit and start date
Day 1 is the start date itself, the same inclusive convention as the 30-day challenge end date calculator.
How often
3 days a week
Days that are not scheduled are invisible to the maths. They cannot break a streak, because there was nothing to do.
Dates you missed
Leave it empty if you have not missed a day. Formats accepted: 2026-06-10, 6/10/2026, or 10 Jun 2026.
The list above stays the single source of truth, so you can edit or delete any line by hand.
Next milestone
The ladder is 7, 14, 21, 30, 50, 75, 100 and 365 days.
Counting a streak by hand only works while you can still remember which days you missed. LockIn30 logs each day on the device, keeps the current and best run, and holds the history without an account.
Track the streak automatically in LockIn30Everything is worked out in your browser using date-only arithmetic, so daylight saving changes and time zones cannot add or drop a day. Nothing is stored or sent anywhere.
How the streak count works
A streak is the run of scheduled days you completed, ending at your most recent scheduled day and counting back to the last day you missed. The missed day itself is not part of it. Anything before that miss belongs to the best streak, not the current one, which is why a single bad day can shrink the number on screen while leaving your record untouched.
Take a habit started on Monday 1 June 2026, run every day, with one missed day on Wednesday 10 June. Checked on Saturday 20 June 2026, that is 20 scheduled days: 19 logged, 1 missed, a 95.0% completion rate. The current streak is 10 days, 11 June through 20 June. The best streak is also 10, because the run before the miss was only 9 days long. The next milestone is 14 days, and it lands on Wednesday 24 June 2026, four days out.
The gap between current and best opens up on a longer run. Same habit started on Sunday 1 March 2026, every day, with two misses: 25 March and 10 April. Checked on Wednesday 15 April 2026, that is 46 scheduled days and 44 logged, a 95.7% completion rate. The current streak is only 5 days, from 11 April to 15 April, but the best streak is 24 days, from 1 March to 24 March. Two missed days out of 46 cut the visible number by nearly 80% while barely touching the completion rate. That gap is the whole reason streaks feel punishing.
Weekdays, custom days, and what actually breaks a run
Not every habit is a daily one, and a schedule with gaps in it needs a rule for what those gaps mean. The rule here: unscheduled days are invisible. They cannot break a streak because there was nothing to do, and they cannot extend one either. On weekdays-only, a Friday and the following Monday are consecutive.
The same habit, started Monday 1 June 2026 but set to weekdays only, with the miss still on Wednesday 10 June. Checked on Saturday 20 June 2026, there are 15 scheduled days rather than 20: 14 logged, 1 missed, 93.3% completion. The current streak is 7 scheduled days, Thursday 11 June to Friday 19 June, and it bridges the weekend of 13 and 14 June without breaking. Entering Saturday 13 June as a missed day changes nothing at all, because Saturday was never scheduled.
Custom mode asks which weekdays rather than how many per week, and that is deliberate. "Three times a week" with no fixed days has no fixed sequence of scheduled days, so no consecutive-day rule can be applied to it and no streak number is reproducible: two people with identical logs would get different answers. Ticking Monday, Wednesday and Friday pins the schedule down, which is what makes every output checkable. You still get the days-per-week figure; it is just the tick count. LockIn30's strict and forgiving modes work on the same principle: a missed day only costs you something when a rule says it does.
What to do with the number
The three figures measure different things. The current streak is momentum. The best streak is capacity, what you have already proved you can do. The completion rate tracks consistency across the whole run, and it is the one that best predicts whether the habit sticks.
Atomic Habits offers the useful rule here: never miss twice. Missing once is an accident, missing twice is the start of a new pattern. Lally et al. (2010), in the European Journal of Social Psychology, backs that up from the other direction: missing a single opportunity had no measurable effect on the automaticity curve of the 96 people they tracked. The streak resets, the habit does not.
The calculator makes the asymmetry visible. In the March example above, one extra missed day wiped a 24-day streak and moved the completion rate by roughly two points. If the streak number is the thing making you want to quit, the completion rate is the more honest measure of what you have actually done. When the current streak has just gone to zero, the streak restart date calculator lays out the restart, extend and carry-on options with dates attached, and the habit formation timeline calculator answers the longer question of when this stops taking effort. For a streak that counts itself instead of being reconstructed from memory, LockIn30 logs each day on your device.
Frequently Asked Questions
Common questions about habit streak calculator
How is my current streak calculated?
It is the number of consecutive scheduled days you completed, ending on your most recent scheduled day and counting back to the most recent day you missed, which itself is not counted. Every scheduled day you did not list as missed is treated as completed. Start on 1 June 2026, miss 10 June, and check on 20 June: the current streak is 10 days, covering 11 June through 20 June. The 9 days before the miss are gone from the current streak, but they still count toward your best streak and your total days logged.
Does today count toward my streak?
Yes. This calculator assumes every scheduled day you did not list as missed was completed, and that includes today. Some trackers count from yesterday when you have not ticked today's box yet, because they only know what you have already logged. This one works from the days you tell it you missed, so today is treated as done unless you say otherwise. If today has genuinely gone by unlogged, add it to the missed list and the number will reflect that.
Does the weekend break a weekdays-only streak?
No. On weekdays-only, Saturday and Sunday are not scheduled days at all. They neither break a streak nor extend it, so the streak simply bridges them and Friday to Monday counts as consecutive. Start on Monday 1 June 2026 with weekdays-only, miss Wednesday 10 June, and check on Saturday 20 June: the current streak is 7 scheduled days, running from Thursday 11 June to Friday 19 June, bridging the weekend of 13 and 14 June without a break. Entering a Saturday as a missed day changes nothing, because there was nothing scheduled to miss.
What is the difference between current streak and best streak?
The current streak is the run you are on right now. The best streak is the longest run anywhere in your history, including the run you are on. They are often the same number, and they diverge as soon as you have a long run behind you and a fresh one in front. Start on 1 March 2026, miss 25 March and 10 April, then check on 15 April: the current streak is 5 days, from 11 April to 15 April, while the best streak is 24 days, from 1 March to 24 March. A current streak can never be longer than a best streak. The challenge completion rate calculator takes the third number, the percentage, further.
What counts as breaking a streak?
Any scheduled day you did not do. That is the standard rule every habit tracker uses, and it is the rule this calculator applies: one missed scheduled day sends the current count back to zero. Whether that should matter to you is a separate question. Lally et al. (2010), the UCL study behind the "66 days" figure, found that missing a single opportunity had no measurable effect on the habit-formation curve. The number starts over; the habit you were building does not. If you are deciding what to do next, the streak restart date calculator dates the restart, extend, and carry-on options side by side.
What are the milestones, and how is the date worked out?
The ladder is fixed at 7, 14, 21, 30, 50, 75, 100 and 365 days. Your next milestone is the smallest of those that is larger than your current streak, so a 10-day streak is heading for 14, and a 30-day streak is heading for 50. The date is the scheduled day you reach that number on, assuming you complete every scheduled day between now and then. With a 10-day streak on Saturday 20 June 2026 on an every-day schedule, 14 days lands on Wednesday 24 June 2026. On a weekdays-only schedule the streak on that same date is 7 rather than 10, so 14 days is 7 scheduled days away and lands on Tuesday 30 June 2026, because the weekends of 20 and 21 June and 27 and 28 June are skipped over rather than counted.
Why does the custom option ask which days rather than how many per week?
Because "three times a week" with no fixed days has no fixed schedule, and without a schedule there is no way to say which days were consecutive. Two people with identical logs would get different streak numbers. Ticking Monday, Wednesday and Friday makes the schedule exact, so the streak, the best streak and the milestone date are all reproducible. The days-per-week number is still there: it is however many chips you tick.
Does this save my streak?
No. Nothing is stored, nothing is sent anywhere, and nothing is remembered when you close the tab. It is arithmetic on the dates you type in. If you want a streak that keeps itself, that is what the LockIn30 app is for. One tap a day on your phone and the current and best run are already counted, no account needed. If you would rather tick boxes in the browser, the 30-day habit challenge tracker gives you a grid instead.