Overview
Every developer knows the pull of the green squares. GitHub’s contribution graph turned commit history into a compulsion loop years before anyone called it “gamification,” and its genius was its honesty: the grid doesn’t cheer for you, it just shows you the shape of your consistency. HabitKit, from indie developer Sebastian Röhl, lifts that visualization wholesale and applies it to everything else in your life — workouts, reading, flossing, not drinking — and the transplant takes.
The habit-tracking category is a swamp. It’s crowded with subscription-bloated coaching apps, streak-obsessed skinner boxes like Streaks and Habitica, and data-harvesting “wellness platforms” that want your email before they’ll let you log a glass of water. HabitKit positions itself against all of that. There’s no sign-in, no account, no cloud dependency. Data lives on your device, with optional backup and full import/export. That local-first stance isn’t a limitation dressed up as a feature — it’s a deliberate bet that a habit tracker should be a tool, not a relationship.
The economics reflect the same philosophy. The core app is free and, on paper, genuinely usable. HabitKit Pro runs a modest subscription or a one-time lifetime purchase, unlocking unlimited habits and deeper customization. A lifetime option these days is almost quaint, and it signals a developer building for users rather than for a growth chart. The store reception backs this up: 4.9/5 on iOS from 2,277 ratings. For a solo Flutter app competing against venture-funded incumbents, that’s a conspicuous number.
Key features
- GitHub-style tile grids: Every habit renders as a contribution chart — one colored square per completed day — giving you months of consistency (or inconsistency) at a single glance.
- Local-first privacy: No account, no sign-in, no server. Your data stays on the device with optional backup plus import/export, a rarity in this category.
- Flexible habit modeling: Custom names, icons, colors, and descriptions; multiple completions per day; configurable streak goals; and archiving that preserves history for finished or paused habits.
- Home-screen widgets: Glanceable grids on both iOS and Android, which quietly do more for adherence than any notification.
- Retroactive editing: A built-in calendar lets you view and fix past entries — missed a log, not a habit? You can say so.
Analysis
The Grid Is the Product
Most habit apps treat visualization as a reporting feature — something you check weekly, buried behind a stats tab. HabitKit inverts that. The dashboard is the visualization: a stack of contribution grids, one per habit, visible the moment you open the app. This matters more than it sounds. Habit formation research keeps circling back to the same insight — visible evidence of a streak is a stronger motivator than a reminder to start one. HabitKit’s grids deliver that evidence passively. You don’t ask the app how you’re doing; it shows you before you’ve asked.
The grid also handles failure better than a streak counter does. A traditional streak app punishes a single missed day with a demoralizing reset to zero — the single biggest abandonment trigger in this category. A contribution grid absorbs a missed day as one gray square in a field of color. The overall shape of your consistency survives. That’s a subtle psychological design choice, and it’s the right one.
Friction, or the Lack of It
The core loop is check-off-and-glance. Open the app, tap the habit, watch the square fill. Multiple completions per day are supported for habits that aren’t binary — glasses of water, sets at the gym — and streak goals are configurable so “three times a week” counts as success rather than four broken streaks. The calendar view lets you backfill entries, which purists will call cheating and everyone else will call accounting for the fact that phones sometimes stay in pockets.
Archiving is the sleeper feature. Habits end — you finish physical therapy, you stop learning Dutch — and most trackers force a choice between a cluttered dashboard and deleted history. HabitKit lets a habit retire with its record intact. That’s the kind of design decision that suggests a developer who understands how habits actually end.
Where the Restraint Cuts the Other Way
The local-first architecture has a real cost: no cross-device sync. If you log on your phone and want to review on a tablet, you’re exporting and importing like it’s 2011. This is the single most requested feature across both stores, and Röhl has said sync and a macOS version are in development — but as of today, this is a one-device app, and it should be bought as one. There’s also no social layer, no accountability partners, no coaching, no AI-generated encouragement. Most of that is bloat the category needs less of, but users who need external pressure to sustain a habit will find HabitKit indifferent to their struggle. It’s a mirror, not a coach.
The free tier’s habit limit is the pressure point that funnels you to Pro. It’s a fair trade at the asking price — and the lifetime option removes the subscription objection entirely — but know going in that “free” means “free trial of your first few habits” if you’re the type to track everything.
Visuals & performance
HabitKit is a good-looking app in an unshowy way. The grids do the aesthetic heavy lifting — dense, colorful, information-rich — while the surrounding chrome stays out of the way. Multiple themes with proper light and dark modes are included, and the custom color-per-habit system means a dashboard can end up looking like a personal mosaic rather than a corporate wellness product.
It’s built with Flutter, which historically has been a yellow flag for platform-native feel — and to Röhl’s credit, the design largely sidesteps the telltale compromises. The interface is built around simple taps and scrolling lists, the kind of interaction patterns Flutter handles well, and the widgets — often Flutter apps’ weakest point, since they must be built natively anyway — are a core part of the design rather than an afterthought. It won’t be mistaken for a pure SwiftUI app by anyone who notices scroll physics, but nothing about the design reads as cheap. For a solo developer shipping to two platforms simultaneously, Flutter was the pragmatic call, and the architecture justifies it.
Platform nuances
The iOS and Android builds are functionally equivalent — one upside of the Flutter codebase is that neither platform is the neglected sibling. iOS users get a widget experience that sits naturally alongside iOS’s widget-heavy home screen conventions, and the 4.9/5 App Store rating suggests that audience is well served. Android users get the same feature set plus the platform’s more flexible widget sizing, though the Play rating hints at slightly rougher edges across Android’s device zoo — an unavoidable tax on a solo operation. Notably absent: iPad optimization as a first-class concern and any desktop presence. Until the promised macOS version lands, this is a phone app, full stop.
Final verdict
HabitKit is what focused indie software looks like: one sharp idea, executed with discipline, priced honestly, and improved in public by a developer who engages with his users. The missing sync is a real gap, not a quibble, and the app’s refusal to coach means it only works for people willing to be confronted by their own gray squares. But in a category defined by manipulation and bloat, HabitKit’s quiet confidence is the differentiator. It doesn’t want your engagement. It wants your consistency — and it’s built a solid mirror for finding out whether you have any.
Reviewed by the Rankeno Productivity Desk. Scores are out of 10; the overall score is the desk’s editorial judgement, informed by the four sub-scores above. How we review