How to Upsell Existing Clients Without It Feeling Like a Pitch

Duncan RogoffDuncan Rogoff August 25, 2026 9 min read
Two coffee cups and a laptop open to a simple two-line invoice on a wooden meeting table, soft morning light, calm mood
Original image, Claude Code Club

Why Most Agency Upsells Feel Like a Pitch (and Get Ignored)

Most upsells fail because they show up as a pitch instead of a finding. You finish the project, then send a message about a retainer, a package, or ongoing support, and the client reads it as sales, because it is sales, dressed as a favor. They already said yes once. Asking them to sit through a second version of the same conversation, with a new price attached, is the thing that makes people go quiet.

The client isn't rejecting more work. They're rejecting being sold to twice by someone they already paid. The fix isn't a better pitch, it's not pitching at all.

The Second Ask

The Second Ask is the one thing that reliably gets a real upsell to land: name a specific problem you found while doing the first job, in one sentence, with no package attached. Not a menu of services. Not availability for a call. One real thing you noticed, and what it would take to fix it.

  • It has to be specific. 'I could also help with your marketing' is a pitch. 'Your checkout drops about a third of people at the shipping step, I can see why, want me to fix it' is a finding.
  • It has to come from the work you just did. You earned the right to say this because you were in the code, not because you're trying to fill your calendar.
  • It has to be optional in tone. State it and stop. Don't chase it with a follow-up asking if they saw your message, that turns a finding back into a pitch.

When to Make the Second Ask

Timing does most of the work here. Ask while the thing you built is still visibly working and the client can feel the value of it, not buried in the same email as the final invoice, and not three months later once the relationship has gone quiet.

  • Best window: a few days to two weeks after launch, once they've actually used the thing and the win is fresh, but before the invoice email that closes the project.
  • Worst window: the same message as the final invoice. That message is doing accounting, not selling, and mixing the two makes the ask read as padding the bill.
  • Second worst window: months later, out of nowhere. At that point it reads as a cold pitch from someone who happens to have your email address, not a finding from someone who was just in your system.

What to Offer Instead of 'More Hours'

The Second Ask names a problem, not a service tier. Once they say yes, scope it the same way you scoped the first project, as a defined outcome, not open hours. 'More hours available if you need them' asks the client to manage you. A named fix with a price attached asks them to make one decision.

If the same specific problem keeps showing up across different clients after the first job, that's worth turning into its own offer. See [how to turn a one-off client into a monthly retainer](/blog/how-to-turn-a-one-off-client-into-a-monthly-retainer) for what that looks like once it's a pattern instead of a one-off.

The Exact Message I Send

This is close to word for word what goes out. Short, specific, and it stops instead of building a case.

  • Subject or opener names the thing plainly: 'One thing I noticed while I was in the checkout flow.'
  • One sentence describing the problem in the client's terms, not yours: what it costs them, not what it is technically.
  • One sentence on what fixing it looks like and roughly what it takes.
  • A single, low-friction next step: 'Want me to send a quote for that' or 'happy to just do it if you'd rather skip the back and forth.' Then stop typing.

Pitch vs the Second Ask

The habit that gets ignored vs the one that gets a reply

The generic pitchThe Second Ask
What it namesA service or a packageOne specific problem you actually found
When it goes outSame message as the final invoice, or months laterA few days to two weeks after launch, while the win is still fresh
What it asks the client to doEvaluate an offer and decide if they need itSay yes or no to one clear thing
Where it comes fromYour need for more revenueThe work you were already doing for them

What Kills an Upsell Before It Starts

  • Asking before you've actually delivered the first thing well. An upsell rides on trust you have to earn first, not on being first in line.
  • Naming a problem so vague it could apply to any client. That's a tell that you're pitching, not reporting a real finding.
  • Chasing the message with a follow-up. One clean ask beats three reminders, and reminders are what turn a finding back into a pitch.
  • Discounting to make it land. If the finding is real, it doesn't need a discount to be worth saying yes to. A discount signals you weren't sure it was worth full price either.

If a client's response to a well-timed, specific Second Ask is still a hard no or radio silence, that's useful information on its own, worth reading against the broader signs in [client red flags to watch for](/blog/client-red-flags-to-watch-for) before you invest more in the relationship.

Try This on Your Next Project

On your current build, write down the first specific problem you notice that's outside the current scope, the moment you notice it. Don't fix it for free and don't pitch it yet. Hold it until launch, then send the one-sentence version within two weeks.

Free Claude Code drops, straight to your inbox

Short, practical drops on skills, MCP, agents, prompts, and more. No spam, unsubscribe anytime.

Frequently asked questions

How do I upsell an existing client without sounding pushy?

Name one specific problem you actually found while doing the work, in a single sentence, with no package or sales language attached. Send it once, close to launch while the value of the first project is still visible, and let them respond instead of following up repeatedly.

When is the best time to upsell a client?

A few days to two weeks after launch, once the client has used the thing you built and the win is still fresh. Avoid bundling it with the final invoice, since that reads as padding the bill, and avoid waiting months, since by then it reads as a cold pitch.

What should I offer instead of 'more hours available'?

A named fix for a specific problem, scoped and priced the same way you scoped the original project. Open-ended hours ask the client to manage you. A defined outcome asks them to make one decision.

What if I can't think of a next problem to mention?

Don't send a generic upsell anyway. Wait until you actually notice something specific, even if that means waiting past this project. A vague ask reads as a pitch and costs you more trust than staying quiet.

Should I discount an upsell to make it more likely to land?

No. If the problem you named is real, it doesn't need a discount to be worth saying yes to. Discounting a well-timed, specific ask signals you weren't confident it was worth full price, which undercuts the exact trust that made the ask land in the first place.

Last reviewed by Duncan Rogoff on August 25, 2026

Duncan Rogoff

Written by

Duncan Rogoff

Apple · PlayStation · Charles Schwab

Keep reading

Ready to build it yourself?

Join Claude Code Club, the #1 community for learning claude code, for $9/month.

← Back to the blog