Forum Moderators: mack
1) Use decent server & client side validation to catch basic syntax typos as this allows the user to correct typos on the spot. Don't have one to hand I'm afraid otherwise I'd post an example regexp - they are fairly common.
2) Use a stop list of the most common fake addresses. If a real user tries to use one of these explain that you wont send to certain addresses because of the problem with people using fake addresses - most people will understand the logic behind this.
I've also been known to extend this to users / domains which deploy embarrassingly inaccurate virus scanning / spam filtering because IMO they are more trouble than they are worth.
3) If possible confirm at signup that the email address in question has MX records attached to it - saves a lot of hassle with both mis-types and deliberate errors with gibberish domains.
Finally & most importantly...
4) Always verify that the stated recipient actually wants to join your newsletter by actually sending them a confirmation. You'll need to ensure that you limit these somehow (for example send at most one confirmation per every 24 hours) as well as providing a long-term opt-out option to allow a recipient to avoid further malicious confirmation spam.
- Tony
You can automate this process, and the quality of addresses on your list becomes very solid. And, of course, the list grows more slowly as well.