Uzhunnu vada/ഉഴുന്ന് വട is a popular South Indian snack (like fritters) made from black gram (Vigna mungo).

An uzhunnu vada (UV) profitable™ business makes just enough money for the founder to pay for an evening tea and vada. It is technically profitable but unsustainable.

This article is about a project I built and open sourced three years ago called NSFW Filter and our journey to make it UV profitable.

What’s NSFW Filter?

Before examining UV profitability, let me give you some context on how I built NSFW Filter.

I was in-between jobs and had a lot of free time to hack things together back in 2020.

NSFW Filter was a weekend project I built during this time to learn how TensorFlow.js worked.

It was a simple browser extension that used a deep learning model to filter out NSFW images from web pages.

From github.com/nsfw-filter/nsfw-filter
NSFW Filter in action

From github.com/nsfw-filter/nsfw-filter

The first release was hacky and had a lot of performance issues, but I published it to Chrome and Firefox extension stores. And surprisingly, people started using it.

Having people use something you built is always fun. I spent more effort improving and promoting the project, gaining a lot more users.

But more users meant more demand for new features and improvements to existing ones.

I also had a contributor join in to help with the project. He is a maintainer of the project now.

Making Money

Soon, I was spending all my time working on the project, and it was starting to become unsustainable as I did not have a job or the time to look for a job.

I initially had the drive to work on the project, but it did not last, which meant creating a business (paid version with a better model and more features?) around the project was a bad idea.

The project being moderately successful (front page of Hacker News successful), also attracted a lot of offers to buy the project.

Being an open source absolutist, I rejected all these offers and set up sponsorships to cover the running costs ($5 for registration and $15/year for the domain) and for users to show interest in the project.

Even after almost three years and little development, two people still sponsor the project monthly on Patreon. And the project is UV profitable.

Reaching UV Profitability

Over the past three years, 12 people have pledged to sponsor NSFW Filter. Six of them have actually done it.

Data from Patreon
Six people has sponsored $269.87 in total

Data from Patreon

Some patrons pledge a small sum monthly, while others make a substantial one-time pledge.

Data from Patreon
Monthly earnings since October 2020 after platform fees

Data from Patreon

The project has earned $269.87 to date after platform fees. It continues to earn $8.30 on average per month.

A better way to visualize this is in terms of uzhunnu vadas.

Assuming an uzhunnu vada costs ₹10 ($0.12), $269 could get you 2241 and a half uzhunnu vadas—or one uzhunnu vada per six users.

Made with NumPy and OpenCV
2250 uzhunnu vadas

Made with NumPy and OpenCV

At $7 ($8.30 - $1.30 for running costs) a month, I can get 58 uzhunnu vadas or 14 and a half uzhunnu vadas per week (one uzhunnu vada per 157 weekly users).

Made with NumPy and OpenCV
14 and a half uzhunnu vadas

Made with NumPy and OpenCV

If I start drinking tea again, it would cost me ₹20 ($0.24) for a vada and tea. So $7 monthly could get me at least seven vada + tea sets sorting me out all week.

Made with NumPy and OpenCV
Seven vada + tea sets for each day of the week

Made with NumPy and OpenCV

i.e., We have achieved UV profitability.

What Does This Mean?

This doesn’t mean anything. I was bored on the weekend and saw a pull request to the NSFW Filter repo that made me think of the project and write about it in the silliest way possible.

This also means something.

Thousands of open source projects with small user bases like NSFW Filter might never become a profitable business or have enough sponsorship for the maintainers to work on it full-time.

I’m fortunate to have a full-time job where I get paid to work on open source projects. I can live sustainably and don’t have to rely on sponsorships for my personal open source projects.

But most open source maintainers don’t make any money at all from their open source work.

This is where you and I can come in to support open source projects and maintainers as users of open source software.

Even if you can’t support them financially, you can still make a difference by contributing to the project through code, docs, tests, feedback, bug reports, or countless other ways.

Me eating a vada

My co-maintainer and I currently fund NSFW Filter. We haven’t taken any money out of our Patreon account, and we plan to utilize this money to support open source projects/maintainers.

I also want to clarify that I’m not the man from a hypothetical South Indian-specific mathematics textbook who goes around buying all the uzhunnu vadas money can buy.