I use a great add-on tool called Thunderplunger to clean up my address book in the Mozilla Thunderbird email client, but I need something similar for the original Mac Address Book too. Basically I have big email lists of subscribers from the last few years. By the time they got removed though and I get a lot of bounces when I try sending newsletters (which they opted-in to!), but it's too tedious to delete them one by one, especially when I want to send a newsletter after some time has passed and many mail addresses changed/got deleted.

I know there's no 100% method to filter out invalid addresses, but it helps at least a bit. If there was a method to import/export addresses and all their information (I have some special fields like categories and notes) from Address Book to Thunderbird and the other way round - that would solve the problem as well. But I can't believe there's no tool out there too clean up your Address Book ?!

3 Answers 3


Before you do anything, you can back up your Address Book database as an archive so you can restore it later if you make any edits that you don't like.

In Address Book, choose File: Export...: Address Book Archive... and save the archive.

Are you running Thunderbird 9 on Mac OS X? You can configure Thunderbird to read and write to the Mac OS X Address Book instead of using the Thunderbird address book. In other words when you open the Thunderbird Address Book and create or modify address book entries, it manipulates the Mac OS X Address Book's database.

enter image description here

In this way, could you use Thunderplunger in Thunderbird to clean up your Mac OS X Address Book?

I don't have an exact solution but I would like to tell you about one simple tool that might prove helpful.


enables you to export all or part of your Mac OS X Address Book as a CSV (comma-separated value) file. You can import that into any spreadsheet or database program for further editing.

You can also use AB2CSV to export all or part of the Address Book database to one large VCF file.

Next, Apple Address Book can import a .CSV file or a VCF file that you have edited. In Address Book Help, there's a page for "Import contacts" that explains how to do it.

  • Thanks for that answer! I had the same idea with TB and it's feature use mac os x address book - unfortunately it is read-only :( Other than that, I'm a bit scared of exporting and re-importing as I have some custom fields TB doesn't support, but I'll try that as a compromise. Still hope someone has another good tip!
    – Anonymous
    Commented Jan 5, 2012 at 22:48

To export from OSX Contacts.app

Rather than install another program to do something that should have been developed into the contacts application to begin with, you can export all your contacts as a VCARD bundle.

Once you've got the VCARD bundle, you can import them into which supports the VCARD format, and then export them from Gmail in whatever format you like, including CSV.

To check for invalid

There are many programs that do this, but you should be sure to check what method they use to do it. Some programs will query the server, others will send out test emails which could be considered spam.

You can also do this manually from . I've only attempted it with but you can likely modify it accordingly for any SMTP provider:

Using Terminal on OSX you can follow the following steps to connect to a remote SMTP email server and validate whether or not a specified email address is valid or not.


nslookup -type=mx gmail.com



Non-authoritative answer:
gmail.com    mail exchanger = 5 gmail-smtp-in.l.google.com.
gmail.com    mail exchanger = 10 alt1.gmail-smtp-in.l.google.com.
gmail.com    mail exchanger = 20 alt2.gmail-smtp-in.l.google.com.
gmail.com    mail exchanger = 30 alt3.gmail-smtp-in.l.google.com.
gmail.com    mail exchanger = 40 alt4.gmail-smtp-in.l.google.com.


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


Connected to gmail-smtp-in.l.google.com.
Escape character is '^]'.
220 mx.google.com ESMTP d4si2280017icq.135 - gsmtp


HELO //alternately you can try ELHO


250 mx.google.com at your service


mail from:<wherever@make_something_up.com>


250 2.1.0 OK d4si2280017icq.135 - gsmtp


rcpt to:<[email protected]>

If the email address is valid you will get a response like this:

250 2.1.5 OK d4si2280017icq.135 - gsmtp

If the email address is invalid you will get a response like this:

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://support.google.com/mail/bin/answer.py?answer=6596 d4si2280017icq.135 - gsmtp

Obviously if you want to verify a whole bunch of emails you wouldn't want to do this manually for each one but you could easily convert it into a job with .

There is a shareware program that I found which does this and works rather well. I run it on a partition of on my computer.

It allows you to check batches of 500 for free, to do any more than that you have to buy the program



To fix this, I would make a list of those emails to delete and then create vcards or some sort of method:

  • create duplicate emails in address book
  • Assign them to a group.

Basically create a new folder and create put all contacts in this folder.

  • Under Card in menu "Look for Duplicates" and merge them.
  • Go to the group folder you just created and delete all of them.

It will ask to delete or just delete from the group.

And always back up and do tests before you start..


You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .