Updated: Sep 8, 2022
We know that as IT business owners, our prerogative is to seek and get more clients. Demonstrate our talent and grow our business.
Yes! But… Have you ever had a client who demanded top notch services, but in the end refused to pay for your IT services? Or that client with unrealistic expectations that do not map onto the agreed scope?
Learn how to identify these types of clients through my own experience as a business owner and a few tips to handle the situation before working together result in disappointment.
In the years I have been in charge of my software development company, on 2 occasions I had the bad experience of working with clients who demanded a lot, and at the end didn’t pay the last milestone. Both of those projects started with a very similar pattern which stuck in my mind. So when I started noticing similarities with that pattern in a recent negotiation, I quickly pulled out. I wasn’t going to fall in the same mistake a third time.
So, how to spot such clients early on?
The first thing to watch out for is the bid/price/rate negotiation. It’s one thing to haggle a bit to come to an agreement, but it’s completely different when a client tries to impose a rate – usually many times lower than your usual rate. They would say things like, “I know people who have done this kind of project for less than $X”. Or “My total budget is $X” (with a tone of take-it-or-leave-it). “Why is your rate so high?” Basically you are being undermined, your professionalism or quality of your work is being questioned. All that in order to get you to accept their proposed rate.
👉 Business tip – You should always establish the parameters and scope of your work and communicate them in writing. The client will have the opportunity to reply and ask any questions, but if you sense there’s no room for a negotiation and the client is not giving you an alternative, walk away and don’t look back. It is almost certain you will be left on the losing end of the deal. If a client pushes your boundaries on pricing or timing right out of the gate, it could indicate that you'll struggle to manage the relationship going forward.
Recent Case Study
In my recent experience, the client asked for an estimate of his software development project. They provided no requirements or specs, just some wireframes, and a couple of competitor sites. So I prepared an estimate with a little discount from my regular rate, as the project seemed to be a bit large. The client replied it was completely unacceptable in time and cost. His total budget was $X amount and he was looking to do it in half the time. So I spent time planning what resources to use, the cost, task planning – my homework in general – and I was able to bring the time frame to what the client had suggested. Additionally, the total cost came to a bit under his budget.
When I sent him my new proposal, he questioned everything and wanted me to give him a detailed explanation of how I was able to come up with those figures. Then he said he would need some time to make a decision. Playing hard-ball, when it was clear the proposal was exactly what he was looking for.
☝️ Other factors to consider
Clients may ask for a free trial “to make sure you or your team have the right skills for the job.” This usually consists of some work on their project, either bug fixing, or a PoC or something else directly related with their requirements. This is very common for clients who don’t intend to pay. The promise is for a long term engagement, a position or a stake at the company, but first you have to pass the “test”.
That is a big red flag you should watch out for. In many of those cases they are looking for someone to fix the last few things before they launch, and get away with it. Or they are looking for a “PoC” which is actually an MVP they intend to show to some possible clients/investors and then start their own team.
Going back to the case study… After the client had gone through my second proposal and questioned everything in it, he moved on to setting a new appointment. He basically wanted me to present the groundwork for the project using the little information he had provided. He wanted to know how the system was going to work exactly; what functions and options it was going to have, among others.
Once we had gone over all the concepts of the project, he said that he would like to see a couple of PoC-s before starting work on the project. This was obviously out of the scope of the proposal and the bid.
This type of customer would most likely act like he has accepted your terms. But when the time for signing the contract comes, he will propose “similar” but very different terms for the software contract.
What was my answer?
In this recent case, my terms were very simple.
Put the total amount in escrow.
Divide the total amount by Y number of milestones.
Make partial payment every time a milestone is completed.
It’s a pretty standard practice in software development.
The client had accepted the terms, but when it was time to sign the contract, he proposed something else. A portion of the total cost would be subtracted from the start and the rest would be divided by the number of milestones.
milestone partial = (Total – Fixed) / Y
So he would pay Fixed at the end of the project, BUT ONLY IF we completed the project within the estimated timeline. If the project were to be completed within 2 weeks past the estimated deadline, he would pay only half the Fixed. And IF we completed the project after the extra 2 weeks, then he would not make the final payment.
They will NOT have detailed requirements/specs/documents. This gives them the flexibility to change requirements on the go. It is closely linked to the previous case. They would say something like “You didn’t deliver on time, so I will not pay”. And they won’t, even though they changed or extended the features several times during the lifetime of the project.
👉 Business tip – Make sure you have detailed requirements up front. Without specs at the start of a project, it is very hard to set a scope on a fixed price bid. If a client continues to hold expectations that conflict with your timeline or process, working together will only result in disappointment.
Needless to say, this was exactly the case of my client. There wasn’t enough information to make an estimate. Just a few wireframes and a couple of examples of competitor websites. He had everything in his favor to avoid paying approximately 1/6 of the total cost. That even after a tremendous discount from what a project like his would have cost (with other software development agencies in a similar region).
So once I saw all those points in this recent case, I quickly pulled away from the negotiation. The client was surprised and didn’t expect my reaction. He even tried to convince me to reconsider. But with such clients you can be sure they will look for a way to play you in one way or another.
👉 Business tip - Having a clear vision of the kind of clients you work best with helps you identify the right clients from the outset and avoid those who aren't a good fit for your company's needs and values. If a customer doesn't check any of your boxes, it is probably not a good fit.
If you are ever in a situation where there is discomfort, lack of trust, or even something slightly suspicious, walk away. Don’t doubt it even for a second. Even if you are desperate for new work.
It might also be another case where you're not a good fit for the client, either. It's important to recognize the limitations of what you have to offer and think about if it makes sense for you to work together.
These kinds of projects never end well for the contractor. At the end you will waste a lot more effort and energy trying to settle the conflict, compared to focusing on finding new clients.