Title Image

Don Xml's Grok This

The home of Don Demsak
Welcome to Don Xml's Grok This Sign in | Help
in Search

This Blog

Syndication

Site Sponsors

DonXml's All Things Techie

A Guide To Information Technology Consulting Rates

It really boggles my mind what some firms (both consulting and client) are trying to pay Information Technology consultants these days. I think that, for the most part, there are a lot firms and hiring managers that do not understand how Information Technology consulting companies operate. Seeing that I’ve been in this business for a very long time, and I’ve been totally frustrated by what firms are looking to pay for decent consultants, I figure that I’ll do my part an try to create a “For Dummies” Guide to Consulting Rates. The core of this process is my Consulting Rate Worksheet, which has been published for a couple years now, and seems to stand the test of time. What that worksheet tries to do is give a person the ability to convert fulltime salaries to/from hourly consulting rates. The formulas provided in there are only the beginning of the calculation, as they do not include the consulting firm’s markup, but we will get to that. But first, we need to tackle what the consultant gets paid (because without a consultant, there is no consulting), and then we can add on the consulting part. Since I work as .Net solutions consultant, and live in New Jersey, I’m going to use that as my basis, but you can play along with numbers from your own field.

Back in the beginning of 2006, CNN/Money had an article on the Top 5 Hot Careers and a .Net Developer was one of the top 5. The article lists the average experience .Net developer making between $75,000 and $85,000 in most major cities (and we all know that the NYC is traditionally higher than the average). If a .Net developer is making $75K-$85K on average nationally (bigger cities only), that means on average in the NYC area they will make about $90K (which jives with the numbers I’ve seen for employees in the area over the last year), with jobs in Manhattan actually just over $100K. I’m not talking about folks just out of school, but people that have been working with .Net for at least 2 years. I’m also talking about the average developer, not someone that is an experience senior developer (one that can develop object models), project lead, or architect.

So, using my worksheet (remember your mileage may vary, but I’m trying to stay within norms here):

AnnualIncome = AnnualSalary + Bonuses

AnnualSalary is $90K, and I’ll go with an average Bonus of 7% AnnualIncome, which is $6300

AnnualIncome = $96,300

Now, say you want to hire a .Net developer as a consultant for some project you have. There is no way that a consultant will actually work for less then what they can get paid as a fulltime employee (aka a FTE). So we need to calculate the bare bones minimum an average developer will accept to be paid, by the hour, on a W2 basis, as a consultant. Remember, consultants usually get a premium (norm seems to be around 20%), on top of what an FTE would be paid, but I’m leaving that out at the moment. Plus, we are talking about an average, run of the mill developer. Someone that knows their way around .Net, but isn’t a senior developer or an architect.

ConsultantRatePerHour = (AnnualIncome + RetirementPlanning + InsuranceCosts) / (HoursPerWeek * NumberOfWorkWeeks)

Since most companies contribute to an employee’s retirement (either via defined contribution, aka 401K matches, or defined benefit, aka pension) you need a yearly contribution number. It varies widely by company, but $5000 is about right for a Fortune 500 company (we are talking NJ here, so working for a Fortune 500 size company is common). Most companies also contribute to their employee insurances, too (mostly health insurance), but you also need to count the difference between group plan rates and individual rates. If you happen to work as a W2 employee of a consulting firm, the employee usually picks up the entire cost of the insurance, so this number is pretty high. Since we are talking an experienced developer, odds are good that they will also be married, and probably have a kid, so we need to talk family health insurance rates. I’ll use $5000 again (but it could be much higher depending on lots of variables). Oh, I use to program benefits systems for a number of Fortune 100 companies, so I know the real numbers, from experience. I’m not pulling these numbers out of thin air.

So, we have AnnualIncome of $96,300 plus $5000 in RetirementPlanning and another $5000 in InsuranceCosts for a total of $106,300. Now we need to compute the number of hours per year. A normal work week is 40 hours (HoursPerWeek). Most companies have 10 holidays a year, plus about 3 weeks a year of vacation (remember this is someone that has been with a company for a while, not a new hire). Add in one week of training (which any decent .Net developer should require) and you are up to 6 weeks gone out of 52, leaving you with NumberOfWorkWeeks = 46, for a total hours works of 1840.

ConsultantRatePerHour = ($96,300 + $5000 + $5000) / ( 40 * 46) = $57.71/hour for W2 by the hour

$57.71 is the absolute minimum an average .Net developer in the NYC metro area will accept as a W2 by the hour consulting rate, if by chance they couldn’t find a more “secure” position as a full time employee of a firm. But, we know that a consultant gets paid a premium to be a disposable resource (they except that they will not always be on billing and can go weeks between gigs), so you really need to tack on another 20% on top of that number to be fare, otherwise, they would take a full time position, since everything was equal, which brings us up to $68.85. You can also use the $57.71 an hour number if you were advertising for a “right to hire” position and were looking to pay them $90,000 with a 7% once they were converted to a fulltime employee. Right-To-Hire is a topic all by itself, and although some may consider it consulting, it is really a try it before you buy it situation, and not consulting.

But, most experienced consultants have learned that W2 by the hour is not the way to go. So they either have their own business, or, go thru an umbrella company, which means we need to convert this rate from a W2 rate to a corp to corp (or 1099) rate. I’ll use the equation from my worksheet:

ConsultantRatePerHour = (AnnualIncome + RetirementPlanning + InsuranceCosts + EmployerTaxes + CostOfDoingBusiness + EducationCosts - TaxDeductionSavings) / (HoursPerWeek * NumberOfWorkWeeks)
The extra numbers here are EmployerTaxes of 10% or $9600, CostOfDoingBusiness of $4500 (which is what my umbrella corp charges me, but you can easily burn this amount of money with a payroll service and a good account), EducationCosts of $2000 (for one conference), and TaxDeductionSavings of $5000 (which is subtracted from the rest).

ConsultantRatePerHour = ($96,300 + $5000 + $5000 + $9600 + $4500 + $2000 - $5000)/ (40 * 46) = $63.80/hour for 1099 hour

Again, the $63.80 is the number that matches back to the average .Net developer salary of $90K with a 7% bonus, and does not include the consultant premium. With a premium of 20% we are talking about $76.56.

From this point forward, I’m going to use the corp to corp number of $63.80 as the base for the consulting side calculations, since it is the easier of the 2 numbers to work with (as opposed to the W2 number of $57.71) and already has the employer side taxes included. But, you can always calculate your own number using the above formula, and use numbers that better fit your situation (salaries in Kansas City are not the same as NJ). If a consulting firm is paying their average .Net consultant $63.80, either the consultant is unaware what their rate translates to in terms of a fulltime salary (and thus is under valuing their rate), or there are mitigating circumstances, since they could (in theory) get a full time position of $90,000 and 7% bonus and still take home the same money. Mitigating circumstances can be anything from positive stuff: like being married, with a spouse that is covering the health insurance costs, or having a very creative accountant (and thus “taking advantage” of iffy tax loopholes), to negative stuff: like personality or performance issues, to any number of other items (like work visa status, which is yet again, another topic for a different time).

Now that we have figured out what the consultant gets paid, now we have to add the consulting firm's markup to come with what a client should expect to pay a consulting firm for the consultant's services.  Back in the day (before the dot com bubble and then bust), you could find consulting firms only marking up their consultant costs from 12 1/2 to 20 percent.  That means, if a consultant was getting paid $80/hour, they would bill the client $100/hour.  But after the dot com bust, it seems as though the consulting firms that made it thru the bust haven't trimmed their overhead back to pre-bubble levels, and it is hard to find firms that only mark up the rate by 20%.  50% markup is the norm, now, which means if a client wants to get an average .Net developer (who will require an hourly rate of $76.56), the consulting firm will bill them almost $115/hour (and 50% markup is on the low side for a lot of firms).  But, most clients will not find this to be acceptable (and I don't blame them), and I've found that most clients don't like to pay a consulting firm more than $100/hour.  What a client has to understand is that most consulting firms will not lower their markup.  Instead, they lower the quality of their workforce, and keep their higher markup.  So, the consulting firm will only pay $50/hour (since the client only wants to pay $100/hour), and as we have seen, $50/hour is much lower than what an average .Net developer can make as a full time employee.  So, the only developers that will accept that rate have mitigating circumstances, or are not as experienced as the client would expect.  The result is that the client will not be happy with the quality of the resumes submitted, or if they hired the consultant, they will be lead to believe that quality of the developer workforce isn't very good.  The only real solution to this problem is for the client to require the consulting firm to provide them with exactly what the consultant is paid.  To get a local consultant of similar quality as their own employees, they should expect that the consultant will require a salary about 20% more than what they pay their employee.  Then, you need to tack on another 50% on top of that number (unless they can find a smaller consulting firm that has a lower overhead).

Hopefully this article will help both consultants and client learn a little about the numbers we deal with every day.  Any feedback or suggestions would be appreciated.

Published Sunday, February 04, 2007 8:55 PM by donxml
Filed under: ,

Comment Notification

If you would like to receive an email when updates are made to this post, please register here

Subscribe to this post's comments using RSS

Comments

Chris Hanson said:

I posted an article on my weblog three years ago titled "Calculating a Consulting Rate" http://chanson.livejournal.com/82200.html that described in detail the mechanism I used to come up with rates back when I was running my consulting firm. (A few months later, I went full-time with a company and have been happily there since.) One of the reasons I wrote it was that I was in negotiations with a client who explicitly started working backwards from what they would have paid me as a full-time employee to try and derive a rate to offer me. This post put me on solid ground because it let them know that the rate that I told them for my firm wasn't just arbitrary or based on what a generic "consulting software developer" in their region billed. (They figured salaries that way, and thought I should do the same for rates -- never mind that they demanded a particularly specialized and hard-to-find skill set due to the nature of their business...) Once they saw that my rate was based on math derived from real costs and considerations, even if they didn't see the calculations themselves (which I informed them were proprietary) they were much happier with it.
February 5, 2007 2:27 AM

TrackBack said:

February 5, 2007 8:16 AM

Marc said:

Just got back from London. Great .NET devs can be billed out by a consulting company for 1000 pounds per day ($2000). I think that you can get over 1000/day as a specialized .NET consultant, but those gigs are not common, and require a degree of expertise in something like WCF, WPF, or WIndows CCS.
February 10, 2007 4:03 AM

Luke Melia said:

Thanks for this analysis Don! Very useful and well thought out.
March 4, 2007 8:05 PM

Wendy said:

Really good break down. When I was consulting I did a similar calculation to determine my rate :) The self employment tax is a little tricky... it stops at 85k and is tax deductible, but then you can have NYC tax, which is 5% of total income once you break a certain cap... too many numbers! Thanks!
March 5, 2007 8:00 AM

Cameron said:

Thanks Don! I have been looking for something like this for a while!
March 6, 2007 7:39 AM

Jeffrey Palermo said:

You're the man!!!
March 16, 2007 3:20 AM

Andrea >> Become a Consultant said:

Hi...Interesting and well-written post. But I think the rates you're arriving at are quite low. I have a popular post on setting consulting fees at http://www.consultantjournal.com/blog/setting-consulting-fee-rates. Most of the consultants I know charge a lot more than $77 an hour. In fact, freelance writers (who tend to be in less demand) charge something around there. People with more advanced skills are charging well above $100 an hour. My old company paid $135 an hour for Crystal Reports developers. There's no way I'd accept $50 or $75 an hour for my work, unless it came with a lot of guarantees.
April 17, 2007 3:05 PM

Joe said:

Nicely done Don. My only criticism is that your numbers are too conservative. No consultant should ever bill out at less than $90/hour. The predatory tax rates and complexity of tax reporting necessitate extra professional services that must weigh into the calculation. For example, in the NY tristate area a consultant is likely to file quarterlies in 2 or three states and stave off state fishing expeditions too.
May 5, 2007 12:09 PM

Shawn Cicoria said:

Another nice post on tips, issues in the contracting space.. http://www.simple-talk.com/opinion/opinion-pieces/a-cynics-top-ten-tips-for-it-contractors/
September 26, 2007 6:14 AM

Derik Whittaker said:

For about the past year or so, I have been thinking about jumping back into the consulting game, but

December 10, 2007 7:34 AM

MBA guy said:

This is classic cost plus pricing. You want to balance it with value pricing -- what is the value of what the customer is getting from working with you? How much money are you earning them or saving them? How much do you save them by making it possible for them to not have to recruit, hire and manage a full-time staff member?
May 28, 2008 7:43 PM

Leave a Comment

(required) 
(optional)
(required) 
Submit

About donxml

I’m an independent consultant, specializing in .Net solutions architecture, based out of New Jersey who also doubles as an evangelist for XML, Domain Driven Design, enterprise architecture and .Net. I do not work for Microsoft, the W3C or any other big company that you may know of (at least not yet). I’ve been an indie for over ten years, and although I’ve been tempted a couple times to take a job with companies like Microsoft, I’ve haven’t found something better than my current situation. I work mostly with the large pharmaceuticals that are based here in New Jersey, and usually find myself on long term contracts. Definitely not the prototypical indie consultant, but it lets me dedicate time to my non-income generating activities like the developer community stuff, plus financing open source projects like XPathmania and MVP-XML. If you would like to talk to me about doing some contract work, just contact me via the contact page. My rates vary widely, depending on lots of different variables, but mostly distance from Jersey, and type of work. Plus, I’ve been known to donate some of my code for various projects.
Powered by Community Server, by Telligent Systems