The Friendliest Freelancer #7: What should your hourly rate be?


This week, I’ll start by talking about ways to figure out what you should charge per hour, only to end up waffling a bit about “what is valuable in life?”

(Spoiler: My goals are slightly different from those of Conan the Barbarian.)

Anyway. I write about hourly billing here because that is how I operate. You could pursue other pricing models (fixed price, value pricing, etc.)— we’ll visit those later and look into the tradeoffs. But that’s for another day!

You’ll also notice I encourage you to build a spreadsheet to model the numbers for your own (potential or current) freelancing business.

I have my spreadsheet for this, which I’ve chipped away on for over seven years. Maybe I should extract a general template you can build on yourself—would this be useful? Feel free to reply to this email and let me know!

I hope you have a great Sunday; see you next week! ☕

“When I start working for clients, what should my rate be?”: easily one of the most common questions I see from developers thinking about making the jump.

I stressed out over this myself in the beginning. “Please tell me there is a standard algorithm to figure this out!”

I’ve seen a bunch of different answers. Some are less helpful than others—“Just charge the maximum amount the market is willing to pay!”

It would be best if you approached this from multiple angles. Let’s look at how you can explore (and play with) your hourly rate.

A few key numbers to begin with

Minimum salary: Figure out what your minimum annual wage is. What would you need just to cover your average expenses? Map this back into an hourly rate: your absolute minimum floor. You will then at least know you should refuse anything that comes in below this number (unless you’re genuinely desperate).

Cover your current level: This one’s helpful if you’re still a salaried employee with a comfortable lifestyle. If you start for yourself, what rate would you need to charge to match your current salary?

Aspirational salary: If your primary motivation is to earn more than you currently do with your employer, figure out the target salary that would make contracting or consulting worth it for you.

Research the local rate range. Find other freelancers, contractors, and consultants in your local area—it’s a good idea to network with peers for mutual support, referrals, and advice. Try to get some data on what others in your area are charging. You are looking for realistic lower and higher bounds and median or average rates. Disregard extreme outliers in either direction. Find the rate range you are likely to be able to hit for your first contract.

Converting a target salary into an hourly rate

Here’s a simplified paper napkin calculation to convert a salary into the required hourly rate—for a long-term, full-time contract.

Take the target annual salary, divide by 10-12 (months worked per year), divide by 4 (weeks per month), divide by 35 (average hours invoiced per week, taking a few hours away for overhead/margin). Then multiply with 1.5 to cover company expenses, taxes, insurance, and other overhead.

Do you want to pay yourself 100,000 USD per year? (100,000 / 11 / 4 / 35)*1.5 => roughly 100 USD per hour

However, I encourage you to be more precise. Local and personal circumstances can shift the numbers significantly. Let’s drill down:

Overheads and expenses. When you work for yourself, you are a corporation with one employee. Corporations can have very different overheads depending on your region.

Health insurance will likely be a costly, annoying factor if you’re in the United States. Then there’s employment tax and retirement savings. You probably also want liability insurance, a few software subscriptions, a decent laptop every few years, and some occasional help from an accountant. Maybe you need to pay for access to a good coworking space.

How much client work will you do? Consider how much you want to work on average each day, each week, for how many months a year.

Forty hours of invoiceable work every week year-round may be unrealistic. How much actual invoiceable work will you do on average? How much time will you spend networking, skill-building, and side projects? Do you have a family to take care of?

Once you get a better grip on these numbers, you can be more precise than our initial calculation. I recommend you use a spreadsheet to play with the variables.

Using your hourly rate as a tool

Your hourly rate is not one static number after you get started, either. You can use it actively as a tool in multiple ways.

Crank up to filter out less exciting leads. Let’s say there’s a project that uses technology you don’t like. Or maybe they ask for many on-site hours, possibly with awkward commuting. Make it worth it for you: ask for a higher rate for these.

Adjust down if the project is worth it. If a client sounds particularly interesting or strategic, lower your rate if needed. Maybe it’s a government project for a cause that interests you. Or perhaps the project is an excellent way to build your credibility in a new technology? (Think of it as a kind of penetration pricing.)

Adjust to demand. Sometimes, the whole tech sector is down in your area: when there are fewer leads, you may need to lower your standard rate. When the market is up, everyone needs helping hands: charge more.

What do you want in life?

“Aren’t you complicating things? I want to charge as much as possible!”

If I wanted to maximize my salary, I would have become an Oracle or SAP consultant. No disrespect to people working in those platforms and sectors—it’s just not my jam!

The main reason I started working for myself was to control more variables in my working life rather than having an employer do it for me.

Employers can get cranky if you hit them with: “After this project, I’m off to recharge and hack on a side project for a few weeks. Later!” I also wanted the ability to tweak these variables whenever I wanted—without switching employers or asking a middle manager for permission.

I optimize for the following:

1: Will I look forward to work on most Mondays?

2: Do I have enough margins in my daily life?

I could crank up my hours and optimize exclusively for higher-paying contracts, but that wouldn’t fit my personality or family life. Your goals may be very different!

Think it through carefully. What is each variable worth to you?

Then, tune your numbers accordingly. Your minimum or target hourly rate follows from that.


Unsubscribe · Preferences

Thomas Kjeldahl Nilsson

Software dev of 20+ years now helping other devs gain autonomy and become calm, independent contractors—new issue every other Sunday

Read more from Thomas Kjeldahl Nilsson

A concern I regularly hear from software developers who want to try contracting/consulting: the marketing and sales bits can feel foreign and scary. One book in particular helped demystify sales so I could relax a bit—more on that below. Until next time, have a great week! ☕ “I'm talking to potential clients and I need to land a contract with one of them soon. Oh no: do I have to learn about sales now?” I’m not a sales expert. Most of my clients have been long-term, and I haven’t had to close...

First, some housekeeping: I’ll make this newsletter bi-weekly for a while. Does bi-weekly actually mean “every other week”, or“two times a week”? 🙂 In this case, it’s the former one: I’m dialing the pace down a bit to keep it sustainable. I’d like to return to a weekly rhythm again later, though! Okay, with that out of the way, on to this week's topic. Many software developers experience impostor syndrome, and it’s extra frustrating when you’re working as an independent contractor/consultant....

How do you get started? This week, we’ll go through the concrete steps you likely need to take after you decide to try contracting/consulting—this is the initial step-by-step guide I wish I had back when I decided I’d had enough of being an employee. As always, I wish you a great week! ☕ “OK, I think freelancing software development is right for me. What steps should I take to get there?” I’ve laid out the most important steps below. Note that some details may change slightly depending on...