DEV Community

fernandoss2026
fernandoss2026

Posted on

How to structure a freelance proposal so clients actually read it

Most freelance proposals don't fail because the work is bad. They fail because the client never finishes reading them.

The pattern behind most weak proposals is the same: freelancers write the document they'd want to receive — long, reassuring, packed with credentials — while the client reads it on a phone between meetings, skimming for three things. Do you understand my problem? What exactly do I get? What does it cost?

Here's a structure that works. It works for design, development, copywriting, consulting — anything sold as a project. None of it is clever. It's just ordered the way a client actually reads.

1. Open with their problem, not your résumé

The first paragraph should describe the client's situation better than they can themselves. Not "we're a full-service studio passionate about results" — that sentence could belong to any studio on earth. Instead:

"The current site takes over six seconds to load on mobile, and the enquiry form sits three clicks deep. Visitors are leaving before they reach it."

This does two things. It proves you looked, and it gives the client a chance to correct you early. If you've misunderstood something, you would much rather find out on page one than after the kickoff call.

Keep your own credentials to one line, placed later. The client hired you to solve a problem, not to read your CV.

2. Make the scope boringly specific

Vague scope is where projects go to die. "Website redesign" means one thing to you and something else entirely to a client who quietly assumes it includes the new logo.

Write the scope as phases with concrete, countable items:

  • Phase 1 — Discovery: stakeholder interview with up to 3 people, review of analytics, page-by-page content plan
  • Phase 2 — Design: wireframes for 5 templates, high-fidelity design for up to 6 pages, 2 rounds of revisions per page
  • Phase 3 — Build: responsive front-end, CMS setup, one handover session

Numbers are your friend. "Up to 5 pages" is friendly and clear. "The website" is a dispute waiting to happen.

3. The section most people skip: out of scope

Right after the scope, list what is not included. This feels negative, and almost everyone leaves it out. Do it anyway.

A plain list — content writing, logo design, hosting, feature work after launch — prevents the most common source of tension in freelance projects: the client's reasonable assumption that something nearby was part of the deal.

You're not being difficult. You're being clear. Clients respect someone who states the boundaries up front far more than someone who quietly resents a request three weeks in.

4. Put real numbers against the price

Don't just drop a fee. Anchor it with a payment schedule:

  • 50% deposit to reserve the start date
  • 25% on design approval
  • 25% on launch

This does three things: it's easier for the client to approve (a deposit reads as a commitment, not a cost), it protects your cash flow, and it signals that you take the project seriously.

If the number is high relative to what the client expected, show your work — the phases, the effort, the people involved. Don't apologise for the price, and don't pad the proposal to justify it. Just make it legible.

5. End with one obvious next step

The last section should make saying yes trivially easy. Tell them exactly what to do:

"Reply confirming your approval and I'll send a short agreement and the deposit invoice. I'm happy to walk through any questions on a 30-minute call."

One action. Not "let me know your thoughts." A proposal that ends in ambiguity ends in a follow-up email — and every follow-up is another chance for the client to drift away.

A short template excerpt

Here's what the opening of a proposal looks like once you put it together. The bracketed parts are what you fill in per project:

Summary — Thank you for the opportunity to propose on [PROJECT NAME]. [CLIENT COMPANY] needs [ONE-LINE GOAL]. This proposal covers what I will build, how we will work together, and what it costs.

The problem — [Two or three sentences on the client's current situation and the specific problem.]

Goal — By the end of this project, [CLIENT COMPANY] will have [PRIMARY OUTCOME].

Out of scope — The following are not included and can be quoted separately: [list].

Notice what's missing: no "About us" page, no pricing table bolted on at the end, no paragraph about your passion for the craft. Short, specific, skimmable — which is the whole point.

The mistakes that cost the most

Three common mistakes:

  • Burying the price. If the client has to hunt for the number, they'll assume it's bad news. Give it its own clear section.
  • No expiry date. "Valid for 14 days" is standard and honest. It gives the client a reason to decide rather than put it off indefinitely.
  • Skipping the awkward clauses. Revisions, refunds, and cancellation terms are far easier to agree to now, in writing, than to negotiate later when someone is frustrated.

Where the templates come from

The structure matters more than the wording. Once you know the order, filling in the blanks is the easy part.

If you'd rather not start from a blank page, Kilnworks packaged a version of this into a pack: six proposal templates (web, design, copywriting, consulting, data, and a generic one), twelve client emails covering everything from cold outreach to chasing a late invoice, and six plain-language contract clauses. It's USD 19 on Gumroad: https://fernando2026.gumroad.com/l/fnhxgj

One honest note, since it matters that you trust the rest of this article: Kilnworks is a small studio, and we use AI assistance to draft our templates. Every file is reviewed and edited by a person before it ships. If that's not for you, the structure above is free — take it and run.

Top comments (1)

Collapse
 
suppdevbot profile image
DEV SUPPORTS •

You need to verify your account.

Enter fullscreen mode Exit fullscreen mode

tr.ee/dev-to