How to Write An Effective Client Contract

by Mark Fromson 5 Minutes

As a freelancer you’ve got to protect yourself from client disagreements.  Writing a great client contract is one of the best ways to avoid disputes and ensure you and your clients are on the same page.  You’ve probably heard the terms “statement of work” and “service agreement,” but do you know the differences between the two and why they are both crucial for your business?

Statement of Work: A written contract between you and your client that defines the specific project work you will be doing for them in detail.

Service Agreement: A document that is used to define more general terms on how two parties work together over an extended period of time.

Depending on the circumstances, sometimes the documents are combined from the project start and in other cases they are separate and Statement of Work contracts are written for every single project you do under the umbrella of a Service Agreement.

If you are in a longer term relationship with your client, chances are you won’t need an overarching service agreement, and can work off of a Statement of Work for each project. Service Agreements are usually written by larger clients who present to you, the freelancer to sign. In these situations it is your responsibility to then present your client with a Statement of Work for them to sign.

Your Statement of Work Should Include:

  • An outline of clear expectations of what you will be doing for the client — which activities you will be responsible for and what items you will deliver to them.
  • A list of what you won’t be covering – this is important to avoid any future confusion.
  • What your client is responsible for. It’s always important to document your client’s duties in the contract to ensure everyone is on the same page.
  • When you plan on doing your work (dates). This is meant to protect the client than you and it can be omitted if the client doesn’t insist on it.
  • Terms for change orders and expenses. This will document the expenses the client is responsible for and what the parameters are for asking for more money to cover any additional work.
  • Payment terms. This will include how you should be paid, your invoicing process and any other terms to ensure you and your client have a clear understanding when it comes to payment.

Now that you know what needs to be included in your contract, next is putting it all together. We asked some of our freelancers and agencies at LocalSolo what they usually include in their contracts, and here’s what they had to say:

Services You’ll Be Providing

You should start your contract with a summary of your project. This will outline who the client is and what your project entails. This only has to be a couple of sentences.

“Super Agency has asked ABC software consulting to design and develop a new responsive website for their company. This website will be located on their main domain URL of superagency.com. The site will have a new organization, a new design and will be implemented on a content management system called Squarespace.”

Scope of Work

Your contract should include your list of deliverables for the entire project. There is no set length for this; it should be as detailed as needed to ensure you are covering everything you plan to do on the project.

“ABC software consulting will create a strategic roadmap and documentation for the project.”

“ABC software consulting will provide a site wireframe for Super Agency. This scope of work covers 1 revision to wireframes.”

“ABC software consulting will provide landing page designs for 5 website pages: homepage, contact us, about us, blog, and our work. Each landing page design will come with 2 client requested revisions.”

“Super Agency is allotted up to 2 one hour calls per month and 1 in person meeting per month throughout the duration of the project.”

“The new website will be built on Squarespace and will include the requested MailChimp integration and Medium API for the blog.”

Any Assumptions Being Made

You want to include assumptions as they include any additional project details that aren’t outlined in your scope. This includes delivery timelines, ongoing work and any other client specifications.

“All client feedback on the project must be reviewed and submitted within 2 business days.”

“Any change order requests must be documented and signed off on by Super Agency and ABC software consulting.”

“The client will provide all project requirements and necessary logins by August 1, 2017.”

“The site will be compatible with the following platforms and browsers: Mac OS, Windows, latest versions of Safari, Chrome, Firefox, Internet Explorer 10 and later.”

“Either party may terminate this agreement with a month’s  written notice. If the client terminates this agreement, they must pay in full for all portions of the project that have been delivered to date.”

Schedule and Terms

A schedule will help set expectations for when the project will begin and when it will be completed. Your terms also include your termination policy and what you/the client will owe should you decide to terminate the contract.

“Work will begin on August 1, 2017 and is estimated to take 90 days to complete. This SOW will be in effect until l all deliverables under this SOW are provided to the CLIENT, or until this SOW is terminated with written month’s notice by either party.”

Change Orders

As mentioned above, it’s important to set the expectations up front when it comes to change orders as this will impact budget and schedule.

“Any requested change to the scope of this contract must be presented in writing along with updated project completion time frame and additional budget considerations. Client will need to review and sign the updated change order before moving forward.”

Expenses

This is where you will line out any expenses you anticipate being part of the project that the client will need to pay for or you will pay for upfront and invoice later. This can include software, licenses, online storage, etc.

Payment Terms

You want to outline your payment terms since they set the timeline for when you will get paid for your work.

Depending on the size of the client, you can set up a “net 30” payment which means you invoice for a set number of deliverables and they pay you within 30 days.

Another approach is to ask for a retainer up front. This is usually a good idea if your client is a medium or small business.

Common Payment Terms:

A 50% project retainer is due before work commences on [DATE]

A 50% project retainer is invoiced on SOW signature

The third 25% payment is due on delivery of the following project deliverable: [STATE DELIVERABLES]

The final 25% payment is due once the project beta is sent to the client for review

The final 25% payment is due once the project is complete (The website has launched live)

The final 25% payment is due once the project is complete. Final project code and root files will be delivered to the client once final payment has been received

Signatures:

This is the area at the bottom of your contract that outlines where you and your client should sign. Include your names, addresses and a place for initials on the other pages on your freelance contract.

For software, check out SignWell; it’s an electronic signature app for all of your sales documents.

If you are in need of a template to help guide you, we created this Freelance Statement of Work Template for our LocalSolo freelancers.

No matter what, as a freelancer it is important to protect yourself which is why writing a solid contract is critical to help ensure business success. Follow this guide and you’ll be on your way to project success!

Get Our $270M Client Proposal Kit (free)

by Mark Fromson
Mark Fromson is the CEO and Cofounder of the curated freelance network LocalSolo.com and a working freelance digital consultant. Mark specializes in digital project management, user experience and functional analysis. With more than 15 years experience garnered at top interactive agencies in the US and Canada, he has played roles in over 400 projects for over 150 clients in multiple industry verticals.