How I Found My First 3 Freelance Clients Without LinkedIn Spam or Cold Emails
I had 43 days of runway left and zero clients. Not "a few leads in the pipeline" zero — actual, real zero. My freelance career was a landing page with no traffic, a Malt profile with no reviews, and a growing suspicion that quitting my data science path to build stuff on my own was the dumbest decision I'd ever made.
That was February 2023. By April, I had three paying clients and enough work to stop checking my bank account every morning. Here's exactly how that happened — no LinkedIn growth hacks, no "just provide value bro" platitudes, no cold email templates from some guy selling a $497 course.
What didn't work (so you can skip it)
Before the stuff that actually landed clients, let me save you some time on the stuff that didn't.
Cold emails: I sent about 40 of them in week one. Personalized, researched, the whole thing. Response rate: two. Conversion: zero. The problem isn't the emails — it's that nobody trusts a dev freelance with no portfolio and no social proof. You're noise. You go straight to trash.
LinkedIn "content strategy": I posted three times a week for two weeks. Engagement was fine — likes from other freelancers, comments from people who also had no clients. Zero leads. LinkedIn works when you already have momentum. When you're starting freelance sans expérience, it's a vanity metric machine.
Freelance platforms (Malt, Upwork): Created profiles on both. Malt sat there doing nothing for months. Upwork wanted me to bid against people charging $15/hour for work I couldn't do cheaper and still pay rent in France. Maybe these work eventually, but they didn't work on my timeline.
Total time wasted on the above: about three weeks. Three weeks I didn't have. That's when I stopped following the "standard" prospection développeur playbook and started thinking about what I actually had access to.
Approach 1: My existing network, but not the way you think
Every freelance guide says "tell your network you're available." I did that. I posted on social media, told my friends, told my family. You know what happened? My mom said she was proud of me. That was it.
Here's what actually worked: I stopped announcing and started asking specific questions to specific people.
I went through my phone contacts — not LinkedIn, my actual phone — and made a list of everyone who worked at a company that might need dev work. Not "everyone I know." Just people in companies with 10-50 employees, because those are the ones too small for a full dev team and too big to have the founder do everything.
Then I texted them. Not "hey I'm freelance now, know anyone who needs a dev?" That's too vague. Instead:
"Hey, quick question — does [company] handle their web stuff in-house or do you outsource? Just trying to understand how companies your size deal with it."
That's it. No pitch. No ask. Just a genuine question. Because frankly, I was also trying to understand the market.
Out of about 15 texts like this, 8 responded. Three of those conversations turned into "actually, we've been meaning to redo our internal tool / landing page / whatever, do you do that kind of thing?"
Client #1 came from a former classmate from my BTS SIO days. His company needed a dashboard for tracking deliveries. Nothing glamorous. I quoted €3,200, which was probably too low, but it was my premier client and I needed the proof more than the margin. Took 11 days from first text to signed quote.
Key lesson: People don't refer you when you announce. They refer you when you ask a question that makes them think about their own problems. The question format matters more than the reach.
Approach 2: Being useful in niche communities before asking for anything
I'm in a few Discord servers and forums related to indie development — the kind of places where solo devs share what they're building, ask technical questions, post their side-project launches. I'd been lurking in these for months while working on my own (failed) SaaS project.
After the cold email disaster, I changed my approach. Instead of looking for clients directly, I started answering questions. Specifically, I focused on questions about things I actually knew well: setting up Next.js projects, structuring APIs, integrating payment systems — the stuff I'd learned the hard way building my SaaS that made zero euros.
I wasn't doing this as a "strategy." I was doing it because I was procrastinating on prospection développeur and answering someone's Stripe webhook question felt more productive than staring at my empty inbox.
But here's what happened: after about three weeks of being consistently helpful in two specific communities (a French dev Discord and an indie hackers forum), people started DMing me. Not with freelance offers — with more questions. And some of those questions were actually project scoping questions in disguise.
Client #2 came from a guy building a SaaS for physiotherapists. He'd been asking questions in the Discord for weeks, I'd answered a few, and one day he DM'd me: "Would you be available to build the MVP? I've got budget but no technical co-founder."
We scoped it at €5,500 over six weeks. The whole thing started because I explained how to handle recurring billing with Stripe in a Discord thread. That's it.
Timeline: About three weeks of consistent participation before the first DM. Five weeks before a signed contract. This is slower than approach #1, but it built something more durable — reputation in a space where people actually need dev work done.
What made it work:
- I only answered questions I genuinely knew the answer to. No bullshitting.
- I gave complete answers, not "DM me for more." Nothing kills trust faster than turning a help thread into a sales funnel.
- I used my real name and had a one-line bio: "Freelance dev, building [project name]." That's enough.
Approach 3: The unconventional one — local businesses, in person
This one sounds almost stupid. But it worked.
I go trail running three or four times a week. My usual route passes through a small commercial zone — a bakery, a gym, a physiotherapy practice, a wine shop, a couple of restaurants. One day, coming back from a run, I stopped at the bakery for water (and a pain au chocolat, let's be honest) and noticed their website was basically broken on mobile. Menu didn't load, contact form went nowhere.
Instead of doing nothing — which is what I'd normally do — I went home, spent 20 minutes mocking up what a functional version could look like, and went back the next day with my laptop.
"Hey, I'm a web developer, I live nearby, and I noticed your site has some issues on phones. I mocked up a quick fix — want to see it?"
The owner was confused at first, then interested. We talked for ten minutes. She said she'd paid someone €800 for the site two years ago and hadn't touched it since. I offered to fix and modernize it for €1,500 with three months of support. She said yes on the spot.
Client #3. Total time from idea to signed deal: 3 days.
Now, this isn't scalable. I'm not suggesting you jog past every business in your city hoping their CSS is broken. But here's the principle behind it: local businesses are massively underserved by tech freelancers because we all think we need to work with startups or tech companies. A bakery that needs a working website is a client. A gym that wants an online booking system is a client. And they're not on LinkedIn or Upwork looking for you.
I found this client because I was literally outside, doing the one activity where there's no screen involved, and I paid attention to the real world for once. Ironic.
What made it work:
- I showed up with something concrete, not a pitch. The mock-up did the selling.
- I priced it fairly for the size of business. No enterprise pricing for a bakery.
- I was local. That mattered to her more than any portfolio would have.
The timeline, summarized
| Approach | Time to first client | Effort level | Repeatable? |
|---|---|---|---|
| Targeted texts to existing contacts | 11 days | Low | Limited (you run out of contacts) |
| Consistent value in niche communities | 5 weeks | Medium | Yes, compounds over time |
| Local businesses, in person | 3 days | Low per attempt | Moderate (location dependent) |
Total revenue from first three clients: around €10,200. Not life-changing money. But enough to prove the model worked and stop the panic-spiral of checking my runway every morning.
One thing you can do today
Go through your phone contacts right now. Not LinkedIn — your phone. Find five people who work at small-to-medium companies. Send them that question I mentioned:
"Hey — does [company] handle [web/app/tech] stuff in-house or outsource? Curious how companies your size deal with it."
Don't pitch. Don't attach your portfolio. Just ask. See what comes back in 48 hours.
If nothing comes back, you've lost five minutes. If one conversation opens up, you might have your premier client within two weeks.
Why most prospection advice is useless
Here's my tranchant take after going through this: 90% of advice about finding freelance clients is written by people who already have clients. They've forgotten what it's like to have no portfolio, no testimonials, no track record. Their advice assumes you have assets you don't have yet.
"Build a personal brand" — with what audience? "Get referrals" — from which satisfied clients? "Optimize your profile" — for which platform that actually sends leads to beginners?
The reality of finding your first freelance clients is messier and more personal than any system. My first client came from a text to an old classmate. My second came from answering Stripe questions in a Discord server. My third came from a trail run and a broken bakery website.
None of that fits into a "prospection framework." And that's exactly the point. When you're starting dev freelance with zero proof, the only thing that works is being a real person, in real places (online or off), solving real problems that are right in front of you.
Stop looking for a system. Start looking at what's already around you.
That's it. That's the whole strategy.