The Freelancer's Dilemma: When to Build vs. When to Bill

← back

February 22, 2026

By Rohan Kiratsata

Every hour I spend on a side project is an hour I'm not billing. At my rate, that's real money disappearing. And yet I keep building things that will never make a dollar.

This is the core tension of freelancing. You need to bill to survive, but you need to build to grow. Get the balance wrong and you either burn out or stagnate.

I've been freelancing for three years now and I've gotten this wrong in basically every direction. Built too much, billed too little, watched my savings drain while I worked on "important" projects that never shipped. Then overcorrected, billed everything, stopped learning, started feeling like a code monkey instead of an engineer.

Here's where I've landed.

The math is simple but uncomfortable. Say you bill $75/hour. A side project that takes 40 hours costs you $3,000 in unbilled time. That's rent. So the project needs to either make you more than that, save you more than 40 hours of future work, or open doors that wouldn't open otherwise. Most side projects do none of these things. They're just interesting. And interesting is expensive.

I've gotten ruthless about what I build now. Tools that speed up client work make the cut, things like a component library that matches how I structure projects. Took 20 hours upfront, saves me maybe 5 hours per project. After four clients it's paid for itself. Portfolio pieces that actually land work, not generic tutorial projects but specific polished things that show exactly what clients pay me for. One good portfolio piece has landed me more work than months of cold outreach ever did.

What I stopped building is the startup ideas, the SaaS dreams, the "wouldn't it be cool if" projects. They're not bad ideas. They're just expensive distractions when you're trying to pay rent.

There's an exception though. Sometimes the math flips. If you're burned out on client work, taking a week to build something fun might save your sanity. Sanity has value. Don't optimize yourself into misery. And sometimes a useless project teaches you something you didn't know you needed. I built a dumb automation script last year that led to a whole new service offering. Couldn't have planned that.

The point isn't to never build anything speculative. It's to be honest about what you're doing. If it's exploration, call it exploration. Don't pretend it's strategic when it's really just procrastination wearing a hoodie.

When I'm considering a new project now I ask four questions. What's the real cost, hours times rate, be honest. What's the realistic upside, not the dream scenario, the likely one. Is there a faster path to the same outcome, sometimes you can buy a tool instead of building it. And am I avoiding something, because side projects are great for dodging uncomfortable client conversations.

If it still makes sense after those questions, I build it. If not, I get back to billing.

The deeper thing I've realized is that the dilemma isn't really about math. It's about identity. Building things feels like being a real developer. Billing hours feels like being a contractor. Most of us got into this because we wanted to build, not invoice.

But you earn the right to build by being good at billing first. Get the business stable, then you have room to play. Try to skip that step and you end up broke, stressed, and building things nobody will ever see.

Bill first. Build with what's left.