I’ve noticed recently that many companies don’t really know what they are selling. Companies could hit a certain level of success without knowing what they sell, trusting the consumer to recognize it for themselves. However, this lack of understanding is a limiting factor and stops growth altogether at some point.
I wanted to publish different versions of this blog post for a long time, but I always felt that my answer to the question “What are agencies selling?” was incomplete. Now, after 5 years of growing Dakai, I think I have an almost complete picture of what we are selling, and therefore an answer to the question.
This blog post focuses on software agencies (the world I understand deeply), but a lot of it applies to other types of agencies as well.
You are selling peace of mind. You are not selling developer hours or products; you are partially selling a process, and the only goal is to guarantee the customer peace of mind. The definition of success for agencies is when all of the customers know that you are building the right thing for them, caring deeply about their product and business.
Context: How software agencies work
Very simply, an agency is a set of processes, and people who follow these processes. The agency iterates on these processes with each new client and ends up doing very efficient work. The main business models I got to know over the years are:
- Creating a product or template for a specific market segment and selling it together with customizations. This way, you can charge less than creating it from scratch each time. This is also called white-labeling.
- Creating fully custom software each time for almost every industry (not many agencies do this at scale as it’s the least profitable, I ended up on this route with my company and enjoyed it). The upside is that you always get exciting challenges, however, you ‘waste’ a lot of developer hours each time, and margins are reduced because you have to write almost everything from scratch.
- Being the go-to team/consultant of one technology stack (such as Elixir, specific JS frameworks). The drawback of this model is you have to be one of the best, and you will spend your time on non-billable tasks such as open source contributions and writing tons of blog posts. In this model, sales almost becomes secondary. This type of company can become very successful but also face challenges such as demand for their technology of choice decreasing over time.
Some companies are a mix of these, but I found it easier to focus on one business model instead of merging multiple of them.
From the delivery side, good software agencies need to have a playbook; a lesson I learned later than I should have. The playbook works best if the team follows it rigorously and iterates on it frequently. Leaders need to listen to recommendations continuously from both their team and the clients and iterate on this playbook. The developers, the people who are closest to building the products themselves, should have a vital say in it.
Think of your playbook as the strategy for a football match. You (the CEO / upper manager) are the coach, and your developers are the players. With each game (project), you learn a lot of valuable lessons which you integrate into the strategy. This process results in a better playbook, but as a great byproduct it also leads to a more experienced team. My experience is that many agencies do not realize that a big part of what they sell are their processes. Without a playbook the process is constant improvization with each new customer and therefore an unclear image of the company itself.
In certain situations, you’ll have to rely on your collective gut feeling as a team while ignoring the playbook. The best-performing teams find a good balance between intuition and commitment to the process. Training your team to think for themselves is an essential part of your operations, but this is a vast topic I will cover in another article.
Why contract an agency instead of hiring people?
This question came up during every sales call I took in the past five years.
The number one reason for hiring agencies is peace of mind. If you are in the management layer of a company (small or big), you’ll have lots of people coming to you with different questions and many tasks to tackle. Your new project might be valuable for your company, but you have no way of hiring ten new people, including product managers, project managers, developers, and designers, training them, nurturing their work, and spending time with them. Sometimes a team expansion can come with significant headaches for already busy managers as well as put pressure on the team culture without extra managerial time invested in collaboration. This can all be solved by hiring an agency.
The expectation for an optimal solution from the client’s perspective is: “I draft up a detailed specification with context and all the product features, and I only need to spend a few hours each week checking in with an agency. I don’t want to worry about the timeline, small product decisions, or the design. I want to make only minor directional adjustments, get a summary of progress and risks I can report forward, and call it a day”.
By my definition, this is ultimately **peace of mind** in the form of a reliable process. When a company does the work, it takes care of the micro-decisions so the client only has to worry about the macro. They don’t have to build a process for more people because the agency already has a good process internally with a proven track record. This way the customer only needs to focus on strategy, and let the agency handle the rest.
How can you spot the agencies that deliver great products?
I would say that the large majority of agencies don’t realize what they are selling and think of themselves as a company that delivers code, so more code output equals better results. This steers most collaborations towards frustration and micromanagement. The code output of agencies can be excellent in quality and magnitude, but it can burden managers with hours and hours of extra work. This is the point when hiring an agency can be more work than managing a team internally. This all suggests that code itself is not the main product of a software agency. Funnily enough, the most important output of an agency might be communication.
There are a few strategies that will help you spot the companies that stand out from the crowd:
- They ask product questions and want to understand the ‘why’ of the thing you’re building.
- They have designers and product managers in-house (this is often highly overlooked and if asked for, outsourced). These positions guarantee that your product & business have their own decision making unit within the agency. You can generally see if these positions are present through the agency’s website or other assets. For example, are their presentations looking nice and tidy, or is it just a default PowerPoint template? Are the graphics on their website custom designed, or is it just a WordPress template?
- The founder(s) is/are not just highly technical but also very product-focused. They understand the things they build and are involved in the creation of most of the products.
- They have experience in your industry, or industries that operate in similar ways to yours. They ask about your specific industry if they don’t have enough experience.
- They are not cheap – usually, you pay the price with your own time if you pick the most affordable option out there. A good range in which you can find the right partner is $100/h to $150/h.
- The best agencies usually work with a retainer, as far as I’ve seen. We also adopted this payment structure due to shared incentives. Retainer collaborations can quickly accommodate scope changes in the sprints following the request, and product iterations are welcome. Workflows can generally be adjusted according to the needs of the client, furthermore it creates space for us to brainstorm and recommend more features. On the other hand, during fixed-cost projects (where there’s a fixed cost you pay for the product at the end of the day), the structure is very rigid, and even if you had a good spec the agency’s incentive is to finish it ASAP. The agency will have to compromise on quality just enough for it to pass the spec, and not care much about what they are building. Governments and enterprises usually use this structure for a good reason. It eliminates many risks but a lot of the upside as well. Retainers enable creativity, feedback, and innovation that’s needed when developing new products.
- One of the most critical points of all: Trust your intuition. You might feel that something is off, that you’ll have more stress with this partnership than you wanted. In this case, proceed to the next agency. Interview at least 5-10 agencies, and instead of looking at the price they offer, look at the value they will provide.
Tips for Agencies
- As a founder, care passionately about the products you build and hire driven people (including talented product managers) who make sure these products turn out top-notch.
- Read books on business processes and continuously improve yours.
- Make sure every single person on your team cares deeply about the projects you work on.
- Charge more if you build better products, not if you write better code.
- Build great relationships with your clients so you can understand their context and their exact needs. It’s usually not as simple as “more revenue”.
- Look at each project as an opportunity to improve.
- Give your team enough context so they can think of the product they are building as if they were the CEO. Push them to give feedback as you go. At Dakai, we sometimes go as far as asking employees what they’d do if they were the director of our client’s comany.
I hope this will help both sides of the agency/consultancy world align on incentives and result in better collaboration. Even in an industry as mature as this, there’s a lot to learn, and it isn’t easy to find valuable guides. When starting out as an agency five years ago, no one explained any of the above to me which would’ve helped a lot in how we formed our business. I had to figure most of these out through trial and error, so I hope this blog post will be useful for others in the same shoes.
At Dakai we are trying to change the image companies have of agencies and share our experience doing so.