Habit Streak Tracker

Add daily habits, check them off each day, and watch your streaks grow. Current streak, longest streak, weekly completion rate, and a full calendar heatmap — all saved locally in your browser. No account needed.

Today's Habits

No habits yet — add your first habit above.

How it works

This tracker stores all your habit data inside your browser's localStorage — nothing is sent to any server. Each time you check a habit, the current date is recorded as a completion. The streak logic works like this:

Current streak Count of consecutive days ending on today (or yesterday, if today is not yet checked).
Longest streak The maximum run of consecutive completed days across the entire history of the habit.
Weekly rate Days completed ÷ 7 for each calendar week, shown as a bar chart for the last 8 weeks.
Heatmap Each square = one day in the past 6 months. Darker = completed. Hover for the date.

Example: if you complete "Read 10 pages" on Monday, Tuesday, skip Wednesday, then complete Thursday — the current streak is 1, the longest streak so far is 2. The heatmap will show filled squares on Mon, Tue, Thu with Wednesday empty.

Frequently asked questions

Does my data sync across devices or browsers?
No — all data is stored in your browser's localStorage and never leaves your device. If you clear browser data or switch to a different browser or device, the habit history will not carry over. Use the "Export CSV" button to back up your data manually. This design means your habit data stays completely private: no account, no cloud, no tracking.
What counts as a "streak" — does missing a day reset it?
Yes. A streak is a run of consecutive calendar days on which you completed the habit. Skipping even one day breaks the chain. The tracker counts from today backwards: if today is checked, it counts today and works back. If today is not yet checked, it starts from yesterday (so your streak isn't immediately zeroed out at midnight). The longest streak is the best run across all of your history and never resets.
Can I track past completions — for example, if I forgot to check off yesterday?
Yes. The heatmap squares are clickable: click any past day square in the heatmap to toggle that day's completion on or off. This lets you catch up on days you forgot to log. Today's completion is toggled by the main checkbox in the habit list at the top.
How does the weekly completion rate bar chart work?
The chart shows the last 8 calendar weeks (Mon–Sun). For each week, the bar height represents how many days out of 7 you completed the habit (0 % to 100 %). The current incomplete week is included and its denominator is the number of days that have passed in the week so far, giving a fair partial rate. Hover a bar to see the exact numbers.
What does the CSV export contain?
The export contains one row per habit per completed day: columns are Habit, Date (YYYY-MM-DD), and Completed (true). You can open this in Excel, Google Sheets, or any spreadsheet tool to do further analysis, create your own charts, or back up your history before clearing the browser.