Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

By far the biggest cause of failed email delivery we see is due to bad email addresses that were entered in to the system—problems like ‘joe@gmal.com’ or ‘sue@yahooo.com’.

I wonder if you could hack up an 80% solution by comparing the submitted domain to common email domains, and giving a warning if it looks like a misspelling. That way, 'joe@gmal.com' would see a second step in the signup process asking him to double-check his email address. Any idea what percentage of misspellings that would catch?



I don't have any hard stats, but here's some anecdata.

One of my consumer-facing websites gets lots and lots of typoed email addresses. Based on the kind of support emails I get, my impression is that the general audience of this site is borderline illiterate.

I mined the user database for common email domains where users had signed up, but never confirmed the email address by clicking on the link in the welcome email. Based on that, I created a bunch of regexps that detect the most common misspellings of gmail, yahoo, hostmail, msn, etc. I also check for things like <domain>.con, <domain>.cm, <domain>.om, and the other various typo permutations.

If the user enters a suspect email address, the system asks them whether they're sure they entered it correctly. In most cases, it will also suggest what it thinks they were trying to type: "You entered example@verzon.cm as your email address. Did you mean example@verizon.net?"

This reduced the bounce rate significantly.

For those cases where I still get a bounce to the welcome email (mistyped username, or a domain I couldn't autocorrect), I have a process that parses the bounce messages and flags the user's account as bouncing. If that flag is set, every page on the site includes a warning box that basically says "hey, your email bounced... please update your email address". When the user updates their email address, the system sends them a new confirmation email.

This email update dialog also requires the user to type their correct email address twice, because at this point they're known to be a bad typist. :) The original signup form only asks for it once, which improves conversion rates over requiring double-entry.

The combination of both of these techniques has reduced my support load for bad email address cases down to basically nothing.


Heh - take your database, stick a webservice in front of it (request: "is this address valid?" response: "probably" or "they may have meant X") and charge a (small) subscription fee.

I'm sure that there are a lot of people who would find this valuable and you would gain a bigger dataset to refine your responses.


Check out how we use Postmark bounce hooks (http://developer.postmarkapp.com/developer-bounces.html) to catch these problems in Beanstalk: http://blog.beanstalkapp.com/post/758755557/handling-email-d...


FWIW, gmal.com has neither MX, nor A records so a couple of quick DNS lookups could have confirmed that the email address was incorrect.


Others are nabbed though.

    $ for t in mx a; do dig +short gmial.com $t; done
    0 nullmx.domainmanager.com.
    208.87.34.15
    74.86.197.160
    $


Yes. Some domains have DNS records. That is correct.


What happens if the user makes a typo but enters a valid email address at some other domain?


The email goes to that address at that other domain


Would some sort of distance score be more efficient though?




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: