Kill Fees for Freelance Developers: Clause and Amounts
By Mark Fulton · 2026-08-12 · 12 min read

A kill fee is a cancellation fee you charge when a client ends a project early for reasons that aren't your fault. For freelance developers it's normally written as a percentage of the unbilled remainder of the project fee, on top of everything already delivered, and the percentages in common use sit somewhere between 25% and 50% depending on how much notice you get and how much capacity you reserved. It exists because your calendar is the product: when a six-week build dies in week two, the four weeks you held open don't refill on twenty-four hours' notice.
The kill fee is borrowed from magazine publishing, where an editor who commissions an article and then decides not to run it still pays the writer a fraction of the agreed rate. The mechanic transfers cleanly to software work, but the numbers and the triggers don't. A killed article costs a writer the hours already spent. A killed build costs a developer the hours already spent plus the booked weeks that are now empty, and empty weeks are the expensive part.
What is a kill fee and when does it apply?
A kill fee compensates you for cancellation, not for work. That distinction is the whole clause. Work already done is billed as work already done — at your rate, on your normal milestones. The kill fee sits on top and covers the thing an hourly rate never captures: you turned down other engagements to hold the slot.
For developers, the cancellation triggers cluster into a few recognisable shapes, and they're worth naming in advance because each one arrives with a slightly different conversation:
- The mid-sprint pivot. Three weeks into a build, the client demos an early version internally, someone senior sees it, and the product direction changes. Nothing you built is wrong. It's just no longer wanted.
- The budget cut. A funding round slips, a quarter comes in soft, or a parent company freezes discretionary spend. Your contact is often as blindsided as you are, which makes this the easiest kill fee to collect politely and the hardest to collect quickly.
- The acquisition. The client gets acquired and the acquirer has its own platform team. This one usually kills the project outright and often comes with a genuine willingness to pay to close things cleanly, because the acquirer wants no loose contractual ends.
- The in-house hire. They finally filled the senior role they'd been recruiting for, and the new hire wants to own the codebase. Reasonable, and still a cancellation.
- Indefinite hold. The most corrosive version, because it isn't framed as a cancellation at all. "Let's pause until Q1." A kill fee clause with a defined pause limit — say, work suspended beyond 30 days counts as termination — converts a hold into a decision.
Two things a kill fee is explicitly not. It's not a remedy for your own failure: if the client terminates because you missed agreed deadlines or shipped work that didn't meet the spec, no fee is due, and a well-drafted clause says so. And it's not a scope-change tool. Scope changes are renegotiated at your rate; only termination triggers the fee.
How much should a developer's kill fee be?
There is no official industry rate. Published sample contracts and freelancer guidance use figures across a wide band — the clause libraries show everything from 10% to 100% depending on the trade and the stage — so treat any single percentage you see quoted as one option rather than a standard. What follows is a set of ranges commonly used by freelancers, all of them negotiable, none of them a statistic.
The three tiers worth thinking in:
- 25% of the unbilled remainder. Reasonable when you have real notice (two weeks or more), the project was long enough that you can rebook, or the relationship is ongoing and worth protecting. Also the easiest number to get signed.
- 35% of the unbilled remainder. A sensible default for a fixed-price build of four to twelve weeks with a single client. Enough to hurt a casual cancellation, small enough that a client doesn't push back on principle.
- 50% of the unbilled remainder. Appropriate for short-notice cancellation, for engagements where you cleared the calendar entirely, and for work with a hard start date you turned down other projects to hold.
A structure that negotiates far better than a flat number is a sliding scale tied to notice: 50% with under seven days' notice, 35% with seven to twenty-one days, 25% beyond that. It's demonstrably fair, it gives the client a way to reduce their exposure by behaving well, and it makes the clause look like risk allocation rather than a trap.
Now the arithmetic. Assume the kill fee applies to the unbilled remainder, not the total contract value — that's the version most clients will actually sign, and it avoids the awkwardness of charging a percentage of money you've already been paid.
| Project fee | Already billed | Unbilled remainder | Kill fee @ 25% | @ 35% | @ 50% |
|---|---|---|---|---|---|
| $3,000 | $1,000 | $2,000 | $500 | $700 | $1,000 |
| $8,000 | $3,000 | $5,000 | $1,250 | $1,750 | $2,500 |
| $15,000 | $5,000 | $10,000 | $2,500 | $3,500 | $5,000 |
| $25,000 | $10,000 | $15,000 | $3,750 | $5,250 | $7,500 |
| $40,000 | $12,000 | $28,000 | $7,000 | $9,800 | $14,000 |
Read one row end to end. On the $15,000 project, you've delivered and billed a $5,000 milestone; the client kills it in week three. Your final invoice is any completed-but-unbilled work at your rate, plus $3,500 at the 35% tier. The client pays roughly $8,500 total for a project they cancelled, which is a number they can defend internally, and you're compensated for a calendar you can now partially refill.
Compare that to the no-clause version of the same story, where you invoice $5,000, absorb three unpaid weeks, and spend a fortnight of unbudgeted business development refilling the gap.
What does a kill fee clause actually say?
Here's a clause you can adapt. It's written for a fixed-price development engagement, it defines commencement in terms a developer can prove, and it deliberately ties the fee to reserved capacity rather than framing it as a punishment — which matters for the reasons in the FAQ below. Renumber it to fit your contract.
9. CANCELLATION AND KILL FEE
9.1 Either party may terminate this Agreement for convenience by
written notice to the other party.
9.2 Where the Client terminates for convenience, the Client shall pay
the Developer, within fourteen (14) days of the termination date:
(a) all fees for work completed prior to the termination date,
including any milestone delivered but not yet invoiced,
charged at the rates in the Statement of Work;
(b) all approved expenses and third-party costs (including
hosting, licences and subcontractor fees) incurred or
irrevocably committed before the termination date; and
(c) a cancellation fee (the "Kill Fee") equal to THIRTY-FIVE
PERCENT (35%) of the Project Fee remaining unbilled as at
the termination date.
9.3 The Kill Fee is a genuine pre-estimate of the loss the Developer
incurs from capacity reserved for the Project that cannot
reasonably be resold at short notice. It is not a penalty.
9.4 Work is deemed to have commenced on the earlier of (i) the
Developer's first commit to the Project repository, or (ii) the
start date stated in the Statement of Work.
9.5 Suspension of the Project by the Client for a continuous period
exceeding thirty (30) days shall be treated as termination for
convenience under clause 9.1.
9.6 On payment in full of the sums due under clause 9.2, the Developer
shall deliver all work product completed as at the termination
date and the licence at clause [X] shall apply to it. No
deliverables, source code or credentials transfer before payment
is received in full.
9.7 No Kill Fee is payable where the Client terminates for the
Developer's material breach which the Developer has failed to
cure within fifteen (15) days of written notice.
Four details in there do most of the work. 9.4 removes the argument about whether work had "started" by anchoring it to a git commit — a timestamped, independently verifiable event, which is a small advantage developers have over most other freelancers. 9.5 closes the indefinite-hold loophole. 9.6 keeps your leverage: the code transfers on payment, not on request. 9.7 is what makes the whole clause palatable, because it shows the client exactly how they can pay nothing.
How do you invoice a killed project?
Send one final invoice, itemised, within a few days of the termination notice — while the decision is fresh and while your contact still has an open project code to charge it to. Waiting is the single most common way a legitimate kill fee quietly evaporates.
The invoice should have three distinct sections rather than one lumped total:
- Completed work. Milestones or hours delivered up to the termination date, described the way you'd describe them on any normal invoice. This is the part nobody disputes, so let it stand on its own.
- Committed costs. Hosting already provisioned, licences bought for the project, a subcontractor's invoice you can't cancel. Attach receipts.
- Cancellation fee. One line: "Cancellation fee per clause 9.2(c) — 35% of unbilled project fee ($10,000)", with the clause number spelled out. An accounts-payable clerk approving an unfamiliar charge needs a contractual reference, not a justification.
For the completed-work section, a killed project is exactly when detailed line items pay for themselves. If the cancellation is contested at all, the argument is always about how much was really done, and a list of specific deliverables — auth flow, webhook handler, migration scripts, admin views — settles it faster than a paragraph. If you turn your git log into invoice line items, that evidence assembles itself from work you already committed.
Set short terms on this invoice. Net 7 or net 14, not net 30 — the relationship is ending, and the leverage curve only goes down from here. The rest of the mechanics are the same as any invoice you want paid promptly: real calendar due date, stated late-fee position, no ambiguity about the paying entity. Those are covered in getting paid on time with net terms, deposits and late fees.
Then keep the tone entirely neutral. You are not owed an apology and the client is not a villain; projects get cancelled. A short, warm, factual note attached to a clean invoice is what gets you referred by the same client eighteen months later.
What if there's no kill fee in the contract?
You still have positions, they're just weaker. In rough order of how well they usually land:
- Bill everything defensible. Completed work, work in progress at the point of notice, committed third-party costs, and any deposit you're contractually entitled to retain. Many freelancers under-bill here out of discomfort and leave real money behind.
- Read the termination clause you do have. Plenty of contracts require a notice period — 14 or 30 days is typical. If the client terminates without it, the notice period is often billable in itself, which functions as an unnamed kill fee.
- Ask directly, once. "The project reserved my next five weeks, and I've turned work down to hold them. Would you cover half of the remaining fee to close it out?" Clients with a budget line still open say yes more often than you'd expect, especially when the cancellation wasn't your contact's decision.
- Offer an alternative. Convert the remaining budget into something they'll actually use — a documentation handover, a maintenance retainer, a security review of what exists. This has the highest acceptance rate of anything on this list, because it turns a write-off into a deliverable.
- Know your statutory floor. In some jurisdictions the baseline is set by law rather than your contract. Several US locations now have freelancer-payment statutes: Freelancers Union reports that the laws it has championed in New York City, New York State, Los Angeles, Seattle, Minneapolis and Illinois require a written contract for engagements over $800, require payment within 30 days of work completion where the contract is silent, and provide for double damages and attorneys' fees. New York's statewide version took effect on 28 August 2024 and added Article 44-A to the General Business Law; the New York State Department of Labor publishes a model contract and routes complaints through the Attorney General.
Whatever happens, treat it as a contract-drafting lesson rather than a grievance. Add the clause before the next engagement — not after the next cancellation.
FAQ
Is a kill fee the same as a deposit?
No, and the strongest contracts have both. A deposit is prepayment against work you're going to do; it's drawn down as you deliver, and if the project runs to completion it disappears into the total fee. A kill fee is additional compensation that only exists if the project ends early. A deposit protects you at the start of a project, a kill fee protects you in the middle of one. On a killed project the deposit is typically applied against completed work first, with the kill fee charged on the unbilled remainder on top.
Is a kill fee legally enforceable?
It depends on your jurisdiction and on how the clause is written, and it's the reason clause 9.3 above is worded the way it is. Common-law systems distinguish between an agreed pre-estimate of loss, which is generally enforceable, and a penalty designed to punish a breach, which generally isn't. Cornell's Legal Information Institute summarises the position plainly: courts will not enforce a liquidated damages clause that is punitive, illegal, unconscionable or contrary to public policy. In practice this means a kill fee that plausibly reflects what a cancellation actually costs you stands a far better chance than a round number chosen to make a point. It also helps that a termination-for-convenience fee is a price for exercising a contractual right, not damages for breaking the contract — a distinction that generally works in your favour.
What percentage is a standard kill fee?
There isn't a standard, and anyone quoting one as an industry figure is quoting a preference. Published clause libraries contain kill fees ranging from 10% to 100% of the relevant fee depending on trade, stage and how much work was completed. The 25% / 35% / 50% tiers in this post are the ranges commonly used by freelancers and a reasonable place to start negotiating — nothing more. What matters more than the number is what it's a percentage of: 50% of the unbilled remainder and 50% of the total contract value are very different asks, and clients read them very differently.
Can I charge a kill fee without a written contract?
Charging one is easy; collecting it is the problem. Without a written clause you have no agreed figure to point to, so a kill fee invoice becomes a request rather than an obligation, and you fall back on whatever your emails, proposal and payment history establish about the terms. Keep every message that discusses scope, start dates and reserved time — that correspondence is often the only record of what was agreed. And be aware that in some jurisdictions the absence of a written contract is the client's problem too: where freelancer-protection statutes apply above a dollar threshold, failing to put the engagement in writing can itself be a violation.
Sources
- Cornell Legal Information Institute, Liquidated damages
- Freelancers Union, Freelance Isn't Free
- New York State Department of Labor, Freelance Isn't Free Act
Got a project to close out? Generate the cancellation invoice free at billable.dev — completed work, committed costs and the kill fee as separate line items, no account needed, and nothing leaves your browser. Pro ($4/mo billed as $24 every 6 months, or $79 once) adds saved clients and invoice history if you want the paperwork to persist.
This post is general information, not legal advice. Contract enforceability varies by jurisdiction, and clauses that hold up in one country or state may not in another. Have a lawyer in your jurisdiction review your contract before you rely on it.