Category Archives: Freelancing

What to do when the client doesn’t pay

It’s a really bad feeling to put a bunch of time into a project for a client and then get stiffed for the bill. This happens to a lot of freelancers. It has certainly happened to me. It doesn’t happen to me anymore. I’ll tell you why it doesn’t happen to me anymore in a bit, but first let’s talk about what to do when you’ve already been stiffed.

What everyone wants to know is how to recover the money. The unpleasant fact is that if you got stiffed by your client, there’s a really good chance you’re never getting your money. I’m guessing that that’s not the advice you were hoping for. The good news is that you can do something even BETTER than getting your money back (at least over the long run), which is to make sure you never get stiffed again.

In order to understand how to avoid getting stiffed, let’s take a look at the reasons a client might not pay. Here are some:

  • They don’t have the money
  • They’re dicks
  • They’re insane
  • They think you didn’t do what you agreed to do (even though you did)
  • You genuinely didn’t do what you agreed to do, and you actually don’t deserve the money
  • Some combination of the reasons above

Let’s look more closely at each reason and what you can do to combat it.

They don’t have the money

It’s better to work with clients who have a lot of money than clients who don’t have very much money. This statement sounds like a no-brainer but I’m embarrassed to admit how many times I’ve chased after prospects who ultimately turned out not to have very much money.

There are two tactics I use now to avoid working with clients who don’t have much money.

The first tactic is that I require a deposit. The amount doesn’t matter too much; a few hundred bucks is fine. The point is to see how the prospect reacts to the idea of a deposit. If they push back for any reason, that’s a negative signal. I recently “lost” a prospect because when I asked for a deposit he got all in a huff and said he’s NEVER worked with a developer who has required a deposit, and as a result he thought I was “too inexperienced”. How’s that for backwards? Every serious freelancer I know requires a deposit. It’s noobs who don’t require a deposit. I was of course very happy to let my prospect out himself as a bad apple before I invested more time into the conversation.

The second tactic I use is what Perry Marshall calls “racking the shotgun”. In my very first meeting with a prospect, I’ll often say something like this: “I like to start with a small five-thousand dollar project, and then as long as we’re both good after that, we’ll do more work together.” The key here is that the client needs to agree with me that $5,000 is small. If they don’t consider $5,000 to be small, that’s a signal that they probably don’t have very much money.

They’re dicks/they’re insane

I’m lumping these two problems together because they mostly have the same solution, and the solution is simple: the more you work with clients who come from referrals from trusted friends in your network, and the less you work with random weirdos from the internet, the smaller your chances of ending up working with crazies/assholes. This isn’t a 100% fool-proof tactic but it’s something.

You also sometimes end up with crazy clients because you get desperate. This can be solved by having a healthy lead flow, which is a whole other topic unto itself.

And by the way, here are some things I’ve found that are signals of a crazy person:

  • Extremely long emails
  • Talking way too much
  • Extreme frequency of emails/calls/texts
  • Unrealistic expecations
  • Showing up to meetings naked

They think you didn’t do what you agreed to do (even though you did)

If this is the case, I might invite you to abandon your own consciousness for a minute and look at the world through your client’s eyes. Did you lay out your agreement in a way that was 100% clear and complete with absolutely no room for misinterpretation? Did you create some tangible representation of what you were going to do, be it a document, a series of wireframes or mockups, some user stories, or some combination of those?

If the client thinks you didn’t do what you agreed to do, I think there are only two possibilities: a) the client misunderstood because there was too much room for interpretation in your agreement, or b) the client is just not the kind of person who understands plain and simple things. (People like that do exist! The world is full of fucked up weirdos!)

The corresponding solutions to these problems are a) be less ambiguous in your agreements and b) don’t work with clients who are dumb or crazy or whatever.

One of favorite ways to be less ambiguous is to go through a usability testing process with my clients. If you’re unfamiliar with usability testing, I’d recommend the book User Interface Design by Soren Lauesen. Basically the idea is that you let the client help you design what you’re going to build. If the client helps design the work, it’s much less likely that they’ll expect anything much different from what you intend to build.

And as for not working with dumb/crazy clients, it again comes back to having a strong network of people who will refer you good clients, and having good lead flow.

You genuinely didn’t do what you agreed to do, and you actually don’t deserve the money

I don’t think this one requires much explanation. If you fucked up, you shouldn’t take your client’s money.

The take-away

If you’re having problems collecting payments from clients, that’s a symptom of a problem you have further upstream. To avoid getting stiffed by clients, you should:

  • Require a deposit (or even require 100% upfront payment, making it physically impossible to get ripped off)
  • Filter out broke clients by “racking the shotgun”. Toss out a number in early conversations (“projects start at $5K”).
  • Filter out crazy/stupid/mean/whatever clients by building a strong network so you don’t have to resort to job boards
  • Lower the chances of misunderstandings by communicating agreements in a very clear, crisp manner, preferably by allowing the client to be involved in the design process

By the way, I said earlier that if a client doesn’t pay you, your money is probably gone forever. Before you hold a funeral for your invoice you might want to contact Julie Elster who specializes in helping freelancers collect outstanding fees.

The optimal number of clients to have at once

My freelancing boom-and-bust cycle used to look like this: I would get a client, usually one who wanted 40 hours a week, and work with that client for some number of months. During the time we were working together I would be too busy with client work to market myself, so when the client engagement inevitably ended, I would have to scramble to find my next gig. Since I would be desperate, I would often compromise on things like rate, payment terms, weekly workload, “coolness” of the client and other things. So I would end up with a client who was in one or more ways not a very good fit, but I had painted myself into such a corner that I didn’t have much of a choice. The worst compromise is for me to work with a shitty client who I want to get away from as fast as possible, meaning that the client engagement doesn’t result in a permanent relationship (meaning referrals), but that it ends in a “thanks for the business, have a nice life” kind of way.

I used to think that a good way to smooth out this boom-and-bust cycle might be to work for more than one client at a time. Working 20 hours a week for two clients is better than working 40 hours a week for one, right? If one goes away, it’s not the end of the world. I did in fact try out this way of working. At one point I found myself working for eight different clients at once! That was a nightmare.

What I found in practice was that two 20-hour clients adds up to more total work than one 40-hour client. Each client has a certain amount of overhead in terms of both time and in terms of space in your brain. If I juggle multiple clients, I have to make weird decisions about whose work I work on when. I rob Peter to pay Paul. I usually have a “favorite” or a “main” client, with the other client being more of an obligation than a privilege.

What I’ve come to believe is that working for multiple clients at once is not the solution to the boom-and-bust cycle.

What I think is the solution to the boom-and-bust cycle is having what Alan Weiss calls market gravity. I’ve spent the last few years building up a healthy professional network of ever higher quality. Because of this, the last time I wanted to find a new gig (and this time it was not a need but a want, which is of course always preferable), all I had to do was ping my network and I suddenly had a bunch of leads available to me.

So my strategy for security now is not to try to have multiple client engagements in parallel, but to always be forming more and more relationships with people of higher and higher caliber. If a person has enough strong relationships with the right kind of people, I think it’s unlikely that that person will find him- or herself short of work for very long.

If you’re interested in learning more about how to form more and better relationships, you can sign up to get notified of the release of my new book, Business Networking for Freelance Programmers.

Boss Clients vs. Guest Clients

I spent most of 2014 working contracts that were 40 hours a week of billable client work, or some combination of hourly projects that added up to more than 40 hours a week. Most of 2015 was about the same.

I was technically freelancing but I often found myself asking: how is this really different from just having a job?

And I think the answer is that it’s not, at least not in a very meaningful way.

Boss Clients

The story of most of my client engagements goes like this: I scan a job board for someone who’s looking for a Ruby on Rails developer. I send them an email, probably with my resume included. The prospect emails me back and set up a time to talk. We talk over Skype and they ask about my skills and experience. If they like me, we work out the details of our arrangement and they give me access to their codebase and issue tracker, and I get started.

This type of client is evaluating me as an individual. They more or less know what they want. I’m signing the contract they have all their contractors sign. I use their technology stack, their way. They communicate their desires to me and I carry out the work. Compensation is based on time and effort.

I call these clients boss engagements because it’s just a few degrees away from having a regular job.

Guest Clients

There’s another type of engagement that goes like this: I attend a networking meeting, maybe a BNI group. I stand up when it’s my turn to talk and say that I convert tedious and time-consuming Excel-based systems into easy-to-use web applications. A prospect tells me that he uses a lot of Excel, and he’d be curious to hear my thoughts on his situation. We schedule a time to get together, at which point we dig into his situation and see if it matches up with what I do. If it looks like there will be an ROI there, we jointly identify a small initial project to tackle together. The client signs my agreement, gives me a deposit and I get started.

This type of client is evaluating the ROI of a project. They have a high-level business objective but the exact way we get there is not a big concern of theirs. They sign the agreement I have all my clients sign. I use my technology stack, my way. (Maybe I even have someone else do the programming work.) They share their pains with me and I alleviate their pains, my way. Compensation is based on results.

I call these clients guest engagements. I’m making the rules, I’m setting up the system. These clients are just visiting the world I created.

Having guest clients is the key to unlocking higher rates

I believe guest clients are the key, or at least a key, to charging really good rates. In 2014 I tried to raise my rate from $75/hr to $150/hr. I met so much resistance. Eventually I basically gave up on trying to charge $150/hr and did a number of (passenger) engagements at $100/hr. There seems to be some sort of hard psychological wall somewhere between $100/hr and $150/hr where $100/hr is acceptable but $150/hr is shockingly pricey. Frankly, I can understand this, and I don’t blame people for not wanting to pay $150/hr.

Table of differences

Boss Clients Guest Clients
Acquisition method Job boards, referrals Networking events, referrals
Methods used Dictated by client Vendor’s discretion
Work arrangement Usually 40 hours or close Vendor’s discretion
Subcontractable? Almost certainly not Almost always so
Perception of vendor’s role Technician, hired hand Expert and trusted partner
Pricing method Time and effort Results
Pricing anchor Client’s perception of market rates Value of project outcome

Driver vs. Passenger Client Engagements

Note: I’ve since decided that I’m not crazy about the terms I came up with in this post and I wrote a new, slightly modified version, which I think is better.

I spent most of 2014 working contracts that were 40 hours a week of billable client work, or some combination of hourly projects that added up to more than 40 hours a week. Most of 2015 was about the same.

I was technically freelancing but I often found myself asking: how is this really different from just having a job?

And I think the answer is that it’s not, at least not in a very meaningful way.

Passenger Engagements

The story of most of my client engagements goes like this: I scan a job board for someone who’s looking for a Ruby on Rails developer. I send them an email, probably with my resume included. The prospect emails me back and set up a time to talk. We talk over Skype and they ask about my skills and experience. If they like me, we work out the details of our arrangement and they give me access to their codebase and issue tracker, and I get started.

This type of client is evaluating me as an individual. They more or less know what they want. I’m signing the contract they have all their contractors sign. I use their technology stack, their way. They communicate their desires to me and I carry out the work. Compensation is based on time and effort.

I call these engagements passenger engagements because they’re driving and I’m coming along for the ride. There’s of course nothing so wrong with this kind of arrangement.

Driver Engagements

There’s another type of engagement that goes like this: I attend a networking meeting, maybe a BNI group. I stand up when it’s my turn to talk and say that I convert tedious and time-consuming Excel-based systems into easy-to-use web applications. A prospect tells me that he uses a lot of Excel, and he’d be curious to hear my thoughts on his situation. We schedule a time to get together, at which point we dig into his situation and see if it matches up with what I do. If it looks like there will be an ROI there, we jointly identify a small initial project to tackle together. The client signs my agreement, gives me a deposit and I get started.

This type of client is evaluating the ROI of a project. They have a high-level business objective but the exact way we get there is not a big concern of theirs. They sign the agreement I have all my clients sign. I use my technology stack, my way. (Maybe I even have someone else do the programming work.) They share their pains with me and I alleviate their pains, my way. Compensation is based on results.

I call these engagements driver engagements because I’m driving and the client is coming along for the ride. Passenger engagements are okay. Driver engagements are awesome.

Driver engagements unlock higher rates

I believe driver engagements are the key, or at least a key, to charging really good rates. In 2014 I tried to raise my rate from $75/hr to $150/hr. I met so much resistance. Eventually I basically gave up on trying to charge $150/hr and did a number of (passenger) engagements at $100/hr. There seems to be some sort of hard psychological wall somewhere between $100/hr and $150/hr where $100/hr is acceptable but $150/hr is shockingly pricey. Frankly, I can understand this, and I don’t blame people for not wanting to pay $150/hr.

Table of differences

Passenger Engagements Driver Engagements
Acquisition method Job boards, referrals Networking events, referrals
Methods used Dictated by client Vendor’s discretion
Work arrangement Usually 40 hours or close Vendor’s discretion
Subcontractable? Almost certainly not Almost always so
Perception of vendor’s role Technician, hired hand Expert and trusted partner
Pricing method Time and effort Results
Pricing anchor Client’s perception of market rates Value of project outcome

A rough picture of my marketing system for Ben Franklin Labs

A common problem for freelancers/consultants is the “boom or bust” nature of freelancing. You oscillate between too much work and too little. I believe this is a fixable problem, and I think the answer to this problem is probably a solid marketing system that has been tested and proven to consistently bring in new work.

I think the most ideal possible marketing system is one that somehow operates without any involvement from the business owner. I realize that’s not realistic, but it’s the end of the spectrum toward which I’m always trying to head. The other extreme end of the marketing system spectrum is a “system” that’s nothing but desperate, frenzied cold-calling.

What I do think is realistic is a marketing system that’s comprised of activities and assets where the assets are continually becoming more and more valuable and effective and the activities are continually becoming easier, more enjoyable and less time-intensive. For example, attending a Chamber of Commerce meeting is a marketing activity. When I meet someone, I hand him or her my business card which is a marketing asset. My card may send my new friend to my business’s website which is another marketing asset. The more effective my business card and business website are at getting any particular prospect to know, like and trust me, the less time and effort are needed on my part to achieve the know/like/trust thing.

So activities are gradually replaced by assets. But in the beginning I didn’t really have any marketing assets, so all I could start with was activities. Below is a list of my different marketing tactics which are each a mix of activities and assets. Below is my first-ever attempt to document my marketing system for Ben Franklin Labs, so consider it a first draft. Both the marketing system itself and this written representation of the marketing system have huge room for improvement, but I hope this snapshot of where I stand in October 2014 is somewhat useful/interesting.

Attending networking groups

Number of leads generated from this tactic so far: 5+ (don’t know exactly)
Number of engagements won through this tactic: none yet
Description: I’ve been attending between 0 and 3 Chamber of Commerce events per month since I joined in spring 2014. I’ve also been randomly attending some other events, including a BNI group and a couple BNI-copycat groups. I plan to join the BNI group.
Funnel steps: meet a member, chat about business, follow-up email, one-on-one meeting, then either a) sales meeting(s) then engagement start or b) referral to someone else who has a need.

Attending local tech meetups (sometimes as a presenter, sometimes not)

Number of leads generated from this tactic so far: at least a couple (don’t know exactly)
Number of engagements won through this tactic: 1
Description: I’ve been attending the GrWebDev meetup and the Grand Rapids Ruby Meetup, both somewhat sporadically. I’ve been plugged into this “scene” forever and so I’m pretty well-connected with the people who come to these meetings.
Funnel steps: meet a member, chat about web development, see each other around multiple times, maybe be seen when I’m presenting, get an email saying the person’s company needs a developer and asking about my availability

Attending tech conferences

Number of leads generated from this tactic so far: 1
Number of engagements won through this tactic: 1
Description: Every year since 2012 (so 3 times) I’ve gone to Windy City Rails. Every time I go I make a few more solid connections (and strengthen existing ones) and I also get pushed forward a little as an engineer. I go to WCR because it’s within driving distance. I think I should probably be going to more like 2-3 tech conferences per year rather than just one.
Funnel steps: meet an attendee, chat about web development and probably career, follow-up email, maybe ask the new friend for a referral, maybe receive an inquiry email later down the road

Public technical writing

Number of leads generated from this tactic so far: none yet
Number of engagements won through this tactic: none yet
Description: I’ve been producing technical content for a number of outlets: BenFranklinLabs.com, AngularOnRails.com and a couple of other business’ sites. AngularOnRails.com is where I’ve put most of my content in 2014. Both AoR and BFL get good organic search traffic (1000+ clicks per month). AoR has gotten more attention, having been featured in Ruby Weekly and JavaScript Weekly. (At least I’m pretty sure it’s been in both. I get the two mixed up. It’s at least been in one multiple times.) I’ve also been in Ruby Weekly and/or JavaScript Weekly for the content I’ve written for other people’s sites. Some of my articles have gotten passed around on Twitter quite a bit, and at least two have reached the first page of Hacker News. I think my biggest couple days ever were about 5000 visits each. Although my writing seems to have gotten a relatively large amount of attention, I haven’t yet gotten a single lead from it. The reason for that could be that I haven’t yet put more than about 30 minutes of effort into trying to build a funnel around my writing.
Funnel steps: visitor reads a few articles over time, sends inquiry about my availability (this funnel has never worked and is probably naive and probably needs some more thinking put behind it)

“Staying in touch”

Number of leads generated from this tactic so far: none yet
Number of engagements won through this tactic: none yet
Description: I’m not sure what a good label for this tactic would be, but every month or so I go through my CRM and reach out to people I haven’t talked to in a while. I might just send a quick email asking how things are going. I might share a resource. I might invite the person to lunch, coffee, or some other kind of in-person meeting.
Funnel steps: I engage with the person however many times, then eventually the person sends me either a referral or asks me him- or herself about a potential project.

Referrals

Number of leads generated from this tactic so far: can’t remember – I think 3
Number of engagements won through this tactic: 1
Description: Referrals can of course be solicited or unsolicited. Sometimes during my “staying in touch” rounds I ask for referrals. Sometimes people send me referrals out of the blue. My understanding and expectation concerning referrals is that they’ll naturally become more numerous as my list of contacts and list of clients and past clients grows, although it would definitely also be good to put some sort of formal referral system in place.
Funnel steps: I ask for a referral and get one, or a referral comes to me unsolicited.

Talent marketplaces

Number of leads generated from this tactic so far: 10+, don’t know exactly
Number of engagements won through this tactic: 1
Description: I haven’t done a lot of this so far. Talent marketplaces vary widely in quality. What I mean by talent marketplace is something like ODesk (at the shitty end of the spectrum) or AirPair (at the totally awesome end of the spectrum). AirPair has sporadically sent me “expert requests” throughout the year and I’ve done a few mentoring sessions with them. The work is easy and can pay well, although so far it seems like only a good source of supplemental income, a “side dish” as opposed to a “main course”.
Funnel steps: I get an “expert request” email, I respond to it with my pitch and availability, the prospect books a session with me

Engaging with recruiters

Number of leads generated from this tactic so far: dozens, maybe hundreds, mostly low-quality
Number of engagements won through this tactic: 1
Description: I’m constantly getting emails and phone calls from recruiters. Most of these leads are junk. Most of them are for either full-time permanent positions or “staff aug” positions where you’re technically a contractor but you have to commit to 12 months and work in the office (which would usually mean out-of-state relocation), and the only difference between doing that and being an employee is you maybe get paid a little more. And my rate these days is almost always way higher than staffing agencies can afford to pay, so I almost never engage with recruiters. But once in a while it works. Just last week I accepted an offer from a recruiter where all the factors came together in just the right way for it to make sense for all three parties (myself, the staffing agency and the client). This kind of thing is super rare, though.
Funnel steps: recruiter calls and/or emails me, I respond, we have some interviews, we do some negotiation, I get an offer

Job boards

Number of leads generated from this tactic so far: dozens (haven’t kept track because I’m stupid)
Number of engagements won through this tactic: 4
Description: Job boards for me include craigslist, WeWorkRemotely.com, and this service called Workshop where I get a daily email with a curated list of job board leads. It’s pretty simple: I scan the job boards and send pitches. With 4 engagements won through this tactic it’s been my most “successful” marketing tactic so far, but it’s kind of a lame marketing tactic. It’s time-consuming and the prospects tend to be looking for “commodity developers”, meaning the prospect has a very rigid range of compensation they’re willing to consider. It’s also a 100% “me-chase-them” marketing tactic as opposed to a “they-chase-me” tactic. I intend to eventually outgrow this tactic. The good thing about job boards, though, is that there’s not much system-building necessary in order for it to work. You can just go try to find a client. But this also means there’s more competition from other vendors and more noise on the prospect’s end.
Funnel steps: I send my pitch, prospect responds with questions or to schedule a conversation, we talk, we start the project

Twitter

Number of leads generated from this tactic so far: a few (don’t know exactly)
Number of engagements won through this tactic: none yet
Description: Every once in a while I’ll search Twitter for “looking for rails”, “looking for angular”, “seeking rails”, etc. Sometimes the tweets that come up are promising, like “Looking for a Rails developer IMMEDIATELY. Email me at johnsmith@example.com”. I’ve generated some promising conversations this way, although no projects won yet. Twitter as a lead source has many of the same problems as job boards, so I plan to also outgrow this tactic eventually.
Funnel steps: I respond to the call for a developer, prospect responds with questions or to schedule a conversation, we talk, we start the project

Email newsletter

Number of leads generated from this tactic so far: none yet
Number of engagements won through this tactic: none yet
Description: I have a list of about 30 or so people who have opted into my newsletter. They’re almost all local, and if I recall correctly they’re mostly business owners. (I should probably have a better handle on who’s on my list.) For a while I was pretty good at sending my newsletter but for the last few months I’ve been totally sucking at it.
Funnel steps: newsletter subscriber receives the newsletter however many times (and maybe responds to questions in the newsletter emails), then sends a referral or inquires about an engagement, either unprompted or as a response to a direct offer or request for a referral

Casual conversations throughout the normal course of life

Number of leads generated from this tactic so far: none that I can recall (at least not in 2014)
Number of engagements won through this tactic: none yet
Description: Zig Ziglar said “always be prospecting”. So I am. I almost always carry at least a couple business cards with me in my wallet, and I meet people in my day-to-day life with surprising frequency whose lives in some way “touch” what I do professionally. I’m very conscious not to go into “sales mode” with people at inappropriate times, but there’s of course a difference between trying to sell to everyone with a pulse and a wallet and simply keeping your eyes open for when legitimate opportunities present themselves.
Funnel steps: meet someone at a party/grocery store/dark alley, talk about something to do with business or computers, get to know each other over time, the person asks me if I’d be available to do a project