How to calculate your side project's real hourly rate
Revenue alone won't tell you. How to get the real $/hour per project — the invisible-time trap (support, infra, calls), rate bands, and why your biggest earner is your worst rate.
Most people running side projects know their MRR by heart. Almost nobody knows their hourly rate — what they actually make per hour spent earning it. Revenue is scattered across five dashboards and time lives in your head, so the calculation never happens. It’s simple.
The formula
rate = revenue ÷ hours spent — but per project, not in aggregate. Pick a window (a month works), and compute it separately for each project. A blended average hides which project is eating your time.
What counts as revenue
Everything that project earned in the window. Add up the scattered sources.
- Apps: App Store + Google Play purchases
- Ad revenue: AdMob
- SaaS / subscriptions: Stripe, LemonSqueezy, Polar
Look at one source only and you understate the project.
What counts as hours — this is the trap
Most people count only the visible work: coding, design, marketing. The invisible work quietly drags the rate down.
- Support and customer replies
- Infra, deploys, bug hunts
- The "quick" customer call that ate an afternoon
How to read the rate
The bands horog uses (not gospel — just a quick signal):
- $30/hr+ — good. A candidate for more time
- $15–30/hr — normal
- $5–15/hr — low. Worth asking why
- Under $5/hr — warning. A signal to cut or change hard
Why your biggest earner is your worst rate
Run the numbers and the revenue ranking is often the reverse of the rate ranking. For example:
- Paid templates — $2,000 / 500 hrs = $4/hr (top revenue, worst rate)
- My side app — $1,136 / 40 hrs = $28.40/hr (second on revenue, first on rate)
By revenue you’d pour more time into templates. By rate the answer flips. Whether to scale or shut shows up in the rate, not the revenue.