For six months I tried everything I'd read about landing freelance clients.
I posted on Upwork and got zero responses. I emailed agencies with my portfolio and heard nothing back. I told everyone I knew that I was available for web projects and got politely ignored. I made a Fiverr profile with carefully written service descriptions and waited.
Nothing.
Then a small business owner in my city needed a website for a new cafe they were opening. Someone I knew mentioned that I build websites. The owner called me that evening. We met for coffee two days later. I quoted $600 for a simple five-page site. They said yes without negotiating.
That first job took me three weeks. I finished it, they were happy, and they referred me to two other businesses within a month.
The lesson I eventually understood: the problem wasn't my skills or my portfolio. It was that I was pitching strangers through platforms built on anonymous competition. The answer was in my immediate network the entire time.
Why Upwork Doesn't Work for New Freelancers
I want to address this directly because Upwork is the first place most people try.
Upwork works for established freelancers with reviews, history, and a track record on the platform. For a new account with zero reviews competing against profiles with 200 five-star reviews, you're at a structural disadvantage that no amount of well-written proposals fixes.
The platform isn't broken — it's just optimized for clients who want proven talent, not for new freelancers trying to get their first job. Use it once you have a track record. Don't rely on it to build the track record.
The Method That Actually Works: Warm Outreach
Your first freelance clients will almost certainly come from your existing network. Not because they know you build websites — but because they know, like, and trust you as a person, and that trust transfers to your professional services.
Start by making a list of every business owner, professional, or organization you have any relationship with. Former employers, family friends who run businesses, your dentist, the owner of a restaurant you frequent, local nonprofits, your parents' colleagues. Anyone who might need a website or know someone who does.
Then have real conversations with them. Not sales pitches — conversations. Ask what they're working on. Mention that you've been building websites. Ask if they know anyone who might need help.
I know this sounds uncomfortable. It is uncomfortable. Do it anyway. This is where first clients come from.
The Portfolio Problem and How to Actually Solve It
"You need a portfolio to get clients but you need clients to build a portfolio" is the classic catch-22 new freelancers complain about. It's a real problem, but it's more solvable than it feels.
Three ways to build portfolio pieces without paid clients:
Build for local nonprofits or small organizations. Find a local charity, community group, or small organization with an outdated or nonexistent website. Offer to build them a new one for free or heavily discounted. Nonprofits often need websites desperately and can't afford agencies. You get a real project with a real client relationship and a real portfolio piece.
Redesign existing websites as concept projects. Pick three small businesses with bad websites, design improved versions, and add them to your portfolio as "concept redesigns." Be clear they're concept projects. Clients will understand — they care about your design and technical ability, not whether the project was paid.
Build your own products. A personal blog, a side project, a small tool — projects you built for yourself demonstrate skill just as well as client work when explained correctly.
What Your Portfolio Needs to Show
Most developer portfolios show code. That's the wrong priority for clients who are not technical.
What clients actually want to see: Does the website look professional? Does it load fast? Is it mobile-friendly? Can I contact the developer easily? Do they understand business problems?
Your portfolio should show live websites that look good, load fast, and work properly on mobile. Alongside each project, write one paragraph explaining what the client needed and how you solved it — not the technical details, the business problem.
A sentence like "The client needed to move from phone-only booking to online appointments. I built a booking system that increased their weekly appointments by 30%" is more compelling to a small business owner than "Built with React, Node.js, and MongoDB."
Once you have two or three real clients and some reviews, a few platforms become genuinely useful.
LinkedIn with a clear description of what you do generates inbound inquiries if you post about your work regularly. Not promotional posts — actual work. "Just launched a new restaurant website" with a screenshot and brief description. People in your industry see it and remember you.
Fiverr works better than Upwork for beginners because clients come to you based on your listing rather than you competing in bidding wars. Your first few gigs at below-market rates build your review count, and then you raise prices.
Referrals are the most powerful source of clients at any level of freelancing. Happy clients refer you without being asked. Ask for referrals explicitly and you'll get even more.
What to Charge for Your First Projects
New freelancers consistently undercharge out of insecurity and overcharge out of misunderstanding the market. Both approaches are problems.
For a simple five-page business website in the US market in 2026, $500–$1,500 is a reasonable range. For an e-commerce site, $1,500–$4,000. For a custom web application, $2,500 and up.
Do not charge $50 for a website to "get the work." That price signals amateur hour and attracts difficult clients who view you as a cheap resource rather than a professional. It also means the same hours get you 1/10th the income they should.
Do charge what feels slightly uncomfortable for your first few projects. You'll find that clients who take your work seriously are not particularly price sensitive to the difference between $500 and $800.