February Stats, 3 New Projects and a Pivot
January ended on a high. Strong numbers, growing momentum, a plan firmly in place. I walked into February knowing exactly what I was going to do. Exoden was the focus. Full steam ahead. Nothing could derail me.
I'd built and paused two entirely new products before the month was out and abandoned my original plan entirely. In hindsight, "nothing could derail me" was tempting fate a bit. Let me explain.
Exoden: On Pause
February started with solid progress on Exoden, the Laravel web app I'd committed to through to May. I got a good amount done. The groundwork is there and the project is very much alive. But around mid-month I started feeling the fatigue that comes with sustained solo development. Not a loss of belief in the product, just the natural dip that happens when you've been heads down on something for a while. It was in that fatigued headspace that I stumbled across a YouTube video about a bare knuckle fighter that gave me inspiration for a simple iOS app.
Tushti: A Gratitude App, Built in a Week
He talked about writing down ten things he was grateful for every morning. I'll be honest, my initial reaction was somewhere between scepticism and mild ridicule. Gratitude apps always struck me as the territory of the woke brigade and people who own too many crystals. Not really my scene.
It nagged at me enough to do some proper research. The existing apps had real pain points that users were vocal about. Cluttered interfaces, unnecessary features, dark patterns designed to keep you hooked rather than help you build a habit. There was a gap worth filling, so I took a chance on it.
It also suited me personally. I've long been drawn to Buddhist philosophy, not the doctrine, just the practice and the mindset it encourages. Gratitude, humility, appreciation. These aren't radical ideas, but they're ones we tend to forget in the noise and chaos of modern life. I was already a believer. Building the app was just putting that belief into practice.
I called it Tushti. It's a Sanskrit word meaning contentment, which felt like the right destination for what I was building. A calm, focused space to write down what you're grateful for each day. No social features, no dark patterns nudging you into engagement. Just a daily habit with thoughtful defaults and a clean interface that doesn't get in the way.
What I didn't anticipate was quite how much I'd build in a short stretch. Over roughly five days of focused work, I shipped:
- A full Core Data model with iCloud CloudKit sync
- A complete onboarding flow across seven screens, including a custom scroll-snapping time picker I built from scratch because the system
DatePickerwouldn't style the way I wanted. Because of course it wouldn't. - Entry, History, and Insights tabs with a custom tab bar, slide transitions, and haptic feedback throughout
- StoreKit 2 integration with a paywall, three pricing tiers (monthly, annual, lifetime), and a 14-day free trial
- A Settings screen with six sections, app reset flow, and appearance switching (system/light/dark)
- Localisation across 12 languages: English (US and UK), Spanish (Mexico), Portuguese (Brazil), Simplified Chinese, Japanese, German, French, Korean, Italian, Dutch, and Russian
- Multi-device sync handling, including a separate "welcome back" screen for second-device installs, so your settings don't get steamrolled the moment you log in on your iPad
The app is done. It works, it's polished, and I'm genuinely happy with it. But "the app is done" and "ready to ship" are two different things, and there's still a decent list standing between here and the App Store.
The website needs finishing for mobile and tablet. The site then needs localising in all supported languages. App Store pricing needs to be set properly for every territory, because the auto-localised pricing Apple provides is, to put it diplomatically, not great. Which, funnily enough, is part of what led to Prismo. Then there are demo videos and screenshots to create, in all languages. It adds up.
It will get released. It's just a matter of when, not if.
Prismo: A PPP Pricing Tool for iOS Developers
App Store pricing across 175 territories is not something you want to do manually, and Apple's auto-localised pricing is essentially just a currency conversion with no regard for what people in those countries can actually afford. I looked into macOS apps that handle PPP-based localised pricing to solve this. Found a few, tried a few, came away unimpressed. Confusing interfaces, missing features, or both.
So I did the predictable thing and decided to build something better. That's when work started on Prismo.
Prismo tackles it by connecting your App Store Connect API credentials, picking your base price in your home currency, and calculating PPP-adjusted prices for every territory using a combination of The Economist's Big Mac Index and World Bank purchasing power data. When you're happy with the results, you push the prices directly to App Store Connect in one click.
Under the hood: GitHub OAuth, encrypted credential storage (AES-256-CBC), live exchange rates, the full Apple price points grid, and a clean table showing current prices, converted prices, adjusted prices, and how much each territory diverges from a straight currency conversion.
I have full documentation written for every feature. The foundations are solid. It's currently paused at a similar stage to Tushti. Which is, admittedly, a sentence I'm getting used to writing. Both will get their moment. But something else got its moment first.
AudiBar V2: The Pivot That Made Sense
Kanodo has been the consistent revenue earner in the portfolio. AudiBar, by comparison, had been quietly ticking along with modest sales and no particular urgency behind it.
Then, in the first week of March, I started seeing daily sales. Not life-changing numbers. But consistent. Showing up every day without me doing anything to prompt them. When that happens, it gets your attention.
So I paused everything else and asked the obvious question: if people are finding and buying this on their own, what would make it even more worth buying? The answer pointed clearly to a V2. Not a cosmetic refresh, but actual functionality that AudiBar was genuinely missing, the kind of missing that also makes a price increase feel entirely justified. Up from £2.99 to £6.99.
Here's what V2 includes:
New features
- YouTube playback. Paste any YouTube URL to play the audio directly in AudiBar. Full seek, elapsed time, duration, and queue support. Build a playlist of YouTube links alongside your local tracks.
- Playback speed control. 0.5x to 2x with pitch correction, seven presets, persists across tracks. If you're not at 1x it shows in the menu bar, just in case you forget you've had everything on double speed for three days.
- Sleep timer. 15 mins, 30 mins, 45 mins, 1 hour, 2 hours. Audio fades out smoothly when the timer ends and cancels automatically if you stop playback yourself.
- Media key support. Play, pause, and skip using your keyboard media keys even when AudiBar isn't in focus.
- Control Center integration. Current track and stream info now shows in macOS Control Center with native playback controls.
- Finder integration. Right-click any audio file in Finder to play it instantly via Open With or the Services menu. Premium users can also add tracks or stream files directly to their lists without opening the app first.
- Persistent panel position. The playlist panel now remembers its size and position between sessions. Resize it, move it, close it, reopen it. It'll be exactly where you left it.
- Playlist panel menu. A new ellipsis button bundles everything into one place: volume control toggle, playback speed, sleep timer, settings, close panel, and quit.
- Add Stream without playing. You can now add a stream to your list without it immediately starting. A small thing. Apparently enough people wanted it.
UI changes
- Tab labels removed in favour of icon-only buttons with tooltips
- Sorting option labels shortened (Track, Station, URL)
- Ascending/descending replaced with arrow icons
- Auto-play label shortened to "Auto"
- Context menu redesigned with native macOS styling and keyboard shortcut indicators
- Add track/stream buttons moved next to sorting options
- Plus icon replaced with dashed circle-plus for add actions
- Minimum panel width increased when volume control is visible
Bugs fixed
- Header layout issues at narrow widths with volume control enabled: timers no longer truncate, seek bar keeps a sensible minimum width, padding sorted
- Tracks that are loaded but not playing now show a play icon rather than headphones. Headphones only appear when something is actually playing. Obvious in hindsight.
Also in progress
- VoiceOver accessibility support across all UI elements
- Redone localisations for non-English languages
- Shortcuts/hotkeys help sheet
- Updated upgrade panel to reflect the new features
£2.99 was always underpriced for what AudiBar does. £6.99 is still modest for a utility you leave running all day. I think V2 earns it.
Loose Ends from January
Before the stats, a few things worth addressing from last month. I made some fairly public statements in January about where things were headed, and a couple of ongoing situations deserve an update. Consider this the accountability section.
The Exoden commitment
I said publicly in January that Exoden was my primary focus for the next three to four months. That lasted about two weeks. I'd be more embarrassed about it if it hadn't happened before.
When I started CodelDev, I paused Kanodo for several months while working on AudiBar and Chronode. At the time I genuinely wasn't sure I was going to finish it at all. In the end it got released. The same pattern has played out a few times now. Shiny new thing syndrome is a real thing, and I won't pretend I'm immune to it. The difference between it being a problem and it being fine is whether the projects actually get finished. So far they do.
There's also something to be said for taking a break from a project mid-build. When you're putting in 60 to 70 hour weeks on the same thing, you burn out. Coming back to something with fresh eyes makes you more focused and more critical, which ultimately means better work. At least that's what I tell myself. The important thing is that nothing ends up in the archive folder never to be seen again. Not yet anyway.
It's also worth saying: AI has changed how fast things can be built. What used to take weeks can now take days. But these are not vibe-coded projects. I'm the driver. AI is the helper. Every line still gets reviewed, tested, and checked for knock-on effects elsewhere. Fast doesn't mean careless.
Still shadow banned. Still a ghost in the machine. I submitted the appeal before January's post went up and have heard absolutely nothing back. My comments sit unseen, my apps remain unpromotable on the one platform where my target audience actually hangs out. Entirely out of my hands at this point.
Kanodo marketing
I did the same rinse-and-repeat marketing process for Kanodo as I did for AudiBar. Directories, listings, social posts, the works. Looking at the download and sales figures honestly, I'm not sure any of it made much of a difference. A handful of downloads here and there maybe, but nothing that justified the time spent.
Marketing and sales are genuinely my weakest skills. I've always known this. The last few months have reinforced it. Social media promotion in particular feels like shouting into the void when you have no existing following, which I don't, on any platform. Building one takes time I'd rather spend building products. I'm going to need to rethink the approach rather than keep repeating something that isn't working. Being shadow banned from Reddit hasn't exactly helped either.
Part-time work
This hasn't changed. The plan is still to look for part-time work while working on my portfolio.
Feb 2026 Statistics
February was quieter than January by design. Promotion wound down, the focus shifted to Exoden for a few weeks and other apps for the remainder. Ultimately, the portfolio moved into maintenance mode. But quieter does not mean worse. Traffic dropped across almost every site, yet the visitors who did show up were more engaged, spent longer on the pages, and in Kanodo's case, spent significantly more money.
Search positions continued climbing organically, revenue per download jumped sharply, and the overall picture is one of a portfolio that is starting to work without being pushed. Here is the breakdown.
Website Visitor Stats (Fathom Analytics)
I use Fathom for analytics, and unfortunately ad blockers prevent the JavaScript from loading. I have no problem with this, but it doesn't give a true representation of actual visitors. We can only collate what we can.
| Site | Visitors | Views | Avg Time | Bounce Rate |
|---|---|---|---|---|
| Codel | 64 | 76 | 02:26 | 97% |
| Chronode | 28 | 55 | 06:19 | 64% |
| AudiBar | 60 | 80 | 04:40 | 82% |
| BillKit | 8 | 10 | 00:03 | 75% |
| Kanodo | 47 | 68 | 04:54 | 79% |
| Exoden | 10 | 11 | 09:44 | 90% |
Google Search Console
| Site | Clicks | Impressions | Avg CTR | Avg Position |
|---|---|---|---|---|
| Codel | 5 | 295 | 1.7% | 10 |
| Chronode | 1 | 221 | 0.5% | 7.3 |
| AudiBar | 9 | 214 | 4.2% | 5.7 |
| BillKit | 3 | 221 | 1.4% | 5.8 |
| Kanodo | 9 | 117 | 7.7% | 4.4 |
| Exoden | 0 | 69 | 0% | 6.9 |
App Store Stats
| App | Impressions | Downloads | Sales | Revenue | Proceeds |
|---|---|---|---|---|---|
| Chronode | n/a | 6 | $0 | $0 | |
| AudiBar | 2.3K | 31 | $15.09 | $10.73 | |
| BillKit | 657 | 3 | $0 | $0 | |
| Kanodo | 7.03K | 16 | $89.97 | $76.47 |
January vs February 2026 Stats Analysis
February was never going to match January on raw numbers. January had the benefit of an active marketing push, fresh App Store listings, and a portfolio of newly released apps all getting their first wave of attention at the same time. February had none of that. What it did have was a quieter, more organic signal, and in some ways that makes the data more interesting to read. Here is how the two months stack up.
Traffic: Fewer Visitors, Better Quality
Every site lost visitors in February, which is partly expected given February has three fewer days than January. Most sites dropped more than that calendar difference accounts for though, so there is a genuine decline in volume, most likely a direct result of stepping back from active promotion.
What the raw numbers do not show is what happened to engagement in the same period. Average time on site tells a very different story. Chronode went from one minute forty-one seconds to six minutes nineteen. AudiBar went from one minute to four minutes forty.
Kanodo climbed from one minute forty-eight to four minutes fifty-four. Codel went from twenty-eight seconds to two minutes twenty-six. Fewer visitors, but the ones arriving are spending dramatically more time. That is a quality shift. The portfolio is reaching more relevant people even with less volume.
The one outlier worth noting is Codel, where the bounce rate jumped to 97% despite the longer average session time. That is a slightly contradictory combination and is most likely a small sample size effect rather than anything structural.
The Kanodo App Store Anomaly
This is the most striking data point in the whole dataset. Kanodo's App Store impressions increased 9.3 times over January, going from 755 to 7,030. Downloads actually fell in the same period, from 27 down to 16. That is a very unusual divergence. Impressions and downloads normally move together.
A few things could explain it. An App Store featuring or browse event can drive a surge of passive impressions from people who never had any real intent to download. A change in ASO keywords can do the same, pulling in broader but less targeted traffic to the listing page. Without more data it is difficult to say which it was, but the conversion drop is worth keeping an eye on.
The revenue story is the real headline though. Despite fewer downloads, revenue tripled, going from $29.99 in January to $89.97 in February. Revenue per download went from $1.11 to $5.62. Something changed in how people are buying. Whether that is a pricing adjustment, a higher tier becoming the more visible option, or simply a shift in the kind of customer finding the app, the result speaks for itself.
Search: Positions Up, CTR Mixed
Every site improved its average search position in February, which is a compounding signal. The SEO work is paying off without any active effort to maintain it.
Kanodo is the clear winner. Its position improved from 5.1 to 4.4 and clicks grew from 5 to 9 despite fewer overall impressions. That means the click through rate jumped from 2.2% to 7.7%, which is well above what you would typically expect for that position.
Chronode is the concern. Impressions grew from 139 to 221 but clicks collapsed from 7 down to 1, and the click through rate dropped from 5% to 0.5%. This is the same pattern Codel showed in January, ranking for more queries but ones that are not relevant enough to the audience to earn a click. It is worth going into Search Console and checking which terms are driving those impressions.
Revenue Per Download Trend
Kanodo's jump from $1.11 to $5.62 per download has been the revenue driver for February. Revenue more than tripled on fewer downloads, which points to a meaningful shift in either pricing or buyer behaviour. It's probably worth me trying to understand what drove that before writing it off as a one month anomaly.
AudiBar is moving in the right direction, improving from $0.22 to $0.35 per download, but the pace is slow. BillKit remains an unresolved problem. Impressions declined, downloads halved, and it generated no revenue for the second month running. With other priorities taking up the available time it is probably something to leave alone for now, but it's not stabilising on its own either.
What's Next
The plan is fairly straightforward, even if the timeline isn't exactly short.
First up is finishing AudiBar V2. Remaining features, updated pricing, App Store metadata redone in all languages, fresh screenshots, website updated to match. Then submit for review and hope Apple doesn't find six new reasons to reject it.
Once that's shipped, Prismo gets finished and launched. The plan is to immediately use it on all my existing apps, and on Tushti once that's ready. It'll get its first proper real-world test on my own portfolio, which feels like the right way to do it.
After Prismo is out, Tushti comes back into focus. Finish the website, get all the promotional media done, sort the App Store metadata, and submit for review. By that point Prismo will have already handled the localised pricing side of things, which should make that part of the process considerably less painful than it would have been otherwise.
Then, finally, Exoden.
Realistically we're probably looking at two months before I get back to it. It's not going anywhere. Neither am I.
That's all for now, folks. Until we meet again, ciao!
Comments (0)
Stay in the Loop
Occasional updates on new articles and projects. No spam guaranteed