How to monetize your software agency’s most precious resource
Whenever you are in sales mode to get new business in, are you exchanging time for money? When you look at the quotes you send out to prospects, does it say something like: “Daily Rate $900, 15 days”? It might have happened that a client rejected a quote with the comment, “Others charge 20% less.” Are you offering discounts to win the business? Sometimes discounts help. But they can’t be your differentiator. There will always be somebody else charging less. Therefore, let’s talk about what differentiates you.
The Time for Money Exchange
Your developers work on-site for the client. The more hours they put in, the more revenue for the company. It seems like a lucrative model, especially if you have developers with special knowledge on staff. Competitors might also have Ruby on Rails experts. But if your developers have special Postgres knowledge, together with Search tools like Elasticsearch, that’s a different conversation. Instead of $900/day, you could suddenly charge over a thousand. When your developers return from a project, have you ever asked them if they were confident the client would be of good on their own from now on?
Does it often happen that the client keeps calling because something doesn’t work or needs help again? Indeed, you could get paid for some additional bug fixing, but the client is likely getting frustrated.
In a model like this, you are selling time for a pre-negotiated amount of money. Time becomes a commodity. Other agencies might offer time at lower prices to produce the same mediocre results. The code your developers write is stellar and runs well. But does the client care about it? That’s the problem.
If we stay in the time business, your client won’t get satisfactory results. They don’t care about abstractions or well-commented code. They need to solve business problems and need help.
Knowledge and Technology
When prospects get in touch with you, what are their problems? Some of them might need a few more people for their team to meet deadlines. On the other hand, others might have a specific technical problem they don’t know how to fix.
Before you started reading this article, did you have a preference for which clients to take on? Spoiler: You should have a preference now, and it’s the latter.
If a client needs additional team members temporarily to meet deadlines, you will exchange time for money again. There’s no chance to deliver additional value, except code.
Let’s focus on those clients with specific technical issues. Let’s say they are struggling with search in their new application. So far, Postgres Full-Text Search has done an adequate job, but now it’s time to upgrade because product requirements mandate a more sophisticated search user experience.
Elasticsearch would meet all requirements, but nobody on the team has experience with it. Also, there’s not enough time to allow developers to train at their speed. You come in to help to address the specific technical issues the team has. Once you support them to resolve all the technical problems, you could stop and go back home.
Or you take the opportunity and start a knowledge transfer and build a long-term relationship. If it is about the best result for the client, what do you think you should do? It’s time to empower the team so they can solve problems on their own. Your client gets the knowledge they need to succeed long-term.
Suddenly, you stopped selling time and started to sell knowledge instead. You bring in additional revenue at rates you can dictate because others keep charging flat fees for developers per day. You just created and sold a brand-new product without any existing competition and pricing pressure.
What effect does this change have on your company? Before, you sold a scarce resource: time. Each developer had eight hours each day, twenty days a month. You could only sell so many hours to so many clients at a time. When you wanted to scale, you had to hire more developers.
Now, you are selling an abundant resource: knowledge. It might be bound to time in some scenarios, where one of your employees spends time-on-site (or over Zoom Calls these days) with the team to teach them something new. In other cases, you start to distribute knowledge in ways that allow scaling quickly without a time constraint. Now, what’s unique knowledge within your organization? Are you ready to implement this new approach in your company and are unsure how to attract clients? Get in touch, and together we work out a strategy to bring in the right clients for your business.