DEV Community

Nuno
Nuno

Posted on

Why most freelancers undercharge (and the maths behind fixing it)

Most freelancers set their rate by looking at what others charge and picking something nearby. This feels safe. It also creates a systematic problem: you end up pricing based on what the market accepts, not what your business actually needs.

Here is the maths that most rate-setting advice skips.

The utilisation problem

If you work 40 hours a week, you are not billing 40 hours a week.

A realistic breakdown looks something like this:

  • Client calls and emails: 4-6 hours
  • Proposals and pitching: 3-5 hours
  • Admin, invoicing, accounting: 2-3 hours
  • Learning and keeping skills current: 2-4 hours

That leaves roughly 22-28 billable hours out of 40. Call it 55-65% utilisation.

A developer billing $40/hr with 20 real billable hours per week is effectively running a ~$40k/year business before taxes and downtime. That number tends to surprise people when they see it written out.

So if you want to earn $80,000 a year, you cannot divide by 2,000 hours and call it your rate. You need to divide by your actual billable hours.

$80,000 / 1,200 billable hours = $66.67/hr minimum

Before taxes. Before slow months. Before the occasional client who costs you two weeks of work and pays nothing.

The slow month multiplier

Freelance income is not linear. If you plan for 48 weeks of full utilisation and you actually get 38, your effective rate just dropped 21% below what you calculated.

The fix is to build slow months into your rate from the start, not to adjust when they happen.

A more conservative model:

  • Target: 46 billable weeks per year (not 52)
  • Utilisation: 60% of working hours
  • Effective billable hours: 46 x 40 x 0.60 = 1,104 hours

For an $80,000 annual target: $80,000 / 1,104 = $72.46/hr before tax

Add 25-30% for self-employment tax and the minimum viable rate is around $90-95/hr. Depending on your market and experience level, that number may feel impossibly high. That's exactly why so many freelancers end up overworked and underpaid — the maths doesn't change because the market is uncomfortable with it.

Why this matters for developers specifically

Frontend and backend developers are particularly prone to undercharging because the market has a wide range and clients often anchor to offshore rates.

That anchor is irrelevant to your cost structure. An offshore developer at $25/hr has different fixed costs, tax obligations, and market positioning. Comparing your rate to theirs is like a restaurant comparing its prices to street food in a different country.

Your rate is a function of your costs and your utilisation. Not of what someone else charges somewhere else.

A simple starting framework

  1. Calculate your target annual income (include savings, not just survival)
  2. Estimate your real billable hours (utilisation x working weeks x hours/week)
  3. Divide income by hours to get your pre-tax minimum
  4. Add your effective tax rate
  5. Add 15-20% as a buffer for slow months and difficult clients

That number is your floor. Anything below it usually means the business only works if you absorb the volatility yourself.

I got tired of doing this maths manually every time someone asked me about freelance pricing, so I built a small calculator for different roles: ratecalculator.xyz

No signup, no email, just the numbers.

Top comments (0)