DEV Community

justin nick
justin nick

Posted on

How I Landed 4 Retainers in 14 Days as a Freelancer

How I Landed 4 Retainers in 14 Days as a Freelancer

Stop tweaking your portfolio website. Nobody cares about your shiny UI components, your custom Tailwind setup, or your GitHub green graph.

I learned this the hard way after spending 43 hours building a custom portfolio site with complex page transitions and dark-mode toggles. It resulted in exactly zero client calls, zero leads, and $0 in bank account growth.

Two weeks ago, my recurring client revenue sat at $0. I was stuck in the feast-or-famine cycle, constantly chasing one-off custom build projects that left me anxious about how I would cover my expenses next month.

14 days later, I signed 4 monthly retainers worth a combined $14,250 per month.

I didn't write a single 20-page proposal deck. I didn't post daily thought-leadership advice on social media. And I didn't lower my rates to compete with offshore agencies.

Here is the exact blueprint I used, the non-round metrics behind it, and why conventional freelancing advice is actively sabotaging your cash flow.


The Myth of the Custom Proposal

Here is an uncomfortable truth that most veteran contractors won't tell you: Writing custom proposals before getting paid is a complete waste of time.

If you sit down for 3 to 4 hours to craft a polished pitch deck, wireframes, and architectural diagrams for a prospect who hasn't paid you a dime, you aren't showing high professionalism—you are showing desperation.

Busy founders and engineering directors don't read 15-page PDF proposals. They skim emails, look for immediate value, and make decisions based on risk reduction.

As a freelancer, I used to pitch project builds. I would quote $7,200 for a website rebuild or $9,500 for a new dashboard feature. The flaw with project-based work is obvious: the moment you deliver the final commit, your income drops right back to zero, and you have to start hunting all over again.

To build stable income, you have to stop selling deliverables and start selling continuity. Clients don't buy code; they buy risk mitigation, bandwidth, and speed.


The 14-Day Sprint Breakdown

On a rainy Monday morning, I decided to run an intensive 14-day experiment. My objective was simple: secure at least 3 recurring retainer agreements without taking on massive scope creep.

Here is how those 14 days unfolded:

  • Days 1–3: Targeted 31 growing companies running active Web apps or SaaS platforms.
  • Days 4–6: Conducted 7-minute micro-audits and sent permission-based cold emails.
  • Days 7–9: Shared 90-second Loom diagnostic videos with interested prospects.
  • Days 10–12: Held 11 short discovery calls.
  • Days 13–14: Sent 1-page agreement links and collected initial payments.

The entire process took under 30 total working hours across two weeks.


Step 1: The 7-Minute Micro-Audit Strategy

Instead of sending generic emails asking, "Do you need React help?", I picked 31 specific companies that had raised seed funding or were generating active software sales.

I opened their public web apps and spent 7 minutes looking for three specific technical red flags:

  1. Performance Bottlenecks: Mobile bundle sizes taking longer than 3.8 seconds to parse, causing noticeable layout shifts.
  2. Broken Edge Cases: Subtle layout bugs in safari, missing console error handling, or sluggish input debouncing on core search forms.
  3. Outdated Dependencies: Publicly visible frontend framework versions that had known security patches or performance improvements available.

When I found a tangible issue, I recorded a quick 90-second Loom clip. I didn't criticize their internal team. I simply pointed out the exact line of client-side code or network request causing the issue, showed how it affected user experience, and offered a quick solution.

The Permission-Based Email Template

I didn't attach the video link right away. Attaching links in initial cold outreach hurts email deliverability. Instead, I sent a 3-sentence permission message:

Subject: Quick fix for [Company Name] search input latency

Hi [First Name],

I was looking through [Company Name]'s web app and noticed that your mobile search filter triggers 14 un-debounced API requests per second, causing a 400ms lag on iOS browsers.

I recorded a 90-second video showing where the bottleneck is and the exact code fix for it.

Mind if I drop the video link over?

Out of 31 targeted outreaches:

  • 19 founders/tech leads responded with "Sure, send it over."
  • 11 booked a call after watching the 90-second video.
  • 4 signed retainer contracts within the 14-day window.

That is a 12.9% close rate from cold outreach—far higher than any strategy I had tried before.


Step 2: Productizing the Retainer Offer

When pitching a retainer, never frame it as "40 hours of monthly development time." Selling hours turns you into an easily replaceable commodity. It invites the client to micromanage your calendar and question how long every Jira task takes.

Instead, I framed my service around three distinct operational tiers:

+-----------------------------------------------------------------+
| TIER 1: Stability & Care ($2,850/mo)                             |
| - Bi-weekly dependency updates & security patches               |
| - Continuous error tracking monitoring (Sentry triage)          |
| - Guaranteed 4-hour SLA response for critical bugs              |
+-----------------------------------------------------------------+
| TIER 2: Performance & Feature Growth ($3,800/mo)                 |
| - Everything in Tier 1                                          |
| - Core Web Vitals optimization to keep load times under 1.8s    |
| - Up to 2 medium-scope feature updates or UX enhancements/month |
+-----------------------------------------------------------------+
| TIER 3: Embedded Technical Lead ($5,400/mo)                     |
| - Everything in Tier 2                                          |
| - Weekly architecture planning & code reviews for internal team |
+-----------------------------------------------------------------+
Enter fullscreen mode Exit fullscreen mode

Three clients chose Tier 2 ($3,800/mo) and one chosen Tier 1 ($2,850/mo). That brought the total signed value to $14,250 in monthly recurring revenue.


Step 3: Running the 11-Minute Discovery Call

My discovery calls were kept strictly under 15 minutes. I didn't present a slideshow, and I didn't talk about my history or technical stack.

I asked three direct questions:

  1. "What was the single most frustrating technical bug or performance issue your team had to deal with last month?"
  2. "How much internal engineering time or lost user conversion did that bug end up costing you?"
  3. "If I handled all ongoing performance monitoring and bug resolution so your team could focus purely on building product, what would that be worth to your operations?"

By re-framing the conversation around business friction rather than lines of code, the rate became a straightforward decision. $3,800 per month sounds expensive for a few hours of maintenance, but it sounds remarkably cheap compared to wasting $18,000 worth of internal engineering hours hunting down edge-case bugs.


Finding High-Intent Clients

The hardest part of this process wasn't recording the Loom videos or setting up the retainer contracts—it was finding companies that actually had the budget and technical need for external support.

I've been using this email list — it's been useful for finding clients — called The Solo Pro Email List. It filters out low-budget job postings and highlights teams actively seeking experienced technical contractors. It saved me hours of research time during the initial 3-day research phase.


Actionable Steps You Can Take Today

If you are stuck in an inconsistent project cycle and want to secure fixed monthly income, here is a practical checklist you can run this week:

  1. Pick 20–30 companies in a single niche. Target teams with revenue or recent funding, not early-stage pre-revenue ideas.
  2. Run 7-minute audits. Look for concrete, observable performance issues or UI broken states on public-facing apps.
  3. Send permission-based outreach. Ask if they want to see a short video fix before sending attachments or links.
  4. Offer outcome-based retainer packages. Structure your offer around stability, performance response times, and ongoing optimization rather than hourly blocks.
  5. Ditch long proposals. Send a simple 1-page terms agreement with an embedded payment link.

Moving from unpredictable project work to fixed monthly retainers changed my focus as a developer. It replaced constant pipeline anxiety with clear, predictable schedule planning.

What's been your experience with pitching retainers versus one-off project work? Do you find clients resistant to monthly recurring contracts, or have you found a specific framing that works best? I'd love to read your thoughts in the comments below.

Top comments (0)