Ezly
  • Fonctionnalités
  • Feuille de route
  • Tarifs
  • FAQ
Back to blog

2026-04-10

The Reply That Won a $12,000 Contract (And Why It Almost Didn't)

One freelancer. One $12K project on Upwork. Their first draft reply was what everyone sends -- experience, portfolio, 'let me know.' Walk through why that loses, what the rewrite looked like, and the three-part structure that made 'yes' the obvious answer.

The Reply That Won a $12,000 Contract (And Why It Almost Didn't)

She almost sent the wrong reply

The job post had been up for forty minutes. A $12,000 Webflow rebuild for a SaaS company migrating off WordPress. Clean scope. Reasonable timeline. The client had already hired on Upwork before, had a verified payment method, and left a 4.9 star review on their last contract.

This was a real project with real money from someone who actually pays.

Maria had done this exact work twice in the past year. She opened a new tab, started typing, and within six minutes had a proposal ready to send.

Here's what it looked like:

Hi! I'm a Webflow developer with 4+ years of experience building SaaS marketing sites. I've completed several WordPress-to-Webflow migrations and understand the challenges involved. Here's my portfolio: [link]. I'd love to discuss your project further. Let me know if you'd like to set up a call!

She read it back. It was fine. Professional. Accurate. She'd sent some version of this reply on her last 200 proposals.

She almost hit send.

What's wrong with "fine"

Nothing, technically. The proposal is polished. It has credentials. It has a portfolio link. It checks every box on the "how to write an Upwork proposal" advice you'd find online.

But here's what the client sees when they open their inbox: 40 proposals. Maybe 50. And 35 of them read almost exactly like Maria's. "Years of experience." Portfolio link. "Let me know."

The client can't tell Maria apart from applicant number 17. Or 23. Or 38. Every proposal is a stranger claiming competence. None of them prove it.

Three things make that first draft lose.

It doesn't mention the client's actual problem

Maria's proposal talks about her experience. It says nothing about this project. The client posted a 400 word brief explaining that their current WordPress site loads slowly on mobile, their marketing team can't make edits without a developer, and they're launching a new pricing tier in Q3 that needs a custom comparison page.

Maria's reply doesn't reference any of it. She could have copy-pasted this proposal onto any Webflow job and it would read the same.

The client reads it and thinks: did she even read my post?

The proof is generic

"Here's my portfolio" is not proof. It's homework for the client. You're asking them to click a link, scroll through unrelated projects, and figure out which ones are relevant to their situation.

The client won't do that. They're reviewing 40 proposals between meetings. They'll scan your reply for 8 seconds, maybe 12 if you're lucky, and move on.

The ending goes nowhere

"Let me know if you'd like to set up a call" puts the entire burden on the client. They have to decide whether you're worth their time, then take an action to advance the conversation. With 40 proposals open, the path of least resistance is to keep scrolling.

"Let me know" is not a close. It's a polite way to hand the client an exit.

The rewrite

Maria didn't send that first draft. She rewrote it. The second version took her an extra ten minutes. Here's what she sent instead:

I noticed you mentioned your WordPress site is struggling with mobile load times and your marketing team can't edit pages without a developer. I migrated a B2B SaaS company off WordPress to Webflow last year -- their mobile PageSpeed score went from 38 to 91, and their marketing manager now publishes landing pages without filing a single dev ticket.

For your Q3 pricing page, I'd build a comparison component in Webflow that your team can update themselves -- add tiers, change feature labels, toggle annual/monthly. No code changes. Would it help if I mocked up a quick wireframe of how that pricing component could work for your setup?

Different reply. Same person. Let's break down why this version wins.

Anatomy of a reply that closes

The opening: show them you read the brief

I noticed you mentioned your WordPress site is struggling with mobile load times and your marketing team can't edit pages without a developer.

This is one sentence. It does something none of the other 40 proposals do: it proves Maria actually read the job post. She didn't mention "Webflow experience." She mentioned the client's specific pain. Slow mobile. Non-technical team locked out of editing.

The client reads this and thinks: okay, she gets it.

That's the whole point. Before you earn trust, you have to earn attention. And attention comes from specificity. A generic opener gets skimmed. An opener that names the client's exact frustration gets read.

The middle: prove it with a real result

I migrated a B2B SaaS company off WordPress to Webflow last year -- their mobile PageSpeed score went from 38 to 91, and their marketing manager now publishes landing pages without filing a single dev ticket.

This isn't "I have experience." It's a case study in two lines. A real company. A measured result. And the outcome mirrors what the client wants: speed and editorial independence.

Notice she didn't link her portfolio. She didn't say "I've done similar work." She told them what happened. The PageSpeed score went from 38 to 91. The marketing manager stopped filing dev tickets. Those numbers are doing the selling.

If you've done the work, you have numbers somewhere. Dig them up. One specific result beats a 30 page portfolio every time.

The close: ask a question that assumes engagement

Would it help if I mocked up a quick wireframe of how that pricing component could work for your setup?

This is the difference between "let me know" and a real close. Maria isn't asking the client to decide if she's worth talking to. She's offering something valuable, for free, that's specific to their project. And the question is easy to say yes to.

The client doesn't have to commit to hiring her. They don't have to schedule a call. They just have to say "sure, that would be great." And now they're in a conversation.

This is the move most freelancers miss. You don't end a proposal with a period. You end it with a question that makes the next step obvious.

The pattern you just watched

If you read that rewrite carefully, you saw three moves in sequence:

  1. An opening observation that proves you understand the specific situation
  2. A result from your own work that makes the observation credible
  3. A question that moves the conversation forward without asking for commitment

This is the IPA framework: Insight, Proof, Action.

Insight is the hook. You open with a specific, accurate observation about the client's problem that shows you've read their brief and thought about it. Not a compliment. Not "great project." A signal that you understand the problem better than the other 40 applicants.

Proof is the credibility move. You follow the insight with a concrete result from your own background. Not "I have experience in this area" but "I did X for Y and the result was Z." This makes your insight feel earned, not guessed.

Action is the close. You end with a question designed to make the next step obvious. Not "let me know" but something that assumes engagement and gives the client an easy yes. The question does the closing so you don't have to pitch.

Each piece builds on the one before it. Insight without proof is just a claim. Proof without insight feels random. And neither matters if the ending lets the client walk away without friction.

Why "let me know" is killing your proposals

I want to stay on that third piece for a moment because it's where most proposals fall apart.

"Let me know if you'd like to discuss" is passive. It signals uncertainty. It says: I'm available if you decide I'm worth your time. Compare that to "Would it help if I mocked up a wireframe for your pricing page?" One waits. The other offers.

The strategic question isn't a trick. It's a shift in posture. Instead of hoping the client picks you, you're giving them a reason to respond. The question should be:

  • Specific to their project (not a generic "can we chat?")
  • Low commitment (not "ready to sign a contract?")
  • Valuable on its own (the client gets something even if they don't hire you)

Here are a few examples across different freelance scenarios:

Web developer: "Want me to run a quick audit on your current site's Core Web Vitals so you can see exactly where the performance gaps are?"

Copywriter: "Would it be useful if I rewrote your homepage headline as a sample so you can see the direction I'd take?"

Brand designer: "Should I put together 2 rough concepts for your logo based on what you described, so we can see if we're on the same page?"

Each one is specific. Each one is low risk for the client. Each one makes "yes" the natural response.

Before and after, side by side

Let's put both versions next to each other so the contrast is clear.

The first draft (what everyone sends)

Hi! I'm a Webflow developer with 4+ years of experience building SaaS marketing sites. I've completed several WordPress-to-Webflow migrations and understand the challenges involved. Here's my portfolio: [link]. I'd love to discuss your project further. Let me know if you'd like to set up a call!

What the client thinks: Another developer. Probably fine. Add to the pile.

The rewrite (what wins)

I noticed you mentioned your WordPress site is struggling with mobile load times and your marketing team can't edit pages without a developer. I migrated a B2B SaaS company off WordPress to Webflow last year -- their mobile PageSpeed score went from 38 to 91, and their marketing manager now publishes landing pages without filing a single dev ticket.

For your Q3 pricing page, I'd build a comparison component in Webflow that your team can update themselves -- add tiers, change feature labels, toggle annual/monthly. No code changes. Would it help if I mocked up a quick wireframe of how that pricing component could work for your setup?

What the client thinks: She read my post. She's done this before. And she's already thinking about my pricing page. Reply.

The word count difference between these two proposals is about 50 words. The time difference to write is maybe 10 minutes. The outcome difference is a $12,000 contract.

Applying this to your next proposal

The IPA framework isn't complicated. But it does require you to slow down for ten minutes instead of copy-pasting the same template.

Before your next proposal, run through three questions:

What's their specific problem? Read the entire job post. Find the sentence where they describe what's broken, what they need, or what frustrates them. Reference it directly. If you can't find a specific problem, the post might be too vague to bid on.

What's your best proof for this exact situation? You don't need a perfect case study match. You need a result that connects to their problem. If they're worried about mobile performance, and you improved someone else's PageSpeed score, that's your proof. If they care about launch timeline, and you delivered a similar project in three weeks, use that.

What can you offer that makes "yes" easy? Think about what would be genuinely useful to the client, takes you less than an hour, and moves the conversation forward. A mockup. An audit. A rewritten headline. A short strategy doc. Something they can evaluate without risk.

If you're managing a dozen proposals a week across platforms, this can feel like a lot of extra work. It doesn't have to be. The structure stays the same. Once you've internalized the pattern, you're looking for three things in every job post: their pain, your proof, and your next move. Tools like Ezly build this structure (Insight, Proof, Action) into every reply so the thinking happens faster, but the framework works on its own, with a blank text field, at midnight.

One reply, one contract

Maria got the job. The client later told her that her proposal was the only one that mentioned mobile performance, the only one that referenced a real result, and the only one that offered to start working before the contract was signed.

She didn't have the most experience. She didn't have the lowest rate. She had the best reply.

Winning freelance proposals don't come from better credentials. They come from better structure. Read the brief. Prove you've done it. Ask a question that makes yes easy. That's it. That's the whole thing.

Your next $12,000 contract might be sitting in your inbox right now. The question is whether you'll send the reply that everyone sends, or the one that actually wins.

Back to all articles

On this page

She almost sent the wrong reply
What's wrong with "fine"
It doesn't mention the client's actual problem
The proof is generic
The ending goes nowhere
The rewrite
Anatomy of a reply that closes
The opening: show them you read the brief
The middle: prove it with a real result
The close: ask a question that assumes engagement
The pattern you just watched
Why "let me know" is killing your proposals
Before and after, side by side
The first draft (what everyone sends)
The rewrite (what wins)
Applying this to your next proposal
One reply, one contract
EZLY

Ezly

  • Home
  • Features
  • Compare
  • Pricing
  • Blog
  • FAQ

Features

  • Chat with Ezly
  • Chrome Extension
  • Proposal Generator
  • AI Personas
  • Quick Replies

Community

  • X / Twitter
  • LinkedIn
  • Discord
  • Reddit

Legal

  • Privacy Policy
  • Terms of Service
  • Help
  • Cookies

© 2026 Ezly. All rights reserved.