The easiest way to build a database of people you can email is to build it yourself. Capture email addresses and information about your prospects and customers at several points throughout your website and sales process: web inquiry forms, customer sign-up sheets, change- or upgrade-in-service calls, customer service centers, business reply cards, return-of-payment forms, etc. Then respect your customers’ privacy, and provide them with email that is interesting and relevant to why they do business with you.
The key to building a great database is to commit to permission based marketing methods. Begin by making your signup process “opt-in”. When someone signs up for something from your company, make sure they understand what it is they are getting from you. Describe what it is, the frequency, and what it looks like. Try to have examples if at all possible.
Make sure every message you send includes "opt-out" links so recipients can unsubscribe from future email communication if they no longer wish to receive your emails. Giving recipients this obvious control will help to lessen the number who say "no" -- but honor those who do. You will do much better in the long run with people that choose to stay with you, then fighting the ones that don’t.
Permission is rarely transferable. When your client trusts you enough to give you his email address, he want a guarantee that he won’t be hit by hundreds of emails from many different companies. Renting email lists in today’s spam-ridden world can be an expensive campaign, both in cost and in trust from your database.
Above all else, respect both your clients’ time and privacy. When in doubt, don’t send an email. Instead, learn to combine emails into campaigns, and provide the information necessary to build trust.