Jan 2018


Get matched with the perfect freelancer
Project Lead:
David Head


A negative feature of freelancing is the feast and famine cycles in-between contracts. As a freelancer, it's scary knowing your income is about to get cut in half or drop to 0. The reason this happens is that it's hard to simultaneously market yourself and do client work, even if you're in the top 1% of your field. Ideally you have someone who can help queue up the next job for you.

As a client hiring freelancers, it can take weeks to months to find and vet freelancers. It's also common to be unsure of a realistic budget or timeline for a project. Ideally someone experienced in your network can suggest a freelancer to hire and what to budget.

Here we built a matchmaking and budget recommendation tool to solve both of these problems. A client could fill out a project brief form while matches and recommended time/cost budgets appeared and updated alongside it.


Our broad goal at Sixty was to build a “LinkedIn for Freelancers”, where we had a majority of freelancers in the world listed. That way, clients could come to one marketplace and be able to sort through every freelancer -- similarly to how recruiters use LinkedIn right now.

Any other product we felt would be too similar to a clone of Upwork, Fiverr, Toptal, or any one of the other freelance marketplaces that existed.

Supply-side discovery

To build this product, we determined the hardest part would be getting the best freelancers on the platform and retain them. The very best freelancers get most or all of their business from referrals. They also notoriously dislike freelance marketplaces.

We started in early 2018 by developed relationships with a handful of top freelancers that we felt were representative of the broad ecosystem. We asked them about their current experience with marketplaces, and what a marketplace that they would join looked like. Their responses:

  1. The marketplace couldn't create a race-to-the-bottom pricing dynamic favoring the lowest bids from freelancers.
  2. Top freelancers sometimes spend hours per month responding to emails and taking calls with clients they don't want to work for. If the marketplace could filter those clients out, that is a value-add.
  3. They disliked the marketplace fees, but would pay them if the client quality was better than what they already had.
  4. They disliked paying ongoing fees when they retained a client after the project, and the marketplace was no longer adding value. They thought tapering down the % fee based on volume of spend was fair though.

From a product and growth perspective, the way to accomplish these was:

  1. Prioritize acquiring clients focused on hiring high quality freelancers (versus low cost ones), and design the UI to highlight why those freelancers were great matches.
  2. Collect an interest profile from freelancers that acts as a hard filter for clients and jobs they don't want, and a way to prioritize the clients and jobs that they do.
  3. Collect data on freelancers current clients, projects, and revenue, and prioritize matchmaking and introductions accordingly.
  4. Create a tapered fee system to incentivize client retention, as well as a way to incentivize paying ongoing fees and not disintermediating the client relationship from the marketplace.

To accomplish matchmaking with this degree of specificity, we needed a larger volume of data across more parameters than any other marketplace that exists (still to this day).

We thought asking for that much data from already successful freelancers could be a fatal flaw in the business. So we ran an experiment:

  1. We took niche of freelancers, Squarespace designers of which, there were about 1000) and developed relationships with the top dozen or so.
  2. We added them to a closed beta, and had them fill out Google Sheets with the data we needed for matchmaking.

We got the data!

One of the Google Sheets tabs collecting web design freelancers' historical project data

Demand-side discovery

Once we proved we could get the data, we reached out to a representative group of clients to ask about their current experience hiring freelancers, and clarify what was most important to them. Their responses:

  • They spend many hours over many weeks searching for and interviewing freelancers.
  • A large waste of time is spent tracking down good freelancers who end up being unavailable.
  • They don't know what to budget for their project from a time/cost perspective.
  • When it comes to working with freelancers, common problems are 1) freelancers not having the skills to accomplish the work, 2) freelancers being hard to communicate with mid-project, and 3) the good freelancers not being available for follow up work after the project is complete.

From a product perspective, the way to solve this was

  • Develop a way to automatically vet freelancers, and factor that into matchmaking.
  • Collect availability data from freelancers and adjust matchmaking accordingly.
  • Collect cost and duration data from the freelancers as part of the data they were already filling out. Use that to create a quote estimation tool.
  • Track project success and detailed feedback, incentivizing freelancers to over-communicate and share info about future availability.

Getting traction with the MVP

With broad product requirements in hand, we started targeting clients that our beta group of top freelancers would be interested in. We also constructed our v1 matchmaking and quote prediction algorithms. The growth plan was to expand out from the beta user group into a product for web designers, then one for knowledge workers freelancing overall.

When clients sent in project inquiries, we got on a phone call and manually collected data points to feed into our algorithms. Then shared the estimated quotes over the phone to make sure that budget worked. If it did, we'd intro the client to the top designers in the results.

I personally did the first few dozen calls myself to tune the algorithm logic. Then I hired an operations lead to take over while I continued to work with her on the product.

v0 Google Sheets interfaces for the admin matchmaking team

Once the product was stable, we built a front-end out of Vue.js for clients to self-serve with.[1] To reduce time-to-ship, we used the Google Sheet as a microservice to deliver the algorithm results by sending and returning API requests through Zapier. (All described in the video above.)

For the first few clients using the interface, we sat on a phone call with them in real-time to gauge their reactions. More often then not they said:

"Wow, I had no idea something like this existed".

At this point, we decided to open up the closed beta to the rest of the web designers, and within a few weeks we had over 60% of Squarespace designers (over 600) on our waitlist. To grow demand, we used the projects dataset powering the algorithm to create an SEO growth engine called the Showcase — which grew organic supply and demand traffic by 30% WoW.

My Involvement

  • Managed the overall product development.
  • Led customer development with clients and freelancers, as well as assembled and managed our beta testers to iterate on the product and algorithms.
  • Led prototyping using GSheets and Zapier. GSheets was both the front-end UI for freelancers, and the backend to power the matchmaking algorithms.
  • Facilitated client intake calls, then hired and trained an operations lead to take over.
  • Wrote the code that powered the matchmaking and prediction algorithms based on a combination of heuristics and user data.

[1] In the demo video, you'll notice the quote and matchmaking results change with each user input. This replaces some of the back-and-forth nature of scope refinement for clients, as it helps educate them as to which variables change the cost and scope of the project. That results in considerable time saved on both sides.

More Media

No items found.
© 2021 | Site Built in Webflow