Category Archives: Business

Aide Memoire: The “In Search of Stupidity” reading list

I’ve recently been reading Rick Chapman’s excellent In Search of Stupidity: Over 20 Years of High Tech Marketing Disasters on Kindle.

Towards the end of the book there’s a chapter on the avoidance of stupidity. In it he makes the point that an intense study of industry history by corporate management is a necessary, but not sufficient, pre-requisite for successful execution of business programmes. Or, as the relevant section is entitled, “You Shall Study the Past, and the Past Will Make You Less Stupid.”

Now, bearing in mind that the most recent version of In Search of Stupidity as of this writing (mid-2016) was published in 2008 some of the recommended reading may be less relevant than perhaps it was 8 years ago. Still, it’s history, and the past doesn’t change, and I certainly felt like all of the books in Rick’s list would make worthwhile.

I’ve therefore been scouring Amazon for them, and have managed to get hold of all of them, one way or another. For my own reference as much as anything else, I wanted an easy to find copy of the list, along with an indication of which format each book is available in/I’ve bought.

  • Where available, I’ve bought the Kindle edition, regardless of cost – I work away from home a lot so it’s both more convenient and probably better for the environment,
  • Some of the books are (or appear to be) out of print – in these cases I’ve bought them used; most are available at a reasonable price even if the sensibly priced offers aren’t the first in Amazon’s search results,
  • Of the remainder there are good offers on used copies – again, buying used is probably better for the environment, but you also have to consider the issue of author/publisher reimbursement. Regardless, if you’re a student on a budget or whatever, I’d recommend used.

Anyway, here’s the reading list and, by the way, I don’t make any money of these recommendations (in case it would bother you if I did).

Must Reads

Title and Author In Print Kindle
Apple: The inside Story of Intrigue, Egomania, and Business Blunders by Jim Carlton No No
Big Blues: The Unmaking of IBM by Paul Carroll No No
The Dream Machine: J. C. R. Licklider and the Revolution That Made Computing Personal by M. Mitchell Waldrop Yes Yes
Gates: How Microsoft’s Mogul Reinvented an Industry and Made Himself the Richest Man in America by Stephen Manes and Paul Andrews Yes Yes
Hackers: Heroes of the Computer Revolution – 25th Anniversary Edition by Steven Levy Yes Yes
Joel on Software* by Joel Spolsky Yes No
Marketing High Technology: An Insider’s View by William H. Davidow Yes Yes
The Reckoning by David Halberstam Uncertain Yes
Selling Air by Dan Herchenroether No No

*There is also a less well received follow-up.

Recommended Reading

Title and Author In Print Kindle
Beer Blast: The inside Story of the Brewing Industry’s Bizarre Battles for Your Money by Philip Van Munching Uncertain No
On the Firing Line: My 500 Days at Apple by Gil Amelio & William L. Simon No No
Open Source: The Unauthorized White Papers (Professional Mindware) by Donald K. Rosenberg No** No
Odyssey: Pepsi to Apple : A Journey of Adventure, Ideas, and the Future Hardcover by John Sculley with John A. Byrne No*** No
The Product Marketing Handbook for Software by Merrill R. (Rick) Chapman No No
The Second Coming of Steve Jobs by Alan Deutschman Yes Yes
iCon Steve Jobs: The Greatest Second Act in the History of Business by Jeffrey S. Young & William L. Simon No No
Once Upon a Time in Computerland: The Amazing, Billion-Dollar Tale of Bill Millard by Jonathan Littman No No

**And used copies are fudging expensive, suggesting either a very limited print run, or this really is worth reading.

***And used copies are not expensive at all which, given the 1987 publication date, suggests this may be an interesting cautionary tale on how you shouldn’t write an autobiographical text about how awesome you are until well after the outcomes are known. Of course, I could be wrong, but either way I can’t wait to get my grubby mitts on this.

By the way, if I’ve marked in print availability as uncertain it means that, whilst you might be able to get hold of a new copy of that book, my suspicion is that it’s probably new old stock and that the book may nevertheless be out of print.

Hope you find this useful. If I get time I may post some quick reviews.

Is there more to life than increasing its speed? Web performance: how fast does your website need to be?

How fast does your website need to be?

Web performance is a hot button topic so that question is pretty much guaranteed to start an argument. Perhaps this is more because of the answer – which is, “it depends” – than the question. But it’s fair to say that if much of your business either arrives, or is transacted, online then the answer is pretty darned fast. (It’s also fair to say if the speed of your website is the only differentiator you have from your competitors, you may have bigger problems.)

In this post I want to cover the following:

  • The relationship between web performance and
    • Key business metrics such as retention, conversion rates, and revenue
    • Mobile computing
    • SEO
  • Ideal benchmark web performance
  • How to improve web performance

That’s obviously quite a lot of ground to cover, so let’s get cracking.

Web Performance & Key Business Metrics

It’s a couple of years old now but Tammy Everts’ excellent post on the web “performance poverty line” still rings true. You can find a more recent reworking here, although the graphs are the same.

I’m not going to rehash everything she said because there’s really no point, but is it honestly beyond the bounds of possibility that if she were to redraw the graphs for 2014 then the lines might fall something like this?

Landing page speed versus bounce rate Landing page speed versus pages per visit fall-offLanding page speed versus conversion rate fall-off

No, I don’t think so either. Nobody’s become any more tolerant of slow websites in the last two years.

It’s worth pointing out that the performance poverty line is NOT an absolute line for all websites, in contrast to the way I’ve sometimes seen it presented. Tammy took data for 5 companies that were Strangeloop customers and suggests that you should collect your own data from your own site to find where your performance poverty line is. Nevertheless, I think the line at 8 seconds is a good ballpark figure.

What it means is that for page loads over 8 seconds, relatively small improvements in performance will make little or no difference to key business metrics because you’ve already lost people. For example, you’re unlikely to see any improvement in bounce rate, pages per visit, or conversion rate if you just improve your loading time from 10 seconds to 8 seconds. You need to halve your page load time, or better, to see any real improvement.

Companies like Amazon and Facebook take this very seriously, and have hard numbers for the negative effect poor performance can have on both revenue and engagement.

In 2006 Amazon announced that revenue increased by 1% for every 100ms they were able to shave off page load times: a claim that you can find on slide 10 of their 2009 Make Data Useful presentation. Strangeloop went on to create an infographic illustrating this for Amazon, along with several other major websites:

Illustration of performance findings across different websites from Strangeloop.

(Click to see a larger version. NB. They’re happy for people to reproduce this.)

To summarise:

  • Shopzilla saw a 12% revenue increase after improving average page load times from 6 seconds to 1.2 seconds.
  • Amazon saw 1% revenue increase for every 100ms improvement.
  • AOL found visitors in the top ten percentile of site speed view 50% more pages than visitors in the bottom ten percentile.
  • Yahoo increased traffic by 9% for every 400ms improvement.
  • Mozilla estimated 60 million more Firefox downloads as a result of making page loads 2.2 seconds faster.

I also mentioned Facebook. They’re far from my favourite site, but back in 2010 at Velocity China they revealed that 500ms extra on page load times lead to a 3% drop-off in traffic, and 1000ms lead to 6% drop-off. One suspects that as page loads get slower still that nice linear relationship probably turns into a cliff drop.

And the evidence goes back even further. Remember how, in the late 90s, that search engine nobody had heard of – Google – managed to trounce all opposition? One of the major reasons for that (apart from better search results) was that the homepage was incredibly sparse, such that it loaded very quickly even over the slowest of dial-up connections. This was in stark contrast to the (relatively – remember, slow connections) bloated and content laden homepages of sites such as AltaVista and Yahoo. Here’s AltaVista’s homepage on January 17th, 1999. Ironically they were doing a better job back in 1996.

I’m not seriously suggesting that in the case of your site you’ll definitely lose 1% of revenue for every extra 100ms on page load time. Amazon has an extraordinarily broad customer base, whereas in a niche you might not suffer as badly… alternatively, you might do even worse. If you collect performance metrics from your site you should be able to figure out the real impact for yourself.

What’s true is that you’ll lose out to faster competitors. You need to be amongst the best of them; ideally you want to beat them. (Unfortunately for any business involved in some kind of online retail activity, unless you’re particularly nichey, one of your competitors probably is Amazon. This is a colossal pain in the backside because their page load times are VERY fast.)

Anyway, to summarize: a faster website leads to higher conversion rates and more revenue. Win!

(Btw, I don’t rate AdSense as an income source but, if you do, a faster site should mean higher bids, which means more money for both you and Google.)

Web Performance & Mobile Computing

I’ve touched on this briefly in my aside above but mobile devices, unless they’re being used with WiFi, are notorious for suffering slow, choppy connections. In theory this gets better with 4G, and particularly with LTE-Advanced (see my previous post). In reality bandwidth caps and contention may make the additional speed and reduced latency of 4G a moot point, so don’t bank on better performance just because the headline figures suggest it’s available.

If you expect a lot of customers to access your site from a mobile device, you should make sure you test on these devices, and make any changes necessary to give users a good experience. DON’T test exclusively on the latest greatest hardware. I realise it’s tiresome but make sure you use the kind of low-end/mid-range smartphones that are common currency. There are still plenty of iPhone 3GSs and 4s, along with a gazillion veteran and scuffed Android devices doing good service.

Web Performance & SEO

SEO’s a bit of a tricky topic, because I (sort of) don’t believe in it. I’m not saying it doesn’t work but the problem is, if overdone, it can backfire quite badly. These days it seems barely a month goes by where I don’t read about another legitimate outfit who’ve been boned by a drop in traffic as Google update their search index filters. MetaFilter springs immediately to mind just because it’s been on HN the past few days, but there are others. (That particular story is sad because it’s had such a severe effect that they’ve had to let staff go, but I digress…)

The point is that nowadays the performance of your website does have an effect on its ranking in search results. The faster your site, the higher it will rank, and vice versa. A faster site is one SEO trick that Google won’t penalize you for, so take advantage of it!

Ideal Benchmark Web Performance

This is another slightly tricky area. Some people will give you a hard figure for this as though it’s holy writ, but I don’t necessarily think that’s helpful. Also, whilst it’s important that you get landing page performance right, you shouldn’t focus on that to the exclusion of your site as a whole. If you offer people a crappy experience once they’ve got past the landing page they’re still going to bail.

You need to benchmark against competitors, ideally over a variety of connection speeds, but at the very least check how you fare against them over a low latency connection to get a good idea of baseline performance. If you need to, set up a VM on Azure or EC2 and remote desktop into it, then check speeds from there. You don’t necessarily need to be the fastest site on the web, but you want to be amongst the fastest (or better if you can) as compared to your competitors.

You can use services such as Neustar for more systematic testing under load from a variety of location. You can even use them on your competitors but I wouldn’t recommend it because they probably won’t be very happy with you, and may lawyer up.

If you really want some figures to aim at, the Amazon’s numbers aren’t a bad target:

  • <200ms time to first byte,
  • <500ms to render above the fold content,
  • <2000ms for a complete page load

(NOTE: these measurements were taken on a connection with ~5ms latency. You won’t see this performance over, for example, a home broadband connection, or 3G. The effect of a slower connection compounds on slower sites though, often because of roundtripping. You should test your site over the kinds of connections your target audience will use, and on the kinds of devices they use, especially low-end laptops, cheap tablets, mobiles with no 4G connectivity, etc.)

They actually aren’t that hard to achieve. One situation in which you may find them more of a struggle is if you’re using a CMS: optimisation could require customisation, but you’ll often find plugins that can help you. WordPress, for example, offers plenty.

You want to improve the average page load, so make sure you load test under circumstances that emulate your anticipated usage patterns. This used to be a hassle but nowadays services such as the aforementioned Neustar make it pretty straightforward.

How To Improve Web Performance

There are two key areas for improvement:

  • Time to first byte (server-side optimization)
  • Client-side processing, loading and rendering

Taking latency out of the picture, time to first byte (TTFB) is a function of how much work you have to do on the server before you start returning page data. Lots of data retrieval or dynamic generation on the server side can have a devastating effect on time to first byte. Web servers are never faster than when serving static content so you want to get as close to this as possible, particularly for landing pages.

For example, if you need to present a lot of user specific information, instead of executing half a dozen SQL queries to execute the data, consider storing a blob of JSON in a key-value store so you can quickly look it up and return it by user ID. You can even use caching and indexing software, such as Endeca, to help if you feel the complexity is warranted. Selective denormalisation of data can really improve performance. You can also offload work after the page load by asynchronously retrieving via AJAX or similar; this will improve the perceived performance of your site even if some page elements aren’t completely rendered immediately (you can often insert placeholder information to help as well).

Note that TTFB is a concept that applies to any request sent over HTTP, so it’s as applicable to any AJAX/web service requests made within your page as it is to the initial page load. Make sure you pay attention to both!

Client side performance is about minimising the payload you deliver (image sizes, CSS and JS minification, etc), and the number of requests. It’s also about minimising blocking so move JavaScript loading to the end of the page. JavaScript loading always blocks because your browser has to assume there’s code in there it might need to execute. You want to make sure that nothing slows the rendering of the above the fold portions of your pages, and moving <script> tags further down the page is one very good way of doing so.

Services such as Google PageSpeed Insights and Yahoo! YSlow can help you do this by telling you exactly what you need to optimise. Just point them at the appropriate URL, or install the extension in the case of YSlow, and set them off.

They’ll often tell you to put static resources, like images, on a CDN but this can be a mixed blessing. You might realise a bit of extra speed, but you’ll also lose out on SEO juice if people post links to these resources because they’ll be linking to files on a CDN, not on your website. (Yeah, I know, I know: I’m supposed to be uncomfortable with SEO, but you do need to give it some consideration.)

All of this is time, effort, and money so, if you’re desperate or lazy (and even if you’re neither) you can cheat…

Google PageSpeed Service claims to be able to improve website performance by 20-60%. Whether you believe that or not you lose nothing by at least giving it a go, even if you’re actively working on other optimisations.

To test it out, visit and hand over the URL of one of your landing pages. It’ll queue up your test and, when it’s finished, present you with results like this:

Basic results for Google PageSpeed Service test, including video comparison.

(Sorry Autotrader, I’m not picking on you: I’ve just been looking at motorbikes recently and noticed your site could be a bit faster.)

The video comparison is kind of cool. You can see that with (which I tested from Dublin, Ireland), the above the fold content on the optimized page appears much more quickly. However, there’s nothing quite like hard numbers, so I like the filmstrip comparison, and this sequence really highlights the differences in above the fold performance:

Timeline showing start of above the fold rendering at 0.6 seconds for optimized page. Timeline showing start of above the fold rendering for unoptimized page. Completion of above the fold rendering for optimized page. Completion of above the fold rendering for unoptimized page.

(You can click through the thumbnails for a larger view.)

I’ve switched to a Thumbnail Interval of 0.1 seconds, which shows that above the fold content begins to render at 0.6 seconds for the optimized version, as opposed to 2.2 seconds for unoptimized. That’s a full 1.6 second improvement, which is massive. Unfortunately it still doesn’t complete until 4.7 seconds, which isn’t great, but still better than 5.4 seconds for the original.

The total load time is only about 10% better for the optimized version – 4.9 seconds vs. 5.5 seconds – but the improvement in above the fold performance is key, because that’s what defines the user’s experience.

So how does this work? Google basically proxies your site. It sits between your server and your users, optimizes your pages and serves the optimized versions, instead of the versions on your servers. It is smart though so it will retrieve dynamic content from your servers whenever it’s needed. The only hassle is that to use it for real you’ll obviously need to update your DNS configuration.

As I say, they claim a 20%-60% improvement, but for dynamic sites you should realistically expect to achieve something at the lower end of that range. Also, what it often can’t overcome is a very poor TTFB because it’s not as if it can make your server any faster. Things will probably be a little better but if you have big problems you’re going to have to do some work yourself (or you could get in touch and hire me to do it for you!).

One surprising outcome of using PageSpeed Service is that sometimes overall page load times can increase. That might sound bad but, as I’ve already said, it’s the user experience that really counts: if above the fold render performance improves you’re still onto a winner.

Another reason you may not see the speed gains you hope for is that non-cacheable resources cannot be proxied by PageSpeed Service. For some resources you won’t be able to do anything about this, but you should make sure any resources that can be set cacheable are.

Final point on PageSpeed Service: you’re probably wondering about cost. Companies like Akamai offer similar services for serious $$$$ but, for now, the good news is that PageSpeed Service is free. Google do plan to charge for it, but they’ve said you’ll get 30 days notice before you have to start forking over cash, and can cancel within that period.


Hopefully it’s clear by now that a focus on performance leads to improvements in key business metrics related to both engagement and revenue. You also understand the need to consider mobile computing, and the potential for improved search ranking through higher performance. Finally you should have a pretty good idea of exactly what you’re aiming for performance-wise, and how to get there, by focussing on specific areas of improvement on both server and client.

How to stop feeling bad about charging your clients lots of money for consultancy

UPDATE: I’ve since done more reading about pricing and, whilst I think the approach outlined below is certainly a lot better than no approach at all (otherwise known as picking a figure out of the air), I don’t think it’s the best approach. I’ll write on this topic again when I’ve had more opportunities to try out different approaches. In the meantime you could do a lot worse than read Alan Weiss on value-based pricing.

“How much will this cost us?”

The question’s come up quite a bit recently and, every time it does, my heart leaps into my mouth and I want to go and hide under a rock. It seems so innocuous. It’s just business, after all, and I mean: I ought to know the answer, right?

But I feel terrible about charging people lots of money, even when they can blatantly afford it. And this despite the obvious fact that one of the multitude of reasons I left my job at Red Gate was that I wanted to earn more money.

(Nothing against Red Gate: it was just time. Those of you who’ve been through a similar thing will know exactly what I mean. By the way: if you’re a consultant you should be earning more. You are in an inherently riskier and more precarious situation, and your income will be lumpier. If you’re not earning more then what’s the point? Why take the risk? You may as well go back to working for somebody else.)

Some of you will be mercenary as hell and won’t identify with this at all. You’re probably sat there thinking, “What is this guy on?” and, honestly, you can safely move on. I don’t think you’re going to have any problems at all, and I wish I was more like you.

Unfortunately I’m not, and this lead to the inevitable situation where the first job that came my way, via a friend working for a local company, I underquoted for. He asked me how much and I agonised. I looked at contractor rates for the local area, and added about half again on, then submitted a quote including a justification of why the fee was so “high” and heard nothing for a couple of days. Then he sent back an email saying, “yes, that’s absolutely fine,” with no hint of a quibble, and I thought: “Oh balls, I should have quoted more.”*

Well, yes, I should have done, but that’s not exactly very scientific, is it?

To the list of unscientific methods of setting your consultancy rates I’d also add asking your friends what sounds reasonable when you’re next down the pub with them even if – especially if – they work in the same domain. They’ll probably underquote because (a) most of them aren’t consultants, (b) they’re already appalled (and secretly jealous) of how much they perceive consultants to earn, (c) they might confuse consultancy with contracting, and (d) they probably haven’t sat down and worked through the calculations I’m about to lay out for you below.

Also, despite all my artsy tendencies, I’m a programmer with a science education and there are a lot of questions where I just feel a lot more comfortable and confident when I know the “right” answer and, more importantly, can follow the route that led to that answer. This is true even where the answer has some element of error/uncertainty associated with it.

So what is the “right” answer to the question of how much you should charge?

OK, so I’m not going to give you a figure. Nobody will because the answer depends very much on your situation. What I can do is map out the route by which you can arrive at that answer, and feel comfortable that the answer is reasonable. As with many seemingly intractable questions, it involves breaking the problem down into more manageable chunks.

The first thing you need to do is answer a few simple questions:

  1. On average, how many billable hours will I work each week? This will be less – most likely significantly less – than the total number of hours you work.
  2. How much do I want to earn? For the sake of argument we’ll call this your salary, although the exact mechanics of how the money finds its way into your pocket are best discussed with an accountant.
  3. What are my costs? Strictly, costs include your salary (2), but here I’m really talking about all the other things that you need to spend money on. The combination of (2) (before tax) and (3), taking into account (1), will allow you to calculate your consulting fees.

Let’s deal with each of these questions in turn…

1. On average, how many billable hours will I work each week?

As I said, this will most likely be a lot less than the total number of hours you’ll work.


Because you need to spend time on business development (marketing, wooing clients, actively searching for work, developing other revenue streams) and admin (finance, etc.).

For example, I reckon I’ll average around 24 billable hours/week, giving me 16 hours (2 days) to work on everything else. In reality I’ve accepted that the “everything else” bit will take more than 16 hours, meaning I’ll work more than the 40-hour work week that’s become standard in the UK, in order to pursue other business opportunities whilst still meeting my financial goals.

2. How much do I want to earn?

As I said, let’s call this your salary. You need to work out what you want this to be before tax.

Say you want to earn £100k/year, and take 5 weeks holiday. You’ll work 47 weeks and, since you only earn when you’re working, your salary for those weeks will be £2130.

If you’re trying to think about what a reasonable salary might be, here are some issues you should consider. Some of these are domestic expenses, whilst others are things that might be provided as employee benefits were you working for a larger company:

  • How much money do you need to survive for 6 months if, for some reason, you can’t work?
  • How much is your mortgage/rent?
  • How much do you need to pay for childcare?
  • How much is income protection insurance going to cost? Think about at least being able to cover your bills (NOT live the life of riley, unless you can afford to pay a lot),
  • How much time do you want to take as holiday each year? Remember: when you’re on holiday, you’re not earning, so treat it as a cost. (IMPORTANT NOTE: don’t forget to buy travel insurance, including medical cover!)
  • What about healthcare? The UK has the NHS and you can get free hospital care throughout the EU with a valid EHIC card but, in some instances, private healthcare can ensure you receive treatment more quickly for non-emergency conditions.

3. What are my costs?

Salary is obviously a cost, but as I said before, this is exclusive of salary.

So, here is a non-exhaustive list of business expenses you need to take into account when calculating your costs:

  • Travel
    • Car (or other vehicle)
      • Purchase or finance costs
      • Insurance – expect this to go up (social, domestic, leisure and commuting use won’t cover you if you spend a lot of time on the road visiting different clients)
      • Tax (known as Vehicle Excise Duty in the UK)
      • Annual roadworthiness test (known as MOT in the UK)
      • Servicing/repairs
      • Fuel
    • Rail (also metro/underground, and bus for large cities)
    • Air
  • Insurance
    • Professional indemnity
    • Travel (make sure it covers both business, personal, and medical expenses!)
    • Health (optional: depends on where you live)
  • Domain names and hosting
  • Equipment (including software licenses, and SaaS subscriptions)
  • Administrative services (accountancy, legal, company registration, etc.)
  • VAT (depends on how much you earn/anticipate you’ll earn)
  • Electricity
  • Heating
  • Water
  • Property/council tax
  • Food (especially if you’ve previously worked somewhere with a subsidised or free canteen)
  • Pension (you contribute to this from your salary but your employer would also normally make a contribution so I think it’s worth highlighting as a cost)

(It’s non-exhaustive because I keep thinking of things that need to be added to it.)

You need to work out how much these will cost you per annum. Do NOT underestimate them…

Business Expense Example 1

I have a pretty good bead on my car costs, as they stand right now, but I anticipate they’ll change significantly over the next 12-18 months. For starters, I may buy a newer car since my current car is getting a bit tired. I’m also not exactly sure how much of my mileage will be business mileage, or how many miles I’ll drive, so I’m assuming the “worst case” scenario: most miles will be for business, and I’ll have to drive longer distances (albeit perhaps less often) than I was simply commuting to and from my old job. Thus I’ve budgeted to be able to cover any increase in car costs.

Business Expense Example 2

Right now I’m paying next to nothing for hosting and domain names. My hosting (on Azure) is covered by the MSDN subscription Microsoft have kindly given me so I can continue working on NTVS, whilst my domain names currently cost well under £100/year. However, over the next 12 months I have plans that I anticipate could increase my hosting and domain costs to as much as £200/month which, in my cost breakdown, I’ve rounded up to a convenient £2500/year. They may go higher (in fact, I sort of hope they do, because that would indicate success… or possibly terribly inefficient code, but hopefully the former) and, if so, I’ll need to adjust. I anticipate a gradual ramp up though, so £2500 should be sufficient for the first year.

You might also be able to consider a portion of your mortgage or rent as a business expense if you work from home but BE CAREFUL. If you get this wrong you can run into hot water with the Inland Revenue, so make sure you know the rules for your jurisdiction.

Once you’ve worked out what your business expenses are per annum, divide by the number of weeks you’ll be working (NOT by 52) to work out what they’ll be for the average week. You’ll probably be surprised by how much they are. In fact, I’d go as far as to say that if they’re running at much less than £500/week you should be suspicious that you’ve miscalculated. Depending on your exact circumstances you may find they’re much higher – maybe closer to £1000. For the purposes of the calculation below I’m going to split the difference and say £750/week.

So, how much should I charge?

So, we want to pay ourselves £2130/week and our costs are £750 week, which means we need to earn £2880/week.

BUT we’re only billing for 24 hours, which means we need to charge out at £2880/24 = £120 per hour.

Or £960 per day.

And, of course, at that level over the course of a year (unless you’re particularly lazy) you’ll easily hit the VAT registration threshold, which means in that your fees are in fact £960 + VAT per day, which is basically £1200 per day.

Sounds like a lot, doesn’t it? But in consultancy terms it’s actually still pretty cheap. That in itself may be a problem – I don’t pretend to have figured that out yet. It also gives you some idea of why large consultancy firms are so eye-wateringly expensive: they have to pay for all that glitzy marketing, aggressive recruitment, graduate training, and those fancy offices somehow.

Because you’re worth it

I’m sure you can see how I’ve landed on those figures which, by the way, are a ballpark (and also chosen to make the sums easy for this example!). You might still have nagging doubts though. You might be wondering, am I really worth it?

This is tricky, and is really something you can only answer for yourself. What you need to think about is the value you’re offering to clients. Here’s a concrete example from my own experience.


Potential client comes to me looking for help with some serious performance and scalability problems – even at minimal loads – with a website and set of associated services they’re planning to roll out in four weeks’ time. Technologies are .NET, ASP.NET MVC, and SQL Server. They want a specialist, with a background in .NET and SQL Server performance optimisation to come in and help them fix their performance problems.

My Background

I’m a software engineer with 14 years professional experience across a wide range of projects on various platforms. Of that, I spent nearly 10 years building tools to solve common problems encountered by .NET developers and SQL Server developers and DBAs. That includes the award winning ANTS Performance Profiler, which allow developers to quickly isolate performance problems in .NET code, and will highlight long-running/inefficient queries in SQL Server. I’ve done a lot of user testing, helping people find performance issues in their code, I’ve written about .NET performance, and I’ve spoken at .NET user groups on the topic.

What value do I bring?

The client has already spent a lot of time (and therefore money) trying to fix the problems they’re having, but with only limited success. They therefore want a specialist. With my background clearly I am something of a specialist. This is not a situation in which any .NET developer will do.

I can go in and help them fix their performance problems much more quickly than they might otherwise be able to. Although my day rate may seem high, they will actually spend less overall, and can be much more confident of a successful launch. This means they won’t lose money due to the site being unable to handle the load placed on it.

So, am I worth it?

In this case: yes. (But that doesn’t guarantee that they’ll be willing to pay – that’s a separate issue.)

You too are a professional (I assume). That being the case people should (and will) be willing to pay professional rates for your services. There will obviously be some element of negotiation for at least some jobs, and that’s OK: it’s just business. It’s part of your clients’ jobs to negotiate, and therefore part of yours.

Your fees might vary a bit anyway, depending on the client and the nature of the job. For example, for longer jobs with more billable hours per week you may negotiate a lower fee, because it’s guaranteed work for a longer period of time. I drew a distinction between consultancy and contracting earlier, and this is really what I’d describe as contracting. Consultancy I tend to think of as more being pulled in to advise on a specific issue or to help fix specific problems. It’s all obviously open to interpretation, and is something of a sliding scale.

Not everyone will be willing or able to pay your fees. For example, not many one- or two-man outfits would pay £800-1000 (or more) per day for consultancy, and that’s fine: those are not your customers. But many larger companies will.

What do I mean by larger?

Well, Red Gate regularly paid those kinds of fees (and more) for consultants and trainers from at least the time when I joined the company as employee number 17 back in 2004, and continues to do so. So, by larger, I really don’t mean that large.

I mentioned negotiation in passing a few paragraphs back. There’s an important point here: once you’ve gone through the process I’ve outlined above you’re in a much better position to negotiate. You know how much money you need to earn. You know where you can afford to compromise, and where you can’t.

You know, I hate negotiating, particularly when it comes to money, but it becomes a heck of a lot easier when you take the emotion out of the equation, and can back it up with facts and figures. You probably wouldn’t share those with your clients, because it’s none of their business, but knowing in your own mind what’s reasonable and what’s not will give you a lot more confidence.

Going back to people won’t be willing to pay for your services: that’s OK. They are not your customers. Think about the opportunity cost of cutting your fees to work for them: you may end up turning down a better paying job later on as a result, or you may gain a reputation for being cheap/easy to exploit that is hard to shake. If that happens people will undervalue you and your work, and you really don’t want that.

I’m going to stop now before this completely degenerates into a random stream of unconnected thoughts, but I hope it’s proven helpful for you. And if you have any comments or advice of your own please do come back at me – I’d certainly love to hear it.

Now go forth and charge lots of money**!

*Only half a days’ work so not a disaster.

**By which I mean a reasonable hourly/daily rate that allows you to cover all your costs and earn a decent living on top!

(Oh: one more tale of schoolboy error for your amusement. I recently sent out a quote to a potential client that I calculated using the above, but I still reckon he might think he’s getting a real bargain. Why? Because, like a muppet, I forgot to take VAT into account. Fortunately a short job again so not the end of the world.)

EDIT: Thanks to my friend Claire Taylor for pointing out that I’d forgotten to include a pension in my list of costs.