Anyone who reads self-improvement books like The Compound Effect by Darren Hardy or Atomic Habits by James Clear will tell you that the best way to make progress in any area of your life is to track it. Whether it's your fitness goals, daily habits, or finances, what you measure, you can improve.

I first came across The Compound Effect back in my campus days when I was completely broke — and that book changed how I viewed progress. One of the key ideas that stuck with me was the power of tracking. To build (or break) any habit, you first need to become aware of your behavior — and the only way to do that is to record every instance you engage in it.

This concept applies perfectly to personal finance. The book used money management as an example, and it hit home for me. I started writing down every single expense, no matter how small — from bus fare to snacks. Over time, I began to notice patterns in my spending that I had never been conscious of before. Eventually, I extended this practice to tracking my income and investments too, and that simple act of awareness became the foundation for improving my financial habits.

The Counter Book Era

In my early days of tracking, I used a simple counter book to record every transaction I made. Each evening when I got home, I'd sit down and jot everything down, then review my notes every few days. It was easy at first — I was broke and didn't have much to spend anyway.

Screenshot from 2025-11-08 02-35-45.png

This system served me well up to about a year and a half after I got my first formal job. But as I settled into the corporate world and started earning more, my number of transactions increased and my schedule got busier. Some nights I'd come home exhausted and simply forget to record anything. Other times I'd try to recall what I'd spent during the day and draw a complete blank. I realized I needed a more convenient system — something I could update on the go, before the details slipped away.

Moving to Google Sheets

That's when I switched to using Google Sheets. The idea was simple: I could log transactions right after they happened, instead of waiting until I got home. I created a basic template that worked for me — nothing fancy, just columns for date, credit, debit, description, and balance, with simple sum formulas at the bottom to track my running totals.

Screenshot from 2025-11-08 00-26-06.png

It worked well for a while. I could pull out my phone wherever I was, record a transaction in seconds, and move on with my day. I used this system for over two years, and it taught me a lot about my spending patterns. In fact, it was during this phase that I noticed a compulsive spending habit I'd developed — small purchases I'd make impulsively during certain times or moods. Seeing the pattern laid out in the spreadsheet helped me recognize it, and eventually, I managed to eliminate it.

But as time went on, I started wanting more. I wanted better visualization of my spending trends. I wanted to categorize transactions more systematically. I wanted automation. Most importantly, I wanted something purpose-built for financial tracking — something more powerful than a spreadsheet could offer.

Discovering Firefly III

So, I did my research. I wanted something free or open-source, flexible enough to use anywhere, and secure enough that I'd still own my financial data. My search led me to discussions on the r/selfhosted subreddit, and one name kept popping up: Firefly III.

I looked at other options too — Actual Budget was a strong contender — but Firefly III had better recommendations across multiple forums and ticked all my boxes: self-hosted, comprehensive income and expense tracking, and the possibility of automation. The fact that it's open-source meant I could host it myself and maintain complete control over my financial data.

I decided to give it a try and set it up in my homelab as an experiment. Running it as a Docker container made the installation straightforward (you can find the official installation documentation here). It didn't take long before I fully adopted it.

What Makes Firefly III Different

Screenshot from 2025-11-08 03-00-54-1.png

Firefly III isn't just a digital replacement for a spreadsheet — it's a complete financial management system. Here are some of the features that made me switch:

Accounts and Asset Management: You can set up multiple accounts and track your net worth across all of them. It supports different account types including expense accounts, revenue accounts, and even cash accounts.

Budgets and Categories: Unlike my simple spreadsheet, Firefly III lets me set monthly budgets for different categories and see at a glance how much I've spent versus what I planned. The visual feedback is incredibly helpful for staying on track.

Screenshot from 2025-11-08 03-22-44.png

Bills and Recurring Transactions: I can set up recurring bills and Firefly III will track when they're due and whether they've been paid. No more missed payments or late fees.

Reports and Insights: The reporting features are where Firefly III really shines. I can generate detailed reports showing spending trends over time, income versus expenses, category breakdowns, and much more. The visualizations make it easy to spot patterns that would be invisible in a spreadsheet.

Screenshot from 2025-11-08 03-25-37.png

Screenshot from 2025-11-08 03-33-47-1.png

Rules and Automation: This is the feature that transformed my tracking experience. Firefly III allows you to create rules that automatically categorize and tag transactions based on descriptions or amounts.

Automating M-Pesa Transactions

Since I primarily use M-Pesa for transactions, I wanted a way to automatically capture those transactions without manual entry. The solution? I built a simple Android app that reads M-Pesa SMS notifications as they arrive and sends them directly to my Firefly III instance via its REST API.

Here's how it works: Every time I make an M-Pesa transaction, my phone receives an SMS confirmation. My app intercepts that SMS, parses the transaction details (amount, recipient/sender, transaction cost, time), and creates a transaction in Firefly III automatically.

The clever part is that I intentionally leave these automated transactions uncategorized. Every evening (or a couple of days), I take a few minutes to review the day's transactions, categorize them properly, and assign them to the appropriate budgets. This gives me the best of both worlds: the convenience of automatic recording and the awareness that comes from manual review.

This approach addresses what I've found to be the biggest challenge with financial tracking: the repetitive nature of data entry. When I first started sharing my Firefly III instance with friends, their feedback was overwhelmingly positive. The only critique — and it's a fair one — was the time and effort required to record every transaction daily.

I see this as both a challenge and a feature. Yes, it takes time. But that time investment is precisely what creates awareness. The act of reviewing and categorizing each transaction forces you to confront your spending decisions. You can't ignore that impulse purchase when you have to manually file it under "Unnecessary Expenses" at the end of the day.

The Results

It's been almost two years since I started using Firefly III in February 2024, and I can confidently say it's become an essential tool for me. The progression from counter book to spreadsheet to Firefly III mirrors my own financial growth — from a broke college student barely tracking bus fare, to someone managing multiple income streams, investments, and budgets with precision.

The insights I've gained have been invaluable. Beyond just knowing where my money goes, I can now forecast my financial position months in advance, identify areas where I'm overspending, and make informed decisions about investments and savings. The data doesn't lie, and having years of financial history at my fingertips has made me significantly more financially literate.

Try It Yourself

If you've been thinking about taking your financial tracking more seriously, I'd encourage you to give Firefly III a try. It's free, it's powerful, and unlike many financial apps, you maintain complete ownership of your data.

For those interested in experimenting without the technical hassle of self-hosting, I'm opening up my own instance for others to use. You can register and start tracking your finances right away. A few important notes:

  • This is offered as-is, without warranties or liabilities
  • Capacity is limited to what my servers can handle
  • If we reach capacity, I may need to disable new registrations temporarily
  • If there's enough interest and people are willing to contribute toward hosting costs, I'd be happy to migrate to a cloud provider with better scalability

The goal isn't to build a business — it's to make this powerful tool accessible to anyone who wants to take control of their finances.

Whether you use my instance, host your own, or stick with a simple spreadsheet, the most important thing is that you start tracking. As Darren Hardy wrote, "You can't manage what you don't measure." That simple truth, which I first encountered as a broke college student, has shaped my financial life ever since.

And the best part? Once you build the habit of tracking, everything else — the savings, the investments, the financial peace of mind — follows naturally.


Interested in trying Firefly III? Try it out here or visit the official Firefly III website to learn more about self-hosting.