How I've made $50,000 Profit from a Side Project Anonymous Slack Bot

 
Abot for Slack passive income and profit is represented by a plant Photo by Михаил Павленко on Unsplash

My side project, Slack app Abot, has recently crossed a milestone of $50,000 in total profit. For the last two years, it has been running mostly on autopilot. In this post, I describe how I operate a profitable SAAS as a solo founder and how passive income has affected my career.

Current MRR and usage stats

Abot total profit after 5+ years

Total Abot profit so far


Abot is a highly customizable Slack plugin for sending anonymous messages and polls. I released the first version in May 2017 as a free-to-use weekend project. It received initial commercial traction in the March of 2018 after getting featured on HackerNews. I’ve since introduced subscription-based pricing and kept adding new features apart from working a full-time job. You can check out these two posts for more details about the app’s origin and its road to crossing $10k total profit.

Just before Covid hit, I decided to quit my job and take a few months off. At that time, Abot monthly recurring revenue (MRR) was ~$1.5k, so not quite enough to make a comfortable living. But, pandemics and the remote working revolution did impact the demand for communication-enhancing tools. Within a few months, after we all got locked up, the MRR almost doubled, thus reaching the ramen profitability.

Current MRR of my Slack bot

Can you spot the start of pandemics on this MRR chart?


MRR recently declined from 5k to 4k USD. But, this metric includes yearly plans, so the actual monthly transfers from Paddle.com oscillate between 3k-6k USD.

Here’s a profit distribution per subscription plan:

Abot profit per plan type

The chart does not include profit for teams with over 500 users


So far, the app has been installed by over 5k Slack teams and is featured in Slack brilliant bots category. It has close to 100 paying Slack teams, ranging from 10 to over 4k users, and a similar number of free-of-charge teams. Since the start of Covid, I offer free plans for education purposes, and Abot is now used in classes at universities across the globe.

Memoirs of a solo founder

Being a solo founder is a double-edged sword. My productivity is often off the charts compared to when I’ve worked in a team. I know the codebase by heart, I don’t have to consult requirements or write tickets. No standup calls… Communication overhead is always a significant portion of software development. Working alone, you skip it entirely. The fun of just coding without all the formalities has always dragged me to spend way too much time on my side projects.

But, I’ve missed out on obvious improvements that would have been spotted much earlier if the project had a co-founder. It’s hard to keep a fresh perspective when you’ve worked on the same app for so long.

What helps me are demo calls for potential clients. Instead of doing the demo myself, I’ve started asking clients to show me how they’re trying to use the app. It’s extremely frustrating (“Just click THERE…“). But, a single reversed-demo call allowed me to understand how cumbersome was app’s messaging UX. As a result, I’ve recently released significant fixes to how the app works that seem so obvious now. I’ve completed the Y Combinator Startup School course, and they’ve repeated “Talk to your clients…“ like a mantra. I thought I was by doing a few demo calls each month. But, only actually seeing the potential client trying to use the app was an eye-opening experience.

As a solo founder, another tool that works for me is so-called mastermind groups. It’s a formula for regular peer-to-peer mentoring sessions between founders of different projects. For me, it’s two distinct groups of 3 to 5 members, meeting for hour-long monthly sessions. My mom and girlfriend are proud of each release that I tell them about. But, confronting your ideas with someone who’s also a builder often produces invaluable feedback.

The impact of passive income

$4k MRR is not even enough to hire a full-time dev to work on a project. And it took over five years to get there. For most startups, similar results would probably be a total failure and lights out. But, Abot is an indie project, so the math plays out differently.

After I quit my job, the passive income allowed me to focus on building my Rails performance consulting offer, writing my first eBook and exploring the area of web3 development. It took over a year of focused effort for my Rails audits to turn into a predictable stream of revenue. Without the passive income generated by Abot I’d have to give up and go back to working 9-5. Instead of being an end goal in itself, Abot served as a launch pad for a career path that would otherwise never be possible.

If you have ever considered making a transiting to working as a consultant, I highly recommend Hourly Billing is Nuts by Jonathan Stark.

Putting things on autopilot

Abot is sitting on AWS, and the monthly cost of EC2, RDS, and Cloudflare are ~$50. Required time involvement for occasional demo calls, invoicing, security updates, and housekeeping is around 5 hours a month. Many of the improvements I’ve released in the last two years were not user-facing but rather about making the project more self-sustainable.

Abot is making a profit, so you might be wondering why did I stop investing more time into it?

For over a year after I quit my last full-time job, I spent tens of hours each month on growth hacking. Elaborate SEO research, reaching out to bloggers, Product Hunt releases, I even hired a marketing agency… The measurable impact in the number of signups and conversion rate was close to nothing.

Abot codebase is relatively easy to work with. In theory, I could bombard the app with new features. But, since the beginning, I’ve used a simple filter on which requested features to add. If a potential client suggested a “nice to have” change, I would implement it if they purchase yearly access on a promise to deliver this improvement. The app is already significantly complex, with elaborate customization options. But, thanks to this simple rule, I’m sure that each of these buttons and dials delivers value to at least a single paying customer.

Overcomplicating the app and making it impossible for a regular client to understand is just too easy.

So the project’s current status is that I’m out of ideas on how to boost its growth. I’d even risk saying that it is now feature complete. But, so I thought about the first version that I hacked over the weekend. And here we are, over 2k commits later.

Abot git commits after 5+ years

Summary

When I started Abot those five years ago, I never thought it would make any money. I was just sick of pointless meetings, and it was my over-engineered way to say it.

I’ve released a dozen commercial side projects. Most of them suck up hundreds of hours, made a few dollars and died out. But every $ they made has always felt different than my 9-5 salary. Abot is the only one that kind of made it. 50k profit might seem like a lot. But if you divide it by the nolife after work hours I’ve spent to generate this “passive” income, you’d hardly get a junior dev hourly rate. But it’s fun.



Back to index