Is project billing really that complicated?
You might be asking yourself, “Did Elburz really need to write a whole post on how to bill for projects?” The answer is both yes AND one post isn’t enough. Before you dive into this post, it is a follow up to a previous post on determining project lengths. At the end of that post, I mention there’s two general approaches to billing. When I say “billing,” I really mean billing structure, and not so much the act of giving the bill to the client. Both billing approaches I’m going to talk about here have some pros and cons. It’s important that you consider each one and determine what is best for you, your team, your project, and your general way of life. Let’s dive in!
The two strategies
The two main strategies used for billing are:
- Flat rate for project
- Hourly/Day rate billing as time passes
These define the interval at which you will bill, what kind of information you need to provide on the invoices, what kind of flexibility you have during the project, and much much more.
Flat rate billing
This is the most common billing type. Almost every company that approaches you will ask you what it will cost to do the whole project, and they’ll assume you’ll stick to that number until the project is done. This is essentially flat rate billing. You decide up front with the client the following aspects of the project:
- What needs to be done (scope)
- What it is going to cost
- How often they need to give you a chunk of money
- What happens if the scope changes (new features are requested) or if something goes wrong and you need to charge more money for some reason (project got delayed, client exploded for no reason, etc)
All of that info gets put into the Scope of Work, both parties sign, and away you go. Sounds good, right? Sounds logical, right? Well it does have some benefits, but it also has some sticking points to know about.
Flat rate benefits
- Generally you can charge more. If you feel like you’re on your A-game in terms of business and negotiation, you can usually get more money from a flat rate, because you’re essentially negotiating on the perceived value of the project, not the actual amount of work it’ll take. That’s important to understand. A good example: It’s really easy for us to plug in a kinect, hook it up to some metaball that pulls particles around on a screen. Few days work maybe to develop (3), few days to install it (2), and a little bit of hardware is needed ($10,000). If you were to charge a day rate of $1,200, you would charge the client $6,000 for development, and $10,000 for hardware. BUT the perceived value of that project to a client may actually be around $30,000. So if you can negotiate and sell the concept and your expertise and the perceived value of it, all of a sudden your day rate just went from $1,200 to $4,000 ($20,000 / 5). But this is a bit of a gamble. You really have to feel the client out, look for cues, and practice your business senses. So it’s not very often that you might be able to really reap the benefit of it, but it’s there and possible.
- If nothing goes wrong, your redundancy budget is equal to profit. Like I mentioned in the previous post to this, on flat rates you need to include a bit of a buffer, and if you never use that buffer, well guess what you just made some more money!
- Clients are VERY comfortable with this style of billing. Clients generally know how much they can and can’t spend at the beginning of a project. Flat rates are comfortable for them because it’s easy to do all the accounting up front and determine whether they can afford something or not. If you do hourly or day rate billing, it can add a bit of hesitation for the client, because in their mind that means anything could happen and the project price could end up at any kind of number, and that they have a lot more responsibility to manage the workflow and make sure scope doesn’t change – all of which are terrifying to clients.
- 30% or 50% chunk of cash upfront. When you do flat rate billing, you usually agree to get a chunk of cash upfront and then the remainder at the end of the project. It’s normal to do 50% upfront and 50% upon completion. If the project is either really long time frame, or huge budget, sometimes you would create a few more milestones, so that maybe you get 25% upfront, 25% after you deliver some prototypes, 25% before you go to install, and then 25% upon completion (arbitrary example). For a lot of companies and small startups, this big chunk of cash can be a life saver. Pay off debt, pay bills, pay staff, whatever you need to do, you get a big chunk of cash right up front to start working with.
Flat rate disadvantages
- You’re stuck if you messed up estimating project difficulty. If you thought “I should be able to bang this out in 1 week,” and 3 weeks later you’re still not done (but not because of scope changes or client problems), there’s nothing you can do. You have to suck it up and finish without extra money. You could technically try talking to the client and asking for more money, but don’t expect to get work from them in the future, because that is probably the most annoying thing a developer can do. Make sure your estimates are as accurate as you can make them, and include some buffer in the budgets if you really don’t know something. It’ll make your bid less competitive, but there’s not much else you can do except bleed money.
- Changes in features/scope require confirmation in writing. So if you wrote all the scope in a document, and then put a dollar amount to it and signed it, what happens if scope changes? Well you need to confirm with the client, usually create a secondary Scope of Work that covers the new features, put another dollar amount to that, then (and only then) start working on it. Depending on your level of comfort with the client, a lot of the time an email chain where the feature is discussed, a price is agreed upon, and everyone necessary signs off can often avoid an extra Scope of Work. But either way, the point is it’s not in your contract, so if you start doing extra stuff or new features outside your scope and you don’t get written confirmation from the client they can refuse to pay extra. That stipulation is almost always in your Scope of Work contract as well. This just generally makes you a bit less flexible since you can’t just start working on new things, you need to do a bit of paperwork first.
- Client will almost always try to low ball you. Because this isn’t really based on how much you will actually work, but some idea of how much you’re working or how hard it is, clients will say alllllllllllllllllllllllllllllllllllllllll kinds of things to get you to drop the price. They’ll say “Oh, but you’re so experienced, you’ve done this before, it should be easy!” to try to make you say it’s easy therefore it shouldn’t be expensive. They’ll say “I’ll have to see how our other bids are priced because you’re a bit outside our budget” just so that you drop your rate 5-10% for them. They’ll literally say anything, they’ll lie, they just are trying to protect their money. So assume that they’re going to try to claw back and lower your flat fee as much as possible.
Time-based billing (usually hourly or day rate) is a completely different approach to billing. I find it is slowly becoming more popular for a handful of reasons, but it can be a bit scary for some clients. The essential idea of time-based billing is that instead of billing for the whole project, you bill based on the amount of time spent working. Time spent == money. This entails:
- Provide the client a very loose estimate or range (mostly just as a courtesy)
- Agree upon the scope
- Agree upon the billing rate (so either your hourly rate or day rate)
- Agree upon the minimum billing time-period (if you have a 30 minute phone call, does it automatically round up to an hour? Does a 2-hour meeting round up to a half-day?)
- Agree upon the billing interval (how often you submit an invoice with the amount of hours worked, usually weekly or every 2 weeks is common)
- Agree upon reporting intervals and details (how much detail you need to give them about hours worked and what was done and how often they want that)
Quite a few more steps than the flat rate, but you’ll need to define these things otherwise things get crazy pretty quickly. Let’s look at some benefits and disadvantages.
- Super flexible. The most amazing part of time-based billing is that it’s so flexible. Because you just clock in and out whenever they ask you to do something, it honestly shouldn’t really even matter to you what they want to do. They want to have a 4 hour call on Friday? Cool! In a flat rate situation you would usually try to avoid as much non-essential work as possible, because the more time you spend on the project, the less money you’re making per hour technically. But on time-based billing, if they really want you on a 4 hour call just to listen, they’re paying for those 4 hours, and then if you have 8 more hours of work that day…well guess they’re paying for that too!!
- Not many scope additions needed in writing. On time-based billing, there’s less need to confirm changes of scope or features in writing. It’s still a good idea, but as far as billing is concerned, since you’re just billing on time, the onus of managing scope and what you’re working on will generally be on the client. But still, it’s good to confirm via email or phone, but you generally won’t need to sign any additional SoW’s (scope of work) if something changes. You just keep going and report your hours as normal.
- More fair for everyone. Time-based billing is “fair” in some senses. Firstly, you aren’t trying to gouge the client for a ton of money based on perceived value (although I’d argue that’s fair!), and on the flip side, the client isn’t trying to pile-drive your rate before you even started working. On time-based billing, work = money. You work, you get paid for what you worked. If you believe your hourly rate is fair, then time-based billing is fair. For the client they also know you’re not trying to gouge them.
- Way more competitive pricing. You can pitch yourself to the client as way more competitively priced than your flat rate competition because you’re not building in any buffers or over-billing to make some extra cash or moving money around different parts of the budget. In most circumstances (unless the project goes off the rails and the client can’t project manage your time properly), time-based billing will probably be much cheaper for the client in the long run because they just ask for stuff, you do it, and you bill them the time it took to do it. Clean cut, no extra fat.
- Clients will be nervous. Like I said earlier, if you’re just billing time, then they HAVE TO BE RESPONSIBLE with/for your time. That’s scary for a lot of companies. If they don’t have good project management or schedules/planning people, they’ll feel very hesitant to talk/work with you because they’ll just see it as incurring costs every time they say hi or ask you a question. These kind of nerves might make them just go with someone else instead of hiring you. But I’ve been noticing recent trends of newer companies actually wanting this responsibility so they can also get the benefits listed above.
- You can’t try to negotiate some extra cash. This may or may not be a disadvantage. If you find yourself a person who likes doing business-activities and deals and such, then you lose all of that with time-based billing in a sense. You can’t try to maximize your dollar-to-project efficiency. Some people may hate business type of work, so this may actually be a benefit for you!
- You need to keep track of everything. To properly be able to bill hourly, you need to keep track of your hours doing anything. If you answer an email you should start and stop the clock appropriately. If they call you, you should start/stop the clock appropriately. As you’re working during the day you should keep track of hours and what you’re working on (level of details varies by client). You’ll probably want to find a time tracking app that you can have on your computer and phone to help make that easier. You’ll then have to collate that data and send it to the client at the agreed up reporting interval.
- You’ll need to invoice and hunt down money more. In the ideal world, after one or two invoices into the project, the process becomes smooth….but the real world is not the ideal world. Unlike the flat rate where you just bill a few times for the whole project, for time-based billing you’ll be submitting regular and smaller invoices. Whether it’s weekly or every two weeks, you’ll need to tally everything up, prep an invoice, get it to the right person, then follow up with them shortly after to ask “where the **** is my money?” Some clients might not make a big deal or issue out of this, and with some it’ll be a total nightmare.
So….that’s a lot of information. And it’s kind of still just the beginning of how the process works. But hopefully my descriptions here will give you some insight into the two main strategies for billing clients. You should really start to think to yourself what benefits really work for you, and what disadvantages you’d hate to have. There’s no perfect billing system, and even I switch between the two based on the situation and the client. It can be totally situational. In a follow up post, I’ll write a bit about case studies that can help you decide which might work for you depending on the situation. Enjoy!