Client retention: how to keep what you've already sold
Got a client in 2023. Project went well. Delivered, handed off, goodbye. Six months later he shows up: “my site isn’t indexing on Google.” He paid someone else to fix it. Never referred me again.
My fault. I abandoned him.
Today it’s different. Client I delivered a project to in 2024, still pays R$ 500/month for maintenance. Became a recurring revenue generator.
The problem with project-based mentality
Developers think like this: do project, deliver, make money. Next client.
Problem is every new client starts at R$ 0. Need to sell, discuss price, brief, start over.
Old client? Already knows your work, already trusts you, already in the routine. Selling to an old client is 10x easier than selling to a new one.
Number that hit me: CAC (customer acquisition cost) averages R$ 1,500 for solo devs. That’s how much you spend getting a new client counting marketing, time, etc.
Lifetime value of a new client is R$ 10,000 over 2 years (project + small tweaks). Good margin but not incredible.
Lifetime value of a client who stays for maintenance? R$ 25,000 over 3 years.
From 2.5x ROI to 16x ROI. Difference between stable business and growing business.
Post-sale is investment
Week 1 after delivery, client has a question? I answer in 2 hours. No charge.
Month 1 after delivery, client wants to change a button color? I do it free.
This seems like cost but it’s investment in trust.
Client sees you’re there, you care, their problem is still your problem. Then they want to work with you again.
Made the mistake of focusing only on new clients for a long time. Result: revenue was chaotic. Good month, bad month, depended on selling a new project.
After I started retention, revenue became predictable. 60% of revenue comes from recurring maintenance.
Maintenance packages
My packages:
Bronze: R$ 300/month
- 5 hours of adjustments
- Email/Slack support
- 1 monthly check-in call
- Basic monitoring
Silver: R$ 600/month
- 12 hours of adjustments
- Priority support
- 2 monthly check-ins
- Monitoring + monthly report
- 1 hour strategy
Gold: R$ 1,200/month
- 25 hours of adjustments
- 24h priority support
- Weekly check-in
- Complete report
- 4 hours strategy monthly
- Quarterly tech updates
When client finishes project, I offer: “to keep everything running at its best, here are these packages.” 60% take it.
With charging for small tweaks, I talked about billing hourly. Packages make it predictable.
Strategic follow-up
Month 3 after delivery, I send an email: “your site is doing well. Should we check Core Web Vitals?” Client hadn’t thought about it. Becomes a conversation about optimization. Becomes an upsell.
Month 6, I send a report: “your site had 15k visits. Compared to month 1, it grew 40%. Next step: increase conversion.” Opens door to talk about landing pages.
Month 12, I send a proposal: “there’s new tech that fits your project. Interested?” Sometimes they are.
This isn’t spam. It’s real value. You genuinely want the client’s business to grow.
Client feels that. Not aggressive selling. It’s consulting.
The client who refers
This is where retention truly multiplies.
A truly satisfied client, with good post-sale? They refer.
Already got: “I recommended your name to my colleague. He’ll call you.” More 5 leads out of nowhere.
These clients are gold because they don’t have price objections. Colleague said you’re good, price stops being an issue.
With strategic client retention, I got 4 new clients from one client’s referral. Total of 5 referrals over 2 years.
If each referral costs R$ 1,500 in marketing, that’s R$ 7,500 I didn’t spend. Marketing that the client delivered.
Real numbers
I have about 8 clients in recurring maintenance. Average is R$ 600/month. That’s R$ 4,800/month that’s predictable.
New project comes in, it’s additional.
Without retention, revenue would be like R$ 3,000/month + sporadic new projects = volatile.
With retention, revenue is R$ 4,800/month base + new projects = controlled growth.
Solid base lets me say no to bad clients, say no to low-price projects. Before I accepted everything because I needed to.
How to start retention now
-
List all clients who had projects in the last 2 years.
-
Classify into: “top” (great relationship, paid well), “ok” (ok), “bad” (price fights).
-
Top and Ok: send email offering maintenance package. Like: “it’s been 3 months since delivery. Here’s a package to keep your site optimized with support.”
-
If they accept, great. If not, send monthly report anyway. Shows you’re there.
-
Track with simple system. Spreadsheet works. Who’s on maintenance, next review date, last interaction.
Mindset
Stop thinking about individual projects. Think about clients.
Project is transaction. Client is relationship.
With being an independent developer without becoming an agency, I talked about how scalability is better than growth. Retention is the key.
Dev with 10 maintenance clients and 1 new project per month makes more money and works less than dev selling 3 new projects per month.
- Audit last 2 years of clients
- Classify relationships (top, ok, bad)
- Create 3 maintenance packages with pricing
- Send proposal to 5 top clients
- Implement automated monthly report
- Create client monitoring system
- Schedule follow-up every 3 months
Retention isn’t more work. It’s structure that lets you grow.
ROI calculation in retention
Let me be explicit with numbers so it’s clear:
New client (project-based):
- Acquisition cost: R$ 1,500 (marketing, sales time, etc)
- Project: R$ 10,000
- Profit: R$ 8,500
- Duration: 1 month
Maintenance client:
- Acquisition cost: R$ 200 (already in maintenance)
- Maintenance/month: R$ 600
- Profit/month: R$ 550
- Duration: 36+ months
12-month projection:
Project model: 8 clients × R$ 8,500 = R$ 68,000 Retention model: 8 clients × R$ 600 × 12 = R$ 57,600 + 3 new projects × R$ 8,500 = R$ 83,100
Retention wins. And with less stress because R$ 57,600 is predictable base.
Beyond packages: strategic upselling
Packages are good but they’re minimum. Real multiplier is upselling.
Client on Bronze maintenance (R$ 300/month)? Month 3, I send:
“Your site gets 12k visits/month. CLS is at 0.15 (above ideal). Want me to optimize? Costs R$ 800 extra, done next week.”
Client agrees? I invoice extra. They don’t? Already tried.
Another upsell: “Your site isn’t mobile first. Google penalized. Want me to rebuild it responsive? R$ 2,500, 3 weeks.”
Upsells that work: performance, mobile, design refresh, new integrations, API for external system.
With Family Pilates, client’s sales were flat. Proposed a promo landing page. R$ 3,500 extra. Client did it in 3 months and sales jumped 40%. Now every quarter client wants a new landing page.
Automation to scale retention
Can’t do everything manually. Have 10 maintenance clients? You’re check-in with everyone?
Solution: simple automation.
Spreadsheet with:
- Client name
- Package (Bronze, Silver, Gold)
- Entry date
- Last review
- Next review scheduled
- Last interactions
Every month you look at spreadsheet, see who needs contact, send email or quick call.
Better: automation with Zapier/Make. When date arrives, automated email goes out: “next month is your site review. Want to schedule day/time?”
Client replies, you schedule. No overhead.
Sleeping client: reactivation
Have a client who paid maintenance 3 months, then stopped. What to do?
First tactic: don’t abandon them. Friendly email.
“Hi [name], noticed we haven’t been in touch a while. Everything ok? Your site is running well, latest checks were positive. Anything comes up, we’re here.”
50% reactivate with that.
If they don’t: “Understand, maybe not the moment. Leaving my contact here if you need.” Keep for quarterly follow-up.
Of clients who left, 30% came back after 6 months. Why? Google penalized their site, or something broke, or they had more budget.
Returning maintenance client is already known, already trusts you. They sign up right away.
Difference in new project proposal
Maintenance client asks for new project? Price automatically drops from R$ 10,000 to R$ 8,000 because you’re already inside their ecosystem.
No briefing, no discovery: you already know how to work. You know their system, know the client.
Project comes together faster. You charge less, but do it in 3 weeks while charging 10,000 took 5 weeks. Margin is healthier.
Client sees price dropped. You don’t say why. But client feels the loyalty.
Monthly value report
A tactic that works well: send a simple report every month.
“Hi [name],
Your site in March:
Visitors: 15,234 (vs 14,500 Feb) Bounce rate: 42% (improved!) Average time: 2:45min (stable) Top page: /scheduling (80% of visits)
Next steps: increase landing page conversion.
Cheers, [you]”
Client sees you’re monitoring, you’re keeping tabs, it’s not “set it and forget it”. Relationship stays healthy.
When retention breaks
Saw many devs trying to retain clients they hate. Not worth it.
If client is toxic (asks constantly, doesn’t respect your expertise, enjoys complaining), let them go.
Mental health cost is too high. Better to focus on good clients who appreciate you.
With charging for small tweaks, I talked about this. If client complains it’s expensive, let them go. You don’t need clients who don’t value you.
- List all clients with projects in last 24 months
- Classify: active, paused, sleeping
- Offer maintenance packages to 5 top clients
- Create monitoring spreadsheet
- Automate monthly check-in email
- Prepare 3 upsell proposals per client
- Schedule reactivation of dormant clients
Well-done retention is your business actually becoming scalable.