This is kind of like those jokes:
“Question What’s 2+3?”
“Answer: Purple.”
The real answer to this question is:
Specialize.
I know. “Huh?” My assumption, from the question, is that you’re thinking when you freelance you’ll just put yourself out there as a “freelance web developer” and be taking on any number of different projects.
It’s really NOT the way to go.
You want to specialize in something. Maybe, it’s building Joomla websites for non-profits. Or, landing pages in WordPress for online businesses. Or, custom coding plugins. Or membership sites from scratch.
Clients think in “end results”.
They don’t want a “web developer”. They want a “website”. Or a “landing page”. Or a “form”. They want things. So, you want to narrow in on a core set of “things” you build for people that are related.
THEN, the answer to your question becomes:
“You’re ready WHEN you can build the thing you say you can.”
I have a free tutorial where I show you how to develop your service offerings along these lines, if you’re interested.
But, it’s a faster and easier way to start. You’ll tend to make more. And, you’ll be about 1,000 times more sane because you’re not working on all these crazy things. You’re providing well-defined solutions that you already know how to build.