Before helping to found the iPhone games company I work at now, I was a freelance artist and programmer for about three years. By the end of that period I pretty much had it all figured out, after doing everything every possible wrong way. Friends and acquaintances sometimes send over an email asking for advice, so I started transcribing my "lessons learned" list from the whiteboard over to a text document, and from the text document to here...
NOTE: I will not be talking about stuff like having access to a lawyer and doing your taxes and crap like that. If you need a gamasutra blog's help to do that, you are NOT cut out for freelancing! Sorry.
Freelance game artists (2D or 3D) at the very top of their field are going to peak out at around $50/hr. A freelance coder might be able to make closer to $80/hr, possibly more with the right experience and specialties.
It is hard/impossible to make a living off of anything under $20/hr because of the overhead of tracking down and organizing jobs and dealing with unpredictable clients. If you have to take jobs at less than that be prepared to borrow money or dip into savings.
Having a good portfolio and resume is important. Build a simple, clean website that shows off your work and clearly communicates your ability to work with or without direction in a time-efficient manner. I definitely don't have room to go into this part in as much details as i'd like, maybe that will be a future article!
Networking is far, far more important, however. You need both, but...the easiest way to put it is this I think. Freelance work is kind of like an exclusive nightclub. You can only get in if you know the bouncer. Yeah you need a driver's license, but lots of people have a license. You only get in if you remembered your ID and got to know the bouncer in your spare time. This could also be a post all on its own, suffice to say that I was friends with nearly all my clients (or connections) before they materialized into actual work.
Do not be afraid to look outside the games industry itself for work. I made anywhere from 5-20x as much money creating games for advertising campaigns than I ever did creating assets for the game industry proper, and I had a lot more fun doing it too.
Never do spec work or a test piece for a job that pays less than $5000. That time is better spent beefing up your portfolio.
Use timelines instead of "completion percentages" or other such ethereal standards in your contracts.
Get a down payment of at least 25% on any job that pays over $500. This is absolutely standard, and any client that says otherwise is full of shit.
Contracts are not money in the bank. Money in the bank is money in the bank. Contracts are very important, but they are not money.
Only schedule up to 20 hours each week. This is possibly the single most important thing you can do. This means if it is an estimated 80 hour project you schedule it to take a full month, not two weeks. This is super hard to convince yourself of when you are basically poor and starving. However, this is very important for a lot of reasons, including: built-in accomodations for messing up, having the flexibility to take on an important rush job at any time, having time to beef up your portfolio, and most creatives/problem-solvers burn out after about 4-6 hours anyways.
When you do your first phone call with a client, or get your first email, sometimes way deep down in your gut you get a bad feeling. And it doesn't really make any sense; the pay is good, the project fits your job skills, all that good stuff. In this situation, your brain is wrong, and your gut is right. They are, in all likelihood, a slimey douchebag that you should avoid at all costs. This is the most important skill you can develop as a freelancer! This is the only reliable way to avoid taking on jobs you will regret. Avoiding these jobs is important because: the job will turn out so poorly that you will not be able to use it in your portfolio, you're spending time on art you can't show when you could be working on your portfolio or courting better clients, AND these projects have a way of making you into a bitter bitch that no one wants to be around.
Getting The Job Done
You'll quickly find that you become a little obsessed with planning and trying to line up clients. This is very natural! However, you'll also find that as long as you do acceptable (not even excellent) work, and you turn it in on time, you will eventually be in extremely high demand, as this is apparently a very rare skill set. Nearly every client I had was a repeat client, that is I had done at least two jobs for them. This means that freelancing, as long as you are competent, is not necessarily about getting a lot of clients, or constantly finding new work, but about finding the right clients.
Finally, you need to know your limits as an artist and as a freelancer. Challenging yourself is an important way to both find your limits and break through them, but we all have boundaries. When clients came to me with an animation job, I would find somebody in my network who had the real animation chops, and pass the gig off to them. This runs a little counter to a lot of advice that I got when I was starting out. Conventional business wisdom recommends that you take on that job as a middleman, and find an animator to work under you so that you keep the client and get a cut.
However, this is a much less efficient arrangement for your client and for your animator connection, and you are now spending your time managing rather than producing art or code. Balls to that! Pass the gig on; your client will be happier, and if your animator friend wants to keep his karma and stay in your network, they will pass gigs back to you from time to time, when they fall outside their jurisdiciton as it were. Again, this is a hard thing to practice when you are just starting out; you're eager to find new clients and make new connections. But after a few years of this stuff I have to say that just passing it on is both the best and the easiest policy.