Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I'm trying to check 2000 email addresses if exist. Are there ways on how to do that without sending them an email.

Wanted to check if the email is still valid.

I found this one Email Unlimited, but only check 20 email addresses then you should buy.

Would appreciate your ideas. Thanks

share|improve this question
add comment

10 Answers

up vote 16 down vote accepted

Just for the sake of completeness: some SMTP servers do indicate if an email address exists. Following a full example in another answer:

telnet gmail-smtp-in.l.google.com 25

helo example.com
mail from: <me@example.com>
rcpt to: <somenonexistinguser@gmail.com>
550-5.1.1 The email account that you tried to reach does not exist. Please try
550-5.1.1 double-checking the recipient's email address for typos or
550-5.1.1 unnecessary spaces. Learn more at
550 5.1.1 http://mail.google.com/support/bin/answer.py?answer=6596

Upon success, and on servers that cannot or do not want to tell if an address is valid, the last command would yield:

250 2.1.5 OK

One could then simply invoke quit without sending any email at all. Still, when trying many addresses, this might also get you blocked.

(Gmail does not support the vrfy command. On the website, it also has a "check availability" button when signing up for a new Gmail account. That could also give you some information, but old addresses will be unavailable for some time.)

share|improve this answer
1  
SMTP defines the VRFY command for this purpose. –  grawity Dec 20 '10 at 19:21
    
@grawity, that might be true in theory, but VRFY does NOT work with Gmail. (See my comment at Michael's answer.) –  Arjan Dec 20 '10 at 23:41
2  
Not all servers respond with a "does not exist" error for missing accounts, so this is not completely reliable. If the server is an proxy (and/or external secondary server) for a number of other servers it might not know which accounts are valid on the next hop so will give "250 OK" for anything, and some servers are set this way in to stop spammers trying to enumerate valid accounts. A quick test of some of our clients mail servers showed 1 of the 5 I tried did not give a 5xx response for an non-existent account. –  David Spillett Dec 21 '10 at 8:40
    
(@David, I know. That's why I used the word "some" above... But I've emphasised that a bit.) –  Arjan Dec 21 '10 at 10:22
add comment

If this were possible, spammers worldwide would be singing with joy.

Sorry but no, it's not possible to know whether any given e-mail address exists or not.

In my opinion, this is a feature!

  • If you know your correspondents, then you will know their contact information.
  • If you don't know your correspondents, then you're a stranger and they will not appreciate getting unsolicited mail from you.
  • If you used to know your correspondents and they haven't kept you informed of their address changes, then they've made an (un?)conscious decision to not receive your mail.

The best you can do is to send out an e-mail to your list and then remove those that bounce (= those that could not be delivered).

Be careful! In some countries it is illegal to send unsolicited bulk e-mail to people who haven't explicitly allowed this in advance.

share|improve this answer
    
Thanks for this. But yes, we know the contacts but some of them didn't update their contact details with us when they changed positions or companies. We sent out newsletter last time and it bounces back email addresses and our account was reactivated because of the high percentage of the bounces of emails. I found one in the internet but not sure if this is reliable: verify-email.org –  tintincutes Dec 20 '10 at 12:20
1  
+1 - if it worked it would quickly be abused. This is why we can't have nice things! –  David Spillett Dec 20 '10 at 12:44
2  
Not sure why this is strongly upvoted. The ethics 101 lesson? I've seen something like what the OP wants being used, and not even for nefarious purposes. The other answers and comments suggest it's possible for many mail servers, especially corporate/non-Google. –  Daniel Beck Dec 20 '10 at 19:59
1  
@Daniel: it is certainly possible for some (many, in fact) mail servers/services - but it is not reliably possible nor is is necessarily reliable for any given address. I up-voted for the technical correctness of "you can't know for sure" rather than any ethical aspect. –  David Spillett Dec 21 '10 at 8:44
    
People who were used as the fake sender of spam runs, won't be too happy about this "feature" when receiving lots of backscatter. (Apart from the occasional bounce message from runs that use a different From, Reply-to or Return-Path for each message, I've received thousands of bounce messages on two occasions. Easily filtered, still not very nice.) –  Arjan Dec 21 '10 at 10:30
show 3 more comments

There really isn't any good way to do so. There is a 'VRFY' command in the SMTP protocol, but I don't know anyone who lets that operate anymore - it's too useful to spammers. Most hosts will just refuse the command anymore.

The best you can do right now is to send the e-mail and record what bounces (noting that some mail hosts will just blackhole undeliverable mail instead of bouncing it).

I don't know what your business or purpose is with this list, but you should know that if you go sending e-mail to 2000 people at once, you're likely to get flagged as a spammer by some mail hosts.

share|improve this answer
1  
Probably more like clearing out a contact list. Mails bounce anyway. –  Daniel Beck Dec 20 '10 at 12:21
    
Trying to clean out the contacts; I need to design a new contacts database. We have a lot of clients from different companies, not sure if I have to categorize them in one database or would create a different DB for different companies. What would be the best way? –  tintincutes Dec 20 '10 at 12:26
    
If I understand correctly, then vrfy would need a username, not an email address? If true, then I guess it's mainly being disabled for security reasons, not to combat spammers? On Gmail, both vrfy existinguser, vrfy existinguser@gmail.com, vrfy someunknownuser and vrfy someunknownuser@gmail.com all yield 252 2.1.5 Send some mail, I'll try my best, while on the very same Gmail rcpt to: does reveal if an email address is valid. –  Arjan Dec 20 '10 at 13:16
    
With vrfy, you connect to a mail server, then vrfy username (the part before the @ in the e-mail address). If it's working, it will tell you yes or no whether the user is real. If it's not working (many are not) then it will either say 'forbidden', or 'I have no idea'. Note that the 'I have no idea' answer is perfectly legitimate for a mail forwarding host that doesn't have access to the underly account list. So even when working, vrfy may not be that useful. –  Michael Kohne Dec 21 '10 at 12:13
add comment

It is not possible to accurately determin if an address is real or not - any product that claims it can is exagerating its abilities so you shoudl consider any other claims made with a cynical eye.

There are in existence F/OSS libraries that do as much as it is possible to do: I would guess that most software on the market is just a fancy wrapper around those so you could perhaps easily make your own that is just as good/bad if you have any coding experience. But remember that no matter how good the validation routine is it will be very prone to give both false positive and false negative results.

http://freshmeat.net/projects/emailaddressvalidationcomponent for example comes up on a quick search fo freshmeat and assuming the description is correct it does everything that can actually be done to try verify an address.

share|improve this answer
    
@DanieL: Ok thanks for this. How about this one? Is this also valid: techie-buzz.com/how-to/… –  tintincutes Dec 20 '10 at 12:48
    
@tintincute: looks pretty valid, my Lifehacker source uses the same video... –  studiohack Dec 20 '10 at 20:16
add comment

You can ping the email address.

From Lifehacker.com:

http://lifehacker.com/5697360/how-to-verify-if-an-email-address-is-real-or-fake

When you send an email to someone, the message goes to an SMTP server which then looks for the MX (Mail Exchange) records of the email recipient's domain.

Hit the link for step-by-step instructions on how to ping an email address.

share|improve this answer
add comment

Inside a company context, this could be done by automating a lookups in Active directory.

share|improve this answer
add comment

How about writing a Perl script to automate this job? Check this out: http://search.cpan.org/~ilyam/Mail-CheckUser-1.21/CheckUser.pm

share|improve this answer
add comment

You can try: http://verify-emails.com/

It is still a try and buy service, but it can handle lists as well as single emails and can be incorporated into registration forms.

share|improve this answer
add comment

I also needed a way to verify the existence of email addresses, so I ended up writing my own little utility. (Python)

http://github.com/un33k/python-emailahoy

It is 100% accurate when the provider is honest with you.
(gmail is pretty honest, but yahoo is NOT as it says yes to all emails.)

It is better than nothing, as it reduced the spams by more than %50 for me.

share|improve this answer
add comment

its easy, use this website i recently found http://smart-ip.net/check-email

share|improve this answer
2  
The author mentions you can't use it for an automated script, and that you are limited to the number of addresses you can check –  Canadian Luke Jun 12 '13 at 21:41
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.