dotts, visual feedback tool for freelancers made in europe
Features Pricing FAQ Blog Login
EN / DE
EN
English Deutsch
Start for free
client-communication October 12, 2026 11 min read

How to Fire a Web Design Client (Professionally, Without Burning Bridges)

You should fire a web design client when the relationship costs you more than it pays: repeated non-payment, scope that keeps growing after you've said no, abuse, or feedback that never converges on a finished site. Do it in writing, calmly, with a clear handover and an invoice for the work completed. Done this way, ending a client relationship protects your income, your health, and your reputation.

Contents
  • Why this is so hard to decide
  • Warning signs vs. dealbreakers
  • How to fire a web design client: 7 steps
  • Your contract does most of the work
  • What to say: the termination email
  • Money: how to handle unpaid and partial work
  • The handover: do it cleanly, even if you're angry
  • A real example: Anna and the infinite homepage
  • Prevent the next one
  • Bottom line
  • FAQ
  • Further reading

Why this is so hard to decide

Most freelancers don't fire clients too early. They fire them far too late. You tell yourself it's one bad month. The client is "just stressed." The launch is only two weeks away, so you can push through.

Here is what that usually looks like in practice. A client sends feedback as a voice note on WhatsApp at 22:40. Two days later they send a screenshot of a different version of the homepage and ask why the button is blue. You open the file. The button was never blue. They were looking at the staging site from three rounds ago, bookmarked on their phone. You spend 40 minutes figuring that out, nobody pays you for those 40 minutes, and the next round of feedback contradicts the last one.

That's one bad evening. A bad client is that evening on repeat, for months. The cost is not just the unpaid hours. It's the projects you didn't take because your calendar was full of one person's revisions, and the way your stomach tightens when their name shows up in your inbox.

Freelancers hesitate for understandable reasons: you need the money, you worry about reviews and referrals, you've already sunk weeks into the project, and nobody taught you how to end things professionally. Employees get HR. You get a half-written email in your drafts folder.

So let's make it a decision with criteria instead of a mood.

Warning signs vs. dealbreakers

Not every annoying client needs to go. Some just need a firmer process. Before you decide, separate the problems you can fix from the ones you can't.

Fixable problems are usually process problems. Vague feedback, slow replies, and surprise requests often improve once you add structure: a written scope, a defined number of revision rounds, and one place where all feedback lives. If this sounds like your situation, read our guide on handling difficult clients and the one on scope creep first. Many "difficult clients" turn out to be normal clients working inside a loose process.

Dealbreakers are different. No process fixes them:

  • The client is abusive, insulting, or threatens you.
  • Invoices are repeatedly late or disputed after the work was approved.
  • The client refuses to sign a contract or to follow the terms they already signed.
  • They ask you to do something unethical or illegal, like using images or fonts they don't have a license for.
  • They ask for unlimited revisions on a fixed-price project and have already shown they'll use them.
  • They never approve anything, so the project can't finish.

A useful test: have you named the problem, offered a fix, and seen the same behaviour again? Once is a misunderstanding. Twice, after a clear conversation, is a pattern.

How to fire a web design client: 7 steps

Here is the process in order. Each step is short, and you can do most of them in a single afternoon.

  1. Read your contract first. Find the termination clause, the notice period, the payment terms, and what happens to deliverables and ownership if the project ends early.
  2. Pause new work and document the situation. Save the emails, the unpaid invoices, the dates feedback contradicted itself. Keep it factual, not emotional.
  3. Have one last honest conversation. Name the problem, name what you need to continue, and give a deadline. This is also the step that protects you later, because you can show you tried.
  4. Decide your exit terms. Complete the current milestone, or stop now? Refund anything, or invoice for work done? Write down the numbers before you write the email.
  5. Send a written termination notice. Short, polite, specific. Reference the contract clause, the effective date, and the next steps.
  6. Invoice for the work completed and settle ownership. Most contracts say the client owns the files only after full payment. Hold the handover until the final invoice is paid, unless your contract says otherwise.
  7. Hand over cleanly. Export what you're allowed to hand over, list what you're not, and close access to your accounts, hosting, and tools.

The rest of this article goes deeper on the steps that freelancers get wrong most often.

Your contract does most of the work

If you have a decent contract, firing a client is mostly a matter of following it. If you don't have one, this is the project that will teach you why you need one. Our web design contract template guide covers what to include.

For ending a project early, you want four clauses in place before the project starts:

Still collecting feedback as screenshots in email threads? With dotts your client clicks straight onto the live site and comments exactly where the problem is — no account needed on their side.

Try dotts for free →

A termination clause. Either side can end the contract with written notice, typically 7 to 14 days. State what happens to work in progress at that point.

A kill fee or early termination fee. If the client ends the project, they pay for work done plus a percentage of the remaining balance. If you end it for cause, you invoice only for completed work.

Ownership on payment. The client receives final files and usage rights only after paying in full. Until then, you keep them. This single sentence is your strongest leverage when a client stops paying.

A revision limit. Two or three rounds included, extra rounds billed hourly. When a client has burned through the included rounds, you have an objective reason to stop, not just a feeling. If you work with a clear revision process, you also have a record of every round.

If your contract is silent on any of this, don't panic. Local law usually provides some default protection, and your emails and invoices still count as evidence. But next time, fix the contract before the next client signs.

What to say: the termination email

Most people over-explain. A good termination email is short, kind, and unambiguous. It doesn't litigate the past. It states the decision and the logistics.

Here is a version you can adapt:

Hi Maria, thank you for the opportunity to work on the website for Hartmann Studio. After our conversation last week, I don't think I'm the right fit to bring this project to the finish line, so I'm ending our collaboration effective October 20, as outlined in section 8 of our agreement. I've attached a final invoice for the work completed to date. Once it's paid, I'll send over the design files and the staging export. If you'd like, I can recommend a colleague who may be a better match. Thank you again, and I wish you the best with the launch. Leon

Notice what's missing: no accusations, no list of every email that annoyed you, no "I've never been treated like this." You can feel all of those things. You just don't put them in writing, because anything you write can be forwarded, screenshotted, or quoted in a review.

Notice what's present: a date, a reference to the contract, an invoice, a path to handover, and an offer to refer someone. The referral is optional, but it softens the landing and makes it harder for the client to paint you as the villain.

If you'd rather not end the whole relationship, a gentler first step is a "reset" email: restate scope, restate revision rounds, and tell them what happens if the project goes past those limits. For more scripts like this, see our client communication templates.

Money: how to handle unpaid and partial work

Money is where firing a client gets messy, so decide the numbers first.

If the client has paid a deposit and you've delivered more than that deposit covers, invoice the difference for completed work. If you've delivered less than the deposit covers, a partial refund is the clean option, and it removes any basis for a dispute. Some freelancers keep the deposit as a kill fee. That's fine if your contract says so. If it doesn't, expect pushback.

If the client simply stopped paying, send a formal reminder referencing the invoice number, the due date, and the late fee in your terms. Then a second one with a final deadline. Then stop working. This is the part people avoid: continuing to work "to be nice" while an invoice is overdue is the most common way freelancers end up unpaid.

Keep the handover tied to payment. Payment terms that include a deposit, milestone payments, and a rule that files transfer only on final payment make this simple. You aren't being harsh. You're doing what the contract says.

For disputed amounts under a few thousand euros or dollars, a clear paper trail and a polite final demand usually settles things. For larger amounts, a lawyer's letter or small claims court may be worth it. Check the rules where you live, and remember that I'm not a lawyer, so this is general information and not legal advice.

The handover: do it cleanly, even if you're angry

A clean handover is for you, not for them. It protects your reputation, and it shows anyone reading the thread later that you behaved professionally.

Hand over only what you're contractually allowed to hand over. Typically that means the final design files, the exported assets, and a short note listing where everything is. Remove yourself from their hosting and domain accounts. Revoke any shared logins and API keys. If they use a tool you set up, such as a feedback link, transfer or archive it properly.

On the feedback side, make sure the comment history survives. If you collected feedback through scattered emails and WhatsApp messages, you'll struggle to reconstruct what was approved when. If all comments lived on the project itself, you can export or share that history as your record. This is one reason pinned comments on the actual page beat screenshots in a chat: each comment has a timestamp, an author, and the browser details attached. A dispute about "I never approved that" becomes a scroll through the thread.

Then close the loop internally. Archive the project, write down what you'd do differently, and add the lesson to your onboarding or contract so the next client benefits.

A real example: Anna and the infinite homepage

Anna Weber is a freelance web designer in Hamburg. She took on a five-page site for a small consultancy at a fixed price of 3,800 euros with two included revision rounds.

Before: Round one went fine. Round two came back as 11 emails, three WhatsApp voice notes, and a phone call with a different opinion in each. The client's business partner joined in week five and asked to "rethink the whole direction." Anna said yes to the first extra change, then the second, then lost count. By week eight she had worked roughly 60 hours over the quote and had been paid only the 30 percent deposit. The client said the final payment would come "after launch," and launch kept moving.

The turning point was a Sunday evening when she realised she was dreading opening her laptop.

After: Anna reread her contract. It had a revision limit, milestone payments, and a termination clause with 10 days' notice. She sent one clear email: here is what was included, here is what we've done, here is the invoice for completed milestones, and here are the two options. Option one, pay the outstanding milestone and move to hourly billing for further changes. Option two, end the project at the current stage with a handover on payment.

The client chose option two within a day. Anna invoiced the completed work, got paid within a week, sent over the files, and recommended a colleague. She lost about 1,200 euros compared with the full price. She also gained back about 10 hours a week and took on a smaller, easier project the following month.

What she changed afterwards: every new client now gets feedback through one shared link where they click directly on the page and leave a pinned comment. No more voice notes, no more "the button is blue." She could point to the exact comment for every change request, which made the next scope conversation short.

Prevent the next one

You can't screen out every bad client, but you can catch most of them early. Four things help a lot:

Qualify before you quote. Ask about budget, timeline, and who makes decisions. A client who can't say who approves the work will hand you a committee later. Our guide to client onboarding walks through the questions worth asking up front.

Use a deposit and milestone payments. Clients who pay 30 to 50 percent upfront behave differently from clients who don't. A refusal to pay a deposit is itself useful information.

Put feedback in one place. Most conflict starts with unclear feedback, not bad intent. When comments are pinned to the exact spot on the website, there is less to interpret and less to dispute. Clients don't need an account, which removes the "I can't log in" excuse. You also get browser and device data with every comment, so "it looks broken on my phone" comes with the phone model attached.

Write down the exit before you need it. A termination clause costs nothing when the project is going well. When it isn't, it's the difference between a hard conversation and a standoff.

Bottom line

Fire a client when you've named the problem, offered a fix, and seen the pattern repeat, or when the issue is non-payment or abuse. Follow your contract, put the decision in a short written notice, settle the money, and hand over cleanly. The goal is not to win. It's to leave with your income, your reputation, and your evenings intact.

FAQ

When should a freelance web designer fire a client?

When the client is abusive, repeatedly pays late or not at all, refuses to follow the contract, or keeps expanding scope after clear boundaries have been set. If you've already had one honest conversation about the problem and the behaviour continued, it's time to seriously consider ending the project.

How do you fire a web design client professionally?

Review your contract, send a short written notice that references the termination clause, and state an effective date. Invoice for work completed, explain how the handover will work, and keep the tone neutral. Avoid blame, because anything in writing can be shared.

Can I keep the deposit if I fire a client?

It depends on your contract and local law. If the contract says the deposit is non-refundable or acts as a kill fee, you generally can. If it doesn't, a safer approach is to keep the part that covers completed work and refund the rest, which avoids most disputes.

What if the client hasn't paid and wants the files?

If your contract says ownership transfers on full payment, you can withhold the final files until the invoice is paid. Send a written reminder with a deadline, state that files will be released on payment, and don't continue working on anything in the meantime.

Will firing a client hurt my reputation?

Rarely, if you handle it professionally. A calm email, a fair invoice, and a clean handover leave very little for the client to complain about. What hurts reputation is disappearing, arguing in public, or leaving a project half-finished without explanation.

Should I fire a client in the middle of a project?

Sometimes it's the right call, especially when the alternative is unpaid work with no end date. Try to end at a natural milestone if you can, so the client receives something usable and the invoice is easy to justify. If the situation is abusive or non-paying, don't wait for a convenient moment.

What should a termination email for a web design client include?

A short thank-you, the decision, the effective date, a reference to the contract clause, the final invoice, and the handover plan. Optionally add a referral to another designer. Leave out accusations and a history of every complaint.

How can I avoid having to fire clients in the first place?

Use a clear contract with a revision limit, take a deposit, qualify clients before quoting, and collect all feedback in one place. Most firing situations begin as vague scope and messy feedback, so tightening those two things prevents a lot of trouble.

Stop chasing feedback across WhatsApp and email. [Try dotts free →](https://dotts.se)

Further reading

  • How to Handle Difficult Clients in Web Design
  • Scope Creep in Web Design
  • Web Design Payment Terms for Freelancers
  • Web Design Contract Template for Freelancers

Compare the tools All comparisons

  • dotts vs. BugHerd: bug tracker vs. feedback tool
  • dotts vs. Ruttl: which is simpler for solo designers?
  • 8 client feedback tools for freelancers, compared
  • dotts vs. Marker.io: client comments vs. dev tickets
  • dotts vs. Usersnap: simple client review vs. a feedback platform
Leon Eikmeier

Leon Eikmeier is co-founder of dotts and has been building websites for freelancers and agencies for over 8 years.

Start Collecting Feedback in Seconds with dotts

Forget messy email threads and unclear revision requests. dotts makes feedback fast, clear, and organized so you can focus on what matters—getting work done.

Try it for Free
dotts logo
Product
All features Copy for AI No-login client access Click to comment Screenshots & metadata PDF & image feedback doby AI (MCP) Pricing
Compare
All comparisons dotts vs. MarkUp.io dotts vs. Pastel dotts vs. Ruttl dotts vs. BugHerd dotts vs. Figma dotts vs. Filestage dotts vs. Marker.io dotts vs. Usersnap dotts vs. Atarim dotts vs. BugSmash
Solutions
All solutions Feedback for Webflow Feedback for Wix Feedback for Squarespace Feedback for Framer Feedback on your own domain For WordPress For Shopify For freelance web designers For small web agencies For marketing teams For copywriters
Free Tools
All free tools Freelancer Pricing Calculator OG & Social Preview Tool Website Handoff Checklist Website QA Checklist Revision Request Generator Website Feedback Template llms.txt Generator
Company
Blog Privacy Policy Imprint Terms
© 2026 dotts. Build in Europe 🇪🇺
Made by MetaOne