← Back to Explore
AW

Tailwind CSS / Tailwind UI

How a Side Project CSS Framework Became a $4M+/Year Business That Changed How Developers Write Styles

2017 · Developer Tools / Open Source

Adam Wathan

Founder, Tailwind CSS / Tailwind UI

$350K

REVENUE/MO

5

EMPLOYEES

$0

STARTUP COSTS

KEY TAKEAWAYS

  • Info products can fund the leap to bigger things — Adam's book and courses generated over $1.3M, giving him the financial runway and confidence to go full-time on Tailwind CSS.
  • Open source creates commercial opportunities if you play the long game — Tailwind CSS was free, but the ecosystem it created made Tailwind UI an obvious paid product.
  • Technical opinions can be business advantages — Tailwind's utility-first approach was controversial, but strong opinions attract passionate users who become evangelists.
  • A competitor's misstep can be your origin story — Tailwind CSS started because Bootstrap switched from Less to Sass, pushing Adam to rethink CSS from scratch.
  • Launch day revenue is proportional to audience trust — $500K on day one of Tailwind UI was only possible because of years of free value through the open source framework.

Hello! Who are you and what are you working on?

Adam Wathan's path to building a multi-million-dollar business around CSS started, oddly enough, with a book about testing. In 2016, Adam was a developer in Canada working on a technical book. When it launched, the book did $61,000 in its first week. For most developers, that would be a nice bonus — extra money to pay down a mortgage or fund a vacation. For Adam, it was something more fundamental: proof that his audience trusted him enough to pay for his expertise.

That $61,000 first week gave Adam the courage to leave his job. Not immediately, and not recklessly, but it shifted something in his mind. If he could generate that kind of revenue from a book, what else was possible?

He followed the book with online courses. A course on test-driven development with Laravel generated over $1 million in sales. Another course on Vue.js added roughly $300,000. These weren't passive income streams — they required significant effort to create and market. But they demonstrated something important: Adam had built an audience that would pay premium prices for high-quality technical education. More importantly, the revenue from these products gave him financial runway. He wasn't living paycheck to paycheck. He had a cushion that would allow him to take bigger swings.

The origin of Tailwind CSS is one of those stories that reminds you how much of entrepreneurship is driven by frustration rather than inspiration. Adam had been using Bootstrap, the dominant CSS framework, for his projects. Bootstrap used Less as its CSS preprocessor, which Adam liked. Then Bootstrap announced it was switching from Less to Sass. It sounds like a minor technical detail — and in some ways it is — but for Adam, it was the nudge that pushed him to reconsider the entire approach to writing CSS.

Instead of just switching to Sass and moving on, Adam started questioning the fundamental assumptions behind CSS frameworks. Why do we organize styles around components? Why do we write custom class names for everything? What if, instead, we used small, single-purpose utility classes that could be composed together to build any design? The approach was called utility-first CSS, and while Adam didn't invent the concept, he was about to become its most influential advocate.

Adam built Tailwind CSS and released it as an open source project in late 2017. The initial response was polarizing. Traditional CSS developers found the approach ugly — markup littered with dozens of small class names felt wrong to people trained on semantic CSS. But a growing number of developers tried it and had a revelation: utility-first CSS was incredibly productive. Once you got past the initial discomfort, you could build interfaces faster than ever before without constantly switching between HTML and CSS files.

The controversy was actually good for the project. Strong opinions generate strong reactions, and strong reactions generate attention. People wrote blog posts arguing for and against Tailwind. Twitter debates erupted regularly. Conference talks were given. All of this kept Tailwind in the conversation and drove developers to try it for themselves. And most developers who tried it became converts.

The community grew rapidly. Tailwind's documentation was exceptional — clear, comprehensive, and full of examples. Adam treated the docs as a product in their own right, understanding that great documentation is one of the biggest competitive advantages an open source project can have. Developers could go from zero to productive with Tailwind faster than with any competing framework.

By January 2019, Adam made the decision to go full-time on Tailwind. This was a significant leap, but it was a calculated one. The info product revenue from his book and courses had given him substantial savings. The community around Tailwind was growing fast enough to suggest that a commercial opportunity was emerging. And crucially, Adam had an idea for what that commercial product could be.

Tailwind UI launched in February 2020. It was a collection of professionally designed, production-ready UI components built with Tailwind CSS. Think of it as a component library — navigation bars, forms, dashboards, marketing sections, e-commerce layouts — all beautifully designed, all using Tailwind classes, all ready to copy and paste into your project. Developers could purchase access and immediately have hundreds of polished components at their fingertips.

The launch was extraordinary. Tailwind UI generated $500,000 in revenue on its first day. Half a million dollars. In a single day. For a product built by a small team selling to developers. Within five months, revenue hit $2 million. Within two years, the business was generating over $4 million annually.

Those numbers are staggering, but they make perfect sense when you understand the flywheel Adam had built. Tailwind CSS (free, open source) attracted millions of developers. Those developers built projects with Tailwind and needed well-designed components. Tailwind UI (paid, commercial) provided exactly that. Every new Tailwind CSS user was a potential Tailwind UI customer. The open source project was the world's best marketing channel for the commercial product.

The team remained small — around five to ten people, including Adam. They focused on product quality rather than sales or marketing. The open source community did the marketing for them. Every developer who recommended Tailwind CSS to a colleague was indirectly marketing Tailwind UI. Every blog post, every YouTube tutorial, every conference talk about Tailwind expanded the potential customer base.

Adam's approach to building the business reflects a broader principle about open source commercialization. The open source project must be genuinely valuable on its own — you can't hold back essential features to force people into paying. Tailwind CSS is fully featured and completely free. Tailwind UI adds convenience and design quality on top of the free framework. People pay because it saves them time and produces better results, not because they're locked out of functionality.

What's particularly impressive about Adam's trajectory is how each phase built on the previous one. The book proved he could sell to developers. The courses proved he could sell at scale. Tailwind CSS proved he could build something developers would adopt widely. And Tailwind UI proved he could commercialize an open source community ethically and profitably. None of these steps were guaranteed, but each one reduced the risk of the next.

The financial progression tells the story clearly. First week of book sales: $61,000 — enough to imagine leaving his job. Course sales: over $1.3 million — enough to actually do it. Tailwind UI first day: $500,000 — enough to confirm that the open source play was the right bet. Two-year run rate: $4 million+ — enough to build a sustainable, profitable company that employs a small team and serves millions of developers.

For developers considering the entrepreneurial path, Adam's journey underscores the power of building an audience through genuine contribution. Every piece of free content, every open source contribution, every helpful answer in a Discord channel builds trust. And when you eventually offer something for sale, that trust converts at rates that no advertising campaign could match.

The Tailwind story also illustrates that you don't need a completely original idea to build a massive business. Utility-first CSS existed before Tailwind. CSS frameworks existed before Tailwind. What Adam brought was exceptional execution, beautiful documentation, strong opinions, and the patience to build a community before trying to monetize it. Sometimes the best businesses aren't built on novel ideas — they're built on doing familiar things far better than anyone else.

open-sourcedeveloper-toolscssbootstrappeddigital-productinfo-products

More founder stories, every week.

Explore All StoriesGet in Touch