Track Which Client Projects Are Actually Profitable

- Revenue and profitability are not the same thing. A $5,000 project that took 60 hours of your time is less profitable than a $2,000 project that took 10 hours.
- The metric that matters is your effective hourly rate per project. Calculate it once per project and track it over time. Patterns emerge fast.
- Once you know which project types are most profitable, you can stop taking the ones that drain time and double down on the ones that pay well for the hours they take.
Why revenue tracking misleads builders
A builder who closed $15,000 in revenue last month looks successful on paper. But if three of those projects ran over scope, one had a difficult client who required endless revisions, and two of them took twice as long as estimated, the real picture is different. Revenue does not tell you which projects made sense to take.
Profitability per project does. The formula is simple: project revenue divided by total hours spent equals your effective hourly rate on that project. When you track this across projects over a few months, you start seeing which project types, which client types, and which scopes actually pay what you think they do.
What to track per project
You only need five data points to track profitability per project: the client name or project code, the final billed amount, the total hours you invested (including calls, revisions, and admin), the project type (what kind of build it was), and any notable factors that inflated or compressed the time.
| Field | What it tracks | Why it matters |
|---|---|---|
| Project code | Which project | Deduplication and reference |
| Billed amount | Revenue | The numerator in the profit calculation |
| Total hours | Real time investment | Includes calls, revisions, scope creep |
| Project type | Category of build | Reveals which types are profitable |
| Flags | Scope creep, difficult client, underestimated complexity | Explains outliers |
The five fields that give you project profitability
Do not track estimated hours - track actual hours. The gap between estimate and actual is itself the most useful data you have. Projects that run significantly over estimate are the ones to interrogate: was the scope unclear, was the client difficult, or was the complexity higher than the project type typically is?
How I built my own tracking tool with Claude Code
I asked Claude Code to build me a simple local web app that lets me log a project, enter the hours and billing, and see a running table sorted by effective hourly rate. It took about 20 minutes and writes to a local JSON file. No database setup, no SaaS subscription.
The prompt I gave Claude Code: 'Build a simple project profitability tracker as a local web app. It should let me add a project with a name, billed amount, hours, and project type. It should show a table of all projects sorted by effective hourly rate (billed / hours) and a summary of average rate by project type. Store everything in a local JSON file.' That was it.
You do not need to build the tool if you do not want to. A spreadsheet with those five columns works fine and takes five minutes to set up. The point is to have the data - the format does not matter.
What the data tells you
After 10 to 15 logged projects, patterns emerge. Most builders find that one or two project types consistently outperform everything else on a per-hour basis. For me, automation builds and internal tools are significantly more profitable than custom UI-heavy projects. The complex UI work takes more iteration; the automation work is bounded and clear.
You also start seeing which client signals predict difficult projects. Clients who do not have a clear brief at the start, clients who want to see work before paying a deposit, and clients who negotiate heavily on price all tend to show up in the bottom half of my effective-rate table. The profitability data made something I suspected into something I could see.
Once you have the data, the move is straightforward: do more of the high-rate project types, price the low-rate ones higher or stop taking them, and build your positioning around the work that pays best. It is the simplest business optimization a builder can make.
Short, practical drops on offers, outreach, pricing, and closing clients with Claude Code. No spam, unsubscribe anytime.
Frequently asked
How do I count hours if I am working on multiple projects at once?
Log to the project in real time or immediately after each work session. A simple running note in a phone app works fine - you just need the total per project. If you work in 2-hour blocks, a rough block count at the end of the project is enough to see the pattern.
Should I include client calls in the hours tracked?
Yes. Client calls are a real cost of the project. A project that requires four 90-minute calls before you can start is a different profitability profile than one with a single 30-minute kickoff. Including calls in total hours gives you the true picture.
What is a good effective hourly rate to target?
That depends on your market positioning and cost structure, but as a benchmark, builders in the Claude Code Profit Room community who are actively growing typically aim to be above $150 effective per hour on most project types. Below $75 on a regular basis usually signals underpricing or scope creep problems worth fixing.
Where can I learn more about running a profitable Claude Code build business?
The Claude Code Profit Room is built around exactly this: pricing, scoping, and running builds that make real money. Join the community at claudecodeprofitroom.ai for $9/month.
Last reviewed August 3, 2026.

Co-founder of the Claude Code Profit Room. Went from shipping software to closing paying clients, and now teaches builders the selling half of the equation.
More from David Iya →

