There is an important distinction to be made between your professional worth and your professional price. Basically, being worth a certain value != being payed a certain sum.
I first made this connection when working my only “real job”. Employed by a consultancy firm I developed websites for clients and was payed what I thought was a decent salary. Until I found out how much we were charging our clients.
What my company earned from my work was many times that of what seeped into my own bank account each month. I realized that I was eating crumbs from the table.
Sure I was provided an awesome office with a comfortable chair, an endless supply of coffee, the occasional conference travels, etc. They also did all the non-development work: sold the clients, managed the projects, accounting and so on. But was this enough to close the gap?
Turns out; not by a long shot. My worth wasn’t matched by my price. So I packed up my things, said goodbye and started my own consulting firm.
During these last couple of years I have learned a lot about pricing my work and charging my clients. There have been quite a few hardbought lessons and there’s a lot I wish I knew when I started out.
I wanted to share this experience with my new colleagues out there, in hope that it’ll make life easier. So I compiled these fifteen points below and then reached out to a bunch of my consulting and freelancing friends for more. This is what I think is crucial information when starting out.
Change your glasses
The thing about worth is that it’s very subjective. You have to stop thinking “what can I charge my client?” and instead go “what value am I providing for this person?”.
What I charge my clients today might be lucrative to them, because they can turn it around and make even more money from what I provide. Were I to offer the same deal to a random guy on the street they would probably look at me like I’m crazy — my craft just isn’t worth that kind of money for most people.
It’s my job to find the ones where I can provide the highest value and then charge accordingly.
Determine the risk taker
You provide a service and your client is looking to profit from it. If they didn’t think they could earn back more than what you’re charging, why the hell would they pay you?
So they are looking at a potential higher reward than you. With this fact in mind it only makes sense your client also takes the higher risk in the project. Risk and reward goes hand in hand.
Software projects are notoriously uncertain things and for a lot of clients this is of course very scary, so they demand a fixed price for the project. It might sound reasonable — this is how we pay for most of our everyday services — but you need to realize that this effectively shifts the risk to yourself.
Higher risk and lower potential reward is not a good deal. When clients demand this price model it’s a bad, bad sign. Take my advice and walk away. There are better clients for you out there.
Handle worst case as friends
There’s a high probability your estimates won’t be 100% accurate (which is why we call it estimates) and in the majority of these cases you will land above the mark. How do you handle that?
Do you keep working for free? Do they continue to pay until it’s done? Maybe you split the cost? Or do you scope out unnecessary features?
Ultimately you need to decide on this together with your client and I highly recommend doing so before potential shit hits the proverbial fan.
Calculate your minimum price
Say you charge $100 per hour. Times 8 hours a day, times five days a week, times four weeks a month. Holy fuck — you’ll be making $16000 per month!
If only life was this easy. Take that $16000/month and deduct: hardware upgrades/replacement, books and courses for education, conference tickets and travels, leave of sickness, occasional vacation, unpayed administrative tasks, marketing, taxes, pension, etc. And this doesn’t even include unforseen expenses, nor the fact that you won’t always have payed work.
Do yourself a favour and count from backwards how much money you need to survive. Rent, food, broadband, phone, travels, etc. Add pension savings, marketing and other necessary expenses. Now multiply this by your local taxes.
If you sell your time for less than this minimum price, keep in mind that you need to decide what expense to skip.
Determine your comfortable price
No one enjoys living on a existential minimum for very long. With that in place though, you can start thinking about existential comfortability. What does it take for you to not only survive but to thrive and live life fully?
Sit down and actually do the exercise. Get a concrete number — “this is what I want to make”. It’s much, much easier to reach a defined goal than something vague.
Realize your worth
Just starting out, it can be daunting to ask someone to pay you what sounds like a lot of money. But again, look at it from the other side.
There’s A LOT of work out there for someone who can make a computer do their bidding and in contrast there’s too few developers to meet this demand. Your skills are highly sought after and if someone doesn’t want to pay your price, there are plenty of others who will.
Check your competition
If you feel uncertain about your price it can help to know where you stand in relation to other developers. These are what potential clients will compare you to.
What I did when I first started my business was I called to maybe ten bureaus in my city and pretended to be a client. I presented them with a very simple projekt, building a company blog or somesuch, and asked for their price and time plan.
Knowing the lay of the land helped my confidence a great deal when later approaching clients.
Don’t wait for it
You are selling your time and if you deliver on that, with expected quality, it’s not more than right that your client deliver on their end as well — paying you.
Make it a habit to send invoices the first thing every month, for work done previous month. I still struggle with this myself sometimes, thinking I will just add another day or two to complete what I’m working on and then invoice for everything. But more often than not it just leads to me being payed later than I would have to be.
Monthly invoices also helps mitigate some risk with long running projects (especially if you don’t know it’ll be one from the start), where you naturally break it down into manageable size.
Starting out, it’s hard knowing what price you can charge, so you just have to take a guess and run with it. Most likely you’ll guess way too low. But it’s fixable over time!
If your client agrees to your price it means someone thinks you’re worth AT LEAST that number. So for the next client try adding $5 or so to the hourly price. If you still don’t get thrown out of the room — rinse and repeat.
Over time your income will increase and you will naturally get rid of the cheap clients, which often also are the most troublesome ones. Why would you agree to an old, lower price when your new clients pays you the double?
Go high or go home
Ever so often you will be asked to do a project which doesn’t sound too fun. These are golden opportunities!
If you don’t want to do it, think about a number that would sway that opinion. Maybe you would want twice your hourly price? Go for it. Worse case scenario they will refuse your offer and you’ll get off the hook for the shitty project. Best case you’ll have a new, very nice reference point for pricing your time.
Be careful though! Starting to take on too many projects just for the money will slowly chip away at your soul and ruin what could otherwise be the most awesome profession in the world.
Charge for your time
When I started charging for my time I would note down the time I went to get coffee or to the toilet. I would deduct minutes after having a spontaneous chat with a colleague. Because it wasn’t directly work I felt bad charging for that time.
But where do you draw a line? Do you only charge for when you write code? When your thoughts flies off to the upcoming dinner? It’s hard and no one is expecting you to count your time in this fashion. So don’t do it.
Of course you should be completely honest and not go play games on the clock. Just be a professional. Start the clock when your business hours start and stop it when they stop.
Touch base often
If you’ve been fervently hacking away for a month and managed to rack up a sizable bill, it can feel hard to surprise your client with the monthly invoice. Nip this in the bud by continously reporting your time and progress.
This has the added benefit of making the client co-responsible for keeping the budget and steering the project, which in the end will make them happier and the project more likely to succeed.
It’s better to be helpful and completely transparent, and charging for it, than to sweep problems under the rug and avoid dealing with it because you’ve run out of time and funds.
- Hannes Lilljequist of SthlmConnection
If your base hourly price is factoring in having to do sales and not being 100% booked, you need to also be prepared to factor them out when taking on longer projects. Dropping 30-40% is not uncommon for contracts that stretches over six months or longer.
And it’s worth it. You’ll be able to get to know the clients problems and deliver better solutions and you can often specialize and dig deep into interesting technology. All while raking in chunks of cash without having to do anything but your actual profession.
If you’re going to meet a big client, they will undoubtedly want to haggle. Just add ~15% to your initial price and you will have given yourself some room to drop.
With bigger companies the negotiator isn’t the person paying the bill. So let them cut through your 15% to show their manager and you will both be happy.
Break a nail
Definitely stand up for yourself and charge a decent price. But don’t let that attitude turn you into a primadonna. Sometimes we just have to roll up our sleeves and get to work. Git r done!
Just remember your worth and keep hustling until your price matches.
“If you think it’s expensive to hire a professional to do the job, wait until you hire an amateur.”
- Red Adair