🌓

How to spot bad clients as a Web Developer Freelancer/Agency It can be a tough decision to reject work yet you can end up paying for a bad rushed decision which will eventually burn you out or make you run out of cash.

by
on January 18, 2016
(8 minute read)

After many years freelancing and dealing with a variety of people and clients, I’ve realized the most important thing to keep your business floating and your sanity straight is not to sign great contracts or hire the best lawyers in town but to know when to say No to work proposals.

Simple Cloud Hosting Built for Developers

On average, 1 out of 5 clients (YMMV) will be rotten apples and it is your job to identify them before going through. It can be a tough decision to reject work, specially when someone is starting or when money is an issue, yet you will end up paying for your mistakes which will eventually burn you out or put you into a huge financial risk.

So, without further ado, here’s my list of Project Failure indications grouped by Finance, Process and Product.

Finance

The client is more worried about the cost of the project than the quality of the final product

This is the strongest indicator ever. Very subtle yet a huge sign on what the priorities of the client are and why he will always put money first, even before people or results. Yet in the end, demand the impossible triangle and blame you for it:

time-cost-quality-triangle

The client doesn’t want to pay up-front fees/retainers until he sees something

People that are not to be trusted don’t trust other people (they think everyone is like them). That’s why they don’t want to pay upfront, because they imagine themselves in your situation and see that they shouldn’t be trusted with timelines and results.

Which means that they will be unreliable, timewasters or pay late.

The client wants a free sample before committing

Imagine asking a doctor to give you a boob job for free before providing him with more work, would you do it? Value yourself, if you don’t have any projects or credentials to show off and need to do something for free then build things for yourself, either a cool idea you had, some design that you can later sell/use somewhere else or redesign an existing popular website which is always a fun exercise.

They delay payments under any excuses they can find

Unfinished product, contract not met 100%, spent all budget for this month, clearing invoices at the end of the quarter… Clients that make excuses not to pay do not value your work, yourself, your bank account or your mortgage.

They pay you with shares/stock

While it may sound appealing to get stocks from a soon-to-be a unicorn startup, there are two problems:

First, when you get shares from a company, you get tied to it. Which means those shares are nothing until the product succeeds or the company is sold. Furthermore, most contracts will mention vesting: leave the company early (usually 3-4 years) and you don’t get any shares.

To me, it sounds suspicious when someone wants to pay in shares (unless you are becoming the CTO): “if this guy is having to pay with shares it means he either doesn’t believe in his company or he doesn’t have money, he doesn’t have money because either his product doesn’t earn money, he has planned the whole thing wrong or investors are not interested in putting money in, if investors don’t trust this company with their money, why should I trust it either?“. Red flag.

Second, share valuation by the founders is always inflated and overestimated, at least until fund raising successfully from external sources (after seed funding and business angels). Which means you will get shit. The founder will value his company at $1,000,000 and let’s say you build the company’s SaaS website for $10,000 and took you two or three months. That is 1% of the company. Now think about what did it take to build the company to where it is, did that company really took 200 or 300 months to build?

They pay you with product/service

  • Hey, can you make a website for my restaurant? You’ll get free food any time.

Ok, let’s imagine this sounds like a great deal. Now, if the website costs $5,000, that will be 250 meals at $25 each (customer value, at the restaurant’s cost much less). You may love their food yet you will need at least a year to eat all those meals and guess what happens during that year: free work! The restaurant owner will keep asking to add new features, changes and more since hey, you are eating for free!

Product

They don’t know what they want

  • Hello! I just wanted an eCommerce with 50 products, how much would that be?
  • That will be $$$ and it’ll be done in a month.
  • Ok! In a month? Perfect.

So you start working on it and when you’ve already got half done:

  • How’s it going? It’s been two weeks, you getting there? Listen, we were thinking at the office about our international expansion, let’s add Spain too, in Spanish, but make it so they can pay in Euros there.

A few days later:

  • Hey there, you will need to let me choose different prices for each country.

A few days later:

  • Hey there, products need to have color variations and bulk pricing discount.

A week later:

  • On a second thought, we’re gonna need to include a few more products, just 20 more.

Two weeks later:

  • Did I tell you to add size, weight and foo variations to products also? I’m sure I did. Whatever, we need it really urgently, we hired a massive PR firm that’s got everything ready to launch and we’d be losing tons of money if delayed.

And the scope changed again and again! Yet you will be to blame if it is not delivered on time. Remember, when the project scope changes, make another contract with more money and more time. If the scope keeps changing constantly and the client never knows what he wants, either bill hourly (in 15 minute increments) or dump the client.

They want to build unrealistic stuff

Sometimes you will get emails or phone calls from people wanting to build an incredible new thing such as a meta-engine that works like Uber with social sentiment analysis integrated that measures business interoperability in the cloud for parents. Consider it Spam, don’t even waste a single second.

They delay deliverables and required materials

This will only make everything go worse, because it will affect their project and all your other projects and personal life too since you will need to make up time to recover the lost time waiting for the bad client. Yet again, they will end up blaming you for delivering late. In these cases, cancel the project immediately, I know it sounds rough, but trust me. Always have a Deliverables clause in your contract that specifies that.

Another option is to charge a Late fee, but I would only recommend for it if the client is on time most of the time, not for the first delivery.

Process

They arrive late at meetings

When someone cares about something he makes it a priority. If a client arrives late at your meeting without a very good excuse it means your project is not that important, you are not important… And the meeting is just the tip of the iceberg, the project, the deliverables, the payments… Everything is going to be put below other stuff and you will end up paying for it.

Also, if the client doesn’t consider the project important, at the time of payment he might already have other plans with his life and end up not wanting the project at all and not paying you, even if it means not getting the project.

The client has never been in the process of building a website before

They will demand a website like Airbnb at the cost and time of a WordPress blog. And still consider it extremely expensive so they will abuse support and availability. They will also ask for many revisions and compare you to their 12 year old cousin who builds websites on weekends.

They don’t have the tiniest clue how a website works

I’ve had clients that had no clue how websites worked and expected all sorts of crazy ideas… In record time. I’ve now learned a thing: if the client is keen to learn and listen to my advice, I will allocate more hours (and budget) to make time to educate him into what’s possible and what’s not as well as how websites work. If the client doesn’t want to listen, I’ll simply walk away.

A question that I always make to clients is: “Have you ever been through a website redesign process before?“. It gives you a lot of insight.

All the former developers they’ve hired have been a disaster

And by this I mean more than 50% of them. Every now and then you can find a below average professional, but if every time you hire someone he/she can’t deliver to your expectations maybe the problem is somewhere else. During negotiations, some prospects told me crazy stories about how they’ve been having bad luck with developers and designers for months and years. The reason is the client didn’t have a clue what the job really entailed and how complex it was so Developers burned out and ended up running away and getting the blame for it.

You work with the intern

The single point of contact for the company (there should always be only one single designated person at the other side to avoid miscommunication) is an inexperienced intern or someone without the final say. This will not only generate extra bureaucracy but make meetings and phone calls less effective, and unavoidably change the project’s scope because the person that makes the decisions is not in the loop. Furthermore, since everything gets to the decision maker through the intern, all information will be filtered and whenever issues arise you will inevitably look like the bad guy in the story.

Always make sure that the company assigns someone that can make final decisions and has experience.

Over controlling and micromanaging clients

The one that needs status updates several times a week (or a day) and will keep pushing for more. This kind of client will burn you out fast. They want to see results, see things changing, every day, and will ask for a thorough explanation every time there’s not enough changes showing on the test site. Usually these kind of clients are very inexperienced, either it’s their first project or they’ve just been promoted and feel a lot of pressure on them to prove they are worth it. Here’s a hilariously true article on it.

Quick note when getting phone calls, always specify in the contract that minimum billing starts at 15 minutes, even if the call is 2 minutes long. This will avoid clients interrupting constantly with stupid questions.

Friends and family

I’ve got invites for a free bank transfer!

It is dangerous because there’s a thin line between professional and personal matters, decisions may not be taken objectively and you can end up harming the project, and most importantly, your relationship.

Trust your gut feeling

If there’s only one red flag, you can try and educate your client. After all, trust your gut feeling. If you suspect the price doesn’t look right, you don’t trust the client or you don’t enjoy working on the project, reject it straight away. It is always better to say no at the start.

Free 100% online banking account

💳 Get your free debit Mastercard

No comments yet

Treasure Chest

Get notified of new projects I make
Usually one email every 3 months

Follow me for cool new products and interesting findings on graphic design, web development, marketing, startups, life and humor.


/*Twitter*/ !function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs"); /*Facebook (function(d, s, id) {var js, fjs = d.getElementsByTagName(s)[0];if (d.getElementById(id)) {return;}js = d.createElement(s); js.id = id;js.src = "//connect.facebook.net/en_GB/all.js#xfbml=1&appId=28624667607";fjs.parentNode.insertBefore(js, fjs);}(document, 'script', 'facebook-jssdk'));*/ /*Google+*/ window.___gcfg = {lang: 'en-GB'};(function() {var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true;po.src = 'https://apis.google.com/js/plusone.js';var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s);})();