There are certain things you need to do to become a successful web designer. I'm talking more about the non technical things, as it's assumed you already know your bread and butter HTML, CSS, etc...
1 - Play nicely with others
Playing nice - Teamwork - will be important for a number of reasons. Bigger projects will mean a bigger budget, but you'll need to spread out your workload and 'manage' the project. Sometimes you may be asked to work on things which are outside of your skill set, such as editing an intro video of a website, or writing the content of a website. In which case it makes obvious sense to hire an expert in that field.
2 - Leave the ego with personal projects
Be selfless, think about your client and their website visitors. How can your service benefit them? It's not about how fantastic or jaw-dropping you can make their website look. Nor is it about making a portfolio piece. Don't get bent out of shape if your client picks the least appropriate layout or design choice. You can influence their decision, sure, but if they're adamant then don't spit out your dummy. Criticise their design choices, but do it constructively and with reason. Inform them on the best decision to make. Don't simply state because it looks 'crap'. Aesthetic value alone is subjective, they might actually like what you think is 'crap', and vice versa!
This also holds true to working with other experts in your field, such as designers working with coders. Read 'Play nicely with others' above, and appreciate the perspective and ability of others.
3 - Don't let yourself go stale
Keep up to date on what's going on around you, be aware of what your competitors are doing. Sign up to newsletters, buy magazine subscriptions, follow the experts on Twitter. Trends are always changing, as well as technology. You might think you're the best thing since sliced bread, but the problem is there's always somebody in the background, sharpening their pointy stick, ready to pick you off your pedestal. So don't become complacent and keep your skills fresh and up to date.
4 - Learn when to say no
It's okay to say no sometimes. If you're simply too busy to take on another job, you'd be foolish to add another to the list. Negotiate with your potential client, being seen as busy is good. If the really want your service they will wait until they have your undivided attention.
If a job isn't very well paid, consider other benefits. Will it result in a lot of positive publicity for you? Are you helping a good cause? Low budget projects can be acceptable, if it's for the right reason. If your client says 'it's all I can afford/I want something cheap', then that's clearly not a good enough reason - unless they're the kind of client you're looking for. Don't devalue yourself. But on the other hand, don't be ridiculous and charge too much.
5 - Learn to be flexible
I'm always asked, 'how much does a website cost?' You and I both know that we really can't answer that question on the spot. But you can estimate based on the needs of your client. Say they want a standard one page website design. Do they need design and/or HTML? Do they have good content ready? Will they need a customised form or any other special features? Will the website be mobile compatible? Explain to your client the benefits of the extras, and give them a price range from no frills to all-inclusive. If they want to go for everything, but are struggling with finance, offer to break up their payments into installments. Or roll out the extra features gradually when payments can be made.
Sometimes it helps to be flexible in your skill set. I'm not saying, 'be an expert of all things', just have an understanding of other disciplines within the field Web Design. If you're a coder, get to know a little design common sense. If you're a designer, look at the basics of web programming. Not necessarily how to code, but get to grips with the terminology. If you're a non coding designer and you know what LAMP and OOP are, you're halfway there! Which brings me onto my next point...
6 - Keep some business cards on you at all times
It's always funny how you hear that a 'mate' built a website for somebody. It seems everyone has a friend who does a bit of web design. I'm the worst culprit for not business cards around with me, but you'd be surprised how many people know somebody who's been involved with a web designer in some capacity. You need to get in there, show that you're more professional than the 'mate' who does it in his spare time as a hobby.
7 - Believe in yourself
A famous American businesswoman once said she believes in P.I.G. Not really sure how 'pig' relates to anything, but 'P' is for Persistence. You'll need a lot of this, as you'll get a few knock backs when starting out. Especially in the Web Design trade, where you can get the rogues and the cowboys. Nobody quite trusts a newcomer.
'I' is for integrity. Do right by your clients at all times - even if they screw up. So this does not mean holding your customers domain name to ransom when they decide to leave you. Don't leave them in the lurch or disappear off the radar when things go wrong. If the worst case scenario happens, make sure they're taken care of by another 'good' web designer! And so on, you get the idea.
'G' is for guts. You'll need it when trying to gain new clients. You'll need it for chasing up unpaid invoices and closing sales. You'll certainly need it if you decide to hold presentations and training seminars. Who knows where your career could take you, with a bit of guts!