Designers and developers often ask why they can’t scale their web consulting businesses. It’s possible, but it’s extremely difficult. Here’s why:
1. Each project is generally a one-off, custom solution, rather than a reusable technology. You will spend a lot of time building features specific to one customer, in exact way that customer demands, rather than building generally applicable solutions. You can’t say “No, that’s a feature only 1% of the public will use!” because they’re paying you to implement it, no matter how ridiculous the request is.
2. It is hard to win projects. Sale cycles are long, complex, and competitive, and require you to have account people to find leads, make pretty PowerPoints, fly around the country to meet prospective clients, and respond to RFPs. This is a fulltime job for several people.
3. Companies want to work with firms of similar size. You’ll get asked about the number of employees, yearly revenue, and other private details, and if they don’t match up with what the client is looking for, they will not work with you.
4. Because each solution is customized, you can’t specialize in one skill area. Let’s say you are the expert in developing Rails apps. Most web dev projects are big integrations where your Rails expertise is just one piece of the puzzle. You may have to integrate with some legacy custom system, or 3rd party software for e-commerce, CRM, email marketing, accounting, etc. You will almost always have to scramble to learn something new or find a consultant who does. This is very nonscalable as you are always forced to pick up non-core skills or spend your time as a virtual HR department and find people that do.
5. The custom nature of the work results in a lack of focus. You are spending all your time serving your clients’ needs, being dragged along by their requests, instead of implementing a focused vision to a specific problem. One day you’re building an e-commerce site, the next, setting up an email marketing campaign, and the third, creating online games.
6. You may think that you can turn your consulting business into a product business. You can, if it is small enough, say, 2-4 people, and if you make a dedicated effort to break away from the consulting model. 37Signals and Iridesco are two companies that have transformed themselves, and they were both small. Once you get addicted to the upfront revenue of projects, it becomes nearly impossible to make the investment to build a product, because this clashes with your existing business model of upfront billing for projects. You will not put in the 6-12 months of no-revenue work needed to create a new product from scratch, especially when the product may not be applicable to all of your future consulting clients, due to the unfocused nature of consulting.
7. Web dev shops don’t just do development. Large, successful ones are basically full-service marketing agencies.. You need to have a full complement of professionals, not just developers. These include web strategists, information architects, designers, HTML coders, project managers, account managers, salespeople, usability experts, branding experts, etc.
8. Your most reliable recurring revenue comes from running operations and maintenance on existing websites. This can be a good source of revenue but it is exceptionally boring work that no talented developer wants to work on. Unless you have a lot of coding grunts and project managers at your disposal, you should only accept maintenance work with rare, enlightened clients with whom you can work on a high-level, strategic role.
9. The true leaders of a service biz like this are sales and account managers. To win projects you have to spend your time building relationships, not technology. The key skills in a consulting business are soft skills such as sales, hiring, marketing, and project management. Tech people are a cost center in a consulting business, not a revenue generator. (The best role, if you’re a tech person working on a web consulting business, is to get involved in sales. Clients really appreciate it when a tech-savvy person can explain complex technical issues to them in plain English, and they will have more confidence in your team.)
10. In a consulting business, you almost always charge by the hour. Even huge, multi-million dollar projects are broken down into line items by man-hours, and savvy clients will insist on seeing the breakdown to make sure you’re not “making too much”. But hours != value. In a product business, you can charge whatever the market will bear regardless of how long something took you to do, but in a service business, if something takes you an hour to do and you charge $200 an hour, then you’re getting only $200, even if it might generate $10,000 in value. This results in a disincentive for people to work efficiently, exercise judgment as to the use of their time, and engage in out-of-the-box problem solving.
11. Unlike a startup, money cannot be used to scale a consulting firm. With a startup, more money can be used to hire more developers to build your product, which will hopefully gain traction in the marketplace, resulting in growth that is faster than linear. In a consulting firm, the most you can do with extra money is hire additional sales people. They then need to scare up some projects, and repeat this indefinitely. This is a slow, linear growth path.
12. In consulting, projects are self-contained You can’t build A and then build B on top of A that will take you to the next level of profitability, then build C on top of B You’re just building A, followed by A, and A, A, A, indefinitely. The most that you can take from project to project is general domain expertise, contacts, and reputation.
This is not to say that you should not work as a consultant, or that you cannot make a lot of money through consulting. It is important to be aware of these traps, plan ways to work around them, and to accept that it’s not easy to grow from a 1-person firm to a 100-person firm.