How to Write a Contract for Freelance Work That Actually Protects You
Ten years of freelance contracts, scope fights, and one $4,800 lesson distilled into the clauses that actually hold up when a client stops paying.
I lost $4,800 in my third year of freelancing because I sent a project brief in an email and called it a contract. The client read “ongoing support” as “unlimited revisions until The Heat death of the universe.”
I read it as “I’ll fix bugs for thirty days.” There was no document that said which of us was right, so there was no leverage, and I ate the loss.
Trending Now!!:
That invoice is still the most expensive education I’ve ever paid for, and it’s the reason I now treat contract drafting as a core skill of the job, not paperwork I do between the real work.
Ten years and somewhere north of 300 client engagements later, here is what I actually put in a freelance contract template, why each clause exists, and which ones I added only after getting burned.
Why a Verbal Agreement or Email Thread Isn’t a Contract
Most new freelancers think they have a contract because they have a paper trail. An email saying “sounds good, let’s start Monday” is evidence of intent. It is not an enforceable agreement with defined obligations, and the difference matters the moment a client stops paying.
A real freelance contract does three jobs an email thread can’t:
It defines scope precisely enough that “is this included?” has one answer. It sets payment terms with teeth, meaning consequences for late payment that exist before you need them, not negotiated in the moment when you’re already owed money. And it allocates risk: who owns the work, who’s liable if something goes wrong, what happens if either side wants out early.
If you’re searching for what to include in a freelance contract because a client just asked you to start work, the honest answer is: don’t start until the document below exists and both of you have signed it.
I know that’s inconvenient when a client wants to move fast. I’ve broken this rule exactly twice in ten years, both times for clients I’d worked with before, and both times the lack of a fresh contract caused a scope argument that a contract would have settled in one sentence.
The Clauses That Actually Matter
Scope of Work, Written Like a Lawyer Expects a Fight
Vague scope is the single biggest source of freelance disputes I’ve seen, run, or heard about from other freelancers. “Redesign the website” is not in the scope. “Redesign the homepage, About page, and Contact page using the existing CMS, delivering Figma files and one round of implementation support, excluding new page templates or e-commerce functionality” is the scope.
Write scope as if you’re explaining it to someone trying to find a loophole, because eventually someone will try, even unintentionally. List deliverables, not intentions. List what’s excluded, not just what’s included. A line like “this does not include logo design, copywriting, or SEO audits” has saved me more arguments than any other sentence in any contract I’ve written.
Payment Terms With an Actual Spine
Net 30 is an industry default, not a law of physics. I run Net 15 on new clients and only extend to Net 30 once we have history. The terms that matter aren’t just the deadline; they’re what happens when the deadline passes.
My standard language includes a late fee, typically 1.5% to 2% per month on the outstanding balance, disclosed upfront so it isn’t a surprise later. It includes a deposit, usually 30% to 50% before work begins, which filters out clients who were never going to pay anyway. And it includes a clause stating that work product, files, and final deliverables remain my property until final payment clears, which gives me something to hold even if a relationship goes sideways.
If a client refuses a deposit clause outright, that’s information. In ten years, the clients who pushed hardest against a deposit were disproportionately the ones who later pushed back on the invoice too.
A Kill Fee, Not Just a Cancellation Clause
A kill fee clause protects you when a client cancels a project after work has started but before it’s finished. Without one, “we’re pausing the project” can mean weeks of unpaid work that you can’t easily recover, because you didn’t deliver a finished product and the contract didn’t anticipate a partial one.
My kill fee structure ties to the project phase. Cancel before work starts, and you forfeit the deposit. Cancel after work begins, but before delivery, you owe a percentage scaled to how much is done, usually 50% if we’re past the halfway mark. This isn’t punitive. It’s compensation for time that was reserved for this client and can’t be unreserved retroactively.
Scope Creep Language, Because It Will Happen
A scope creep clause states, in plain terms, that work beyond the defined deliverables requires a written change order and additional payment before it begins. This single clause is why “can you also just” stopped being a four-word threat to my margins.
I write it like this: “Any request for work outside the Scope of Work section will be quoted separately and requires written approval before commencement. Verbal approval does not constitute authorization.” That last sentence exists because a client once told me, “yeah go ahead,” on a phone call and then disputed the invoice for that exact work two weeks later.
Intellectual Property and Usage Rights
Who owns the work when the invoice clears matters more than most freelancers think when they’re starting out. The default in most jurisdictions, including under U.S. copyright law, is that the creator owns the work unless there’s a written agreement transferring it, even if the client paid for it. That surprises a lot of clients, and a lot of freelancers don’t know it either.
I specify exactly what transfers and when: full ownership of final deliverables transfers upon receipt of final payment, not upon delivery. Drafts, source files, and unused concepts remain mine unless separately purchased.
If a client wants a registered copyright assignment for something high-value, that’s a separate negotiation, and federal registration with the U.S. Copyright Office currently runs in the range of $45 to $65 per work for a standard online application, though the Office has a fee increase under review in 2026, so that number is worth confirming before quoting a client.
Termination Clause
Either party should be able to exit the relationship without it becoming a legal event, provided the exit terms were agreed in advance. My standard is 14 days’ written notice from either side, with payment due for all work completed up to the termination date.
I’ve used this clause maybe six times in a decade, almost always for clients whose business priorities shifted, and every one of those exits was clean because the contract told us exactly what we owed each other.
Liability and Indemnification
This is the clause freelancers skip because it sounds like something only a lawyer needs. It’s the clause that matters most if a client’s product, built partly on your work, causes harm or gets sued.
A limitation of liability clause caps your financial exposure, typically at the value of the contract itself, so a $3,000 project can’t expose you to a $300,000 claim.
I keep mine simple: liability is limited to fees paid under this agreement, and neither party is liable for indirect or consequential damages. It’s not bulletproof. It’s a meaningful ceiling.
Dispute Resolution, Decided Before You’re Angry
Decide now, while you like each other, how disagreements get resolved later, when you might not. I specify that disputes go to mediation first, then binding arbitration in my home state, before either party can go to court. This avoids a worst-case scenario where a client in another state drags you into litigation somewhere inconvenient and expensive.
It’s also worth knowing, before you ever need it, that small claims court is the realistic backstop for most freelance invoice disputes. Limits vary enormously by state, generally somewhere between roughly $2,500 and $25,000 depending on jurisdiction, and you don’t need a lawyer to file.
I’ve never had to use it, but knowing the number that applies in your state changes how you negotiate a stalled invoice, because you know what your actual leverage is if it goes nowhere.
Independent Contractor Agreement vs. Freelance Contract: Does the Difference Matter
People searching for an independent contractor agreement vs. a freelance contract usually expect a meaningful legal distinction. There mostly isn’t one. Both terms describe the same thing in practice: a written agreement between a self-employed worker and a client, as opposed to an employment contract.
“Independent contractor agreement” is more common in legal and B2B contexts and tends to include more formal language around tax classification, since misclassification is a real liability for the hiring company, not just the freelancer. “Freelance contract” is the term used more often in creative, marketing, and digital services work.
What actually matters isn’t the title at the top of the document. It’s whether the contract correctly states that you’re an independent contractor, not an employee, responsible for your own taxes, equipment, and schedule. That single classification line protects the client from labour law exposure and protects you from being treated, functionally, like an employee without employee protections.
What I Got Wrong for Years
I didn’t include a clause about who pays for revisions beyond an agreed number until a client asked for nine rounds of feedback on a single landing page. Now every contract states the number of included revision rounds and the per-round rate for anything beyond that.
I didn’t specify a communication SLA until a client expected same-day replies on weekends because nothing in writing said otherwise. Now the contract states response windows explicitly: replies within one business day, no guaranteed weekend availability.
And for years I didn’t require a signature on a specific platform, just an email reply saying “looks good.” That’s legally workable in most places under e-signature laws, but it’s a mess to produce as evidence if a dispute escalates.
I use a proper e-signature tool now, not because the email wasn’t valid, but because a timestamped, platform-verified signature ends an argument before it starts.
What a Client Won’t Pay Freelancer Looks Like Before It Happens
The clients who eventually don’t pay rarely look like trouble at the start. The pattern I’ve learned to notice: they push back hard on a deposit, they want to “tweak” payment terms after the contract is already drafted, or they ask to start work “informally” while we finalize details.
Every one of those is a request to operate without the document that protects you, and the document is the entire point.
A contract doesn’t prevent every dispute. What it does is convert an argument about who’s right into a reference to a sentence both people already agreed to. That’s a smaller, calmer, faster conversation, and after ten years of freelancing, calmer and faster is most of what I’m optimizing for.

