After being burned by a "Contact Cleaner" app that cleaned my contacts a little too well, I now make a backup of my contacts every month (you can adjust this to your own schedule).
I use Automator workflow that triggers the first of every month, here's how I did it.
Open Automator (Applications > Automator) > Click "File" > Click "New" > Click "Calendar Alarm"
On the sidebar, click "Contacts".
The first action will find all of your contacts (note: I only tested this on my setup, which I use iCloud for contacts). Here are the options I used:
- Find people
- Any of the following
- Any content contains " " (a single space without quotes)
The second action will export all the contacts to a single vCard and place that vCard on your desktop.
- you can change this to a vCard for each contact
- as well as placing the vCard (or vCards) in any folder/location of your computer
Now go back to the sidebar and click on "Finder".
The third action will rename the vCard from "
- make sure to just change the name of the basename only, as you don't want to edit the extension by mistake.
The fourth action will add the date of the backup to the file name. There are numerous options here, but the options you see on mine match the way I adopted in naming my files for archival purposes. Sort by year, month, then day.
Once the action runs, you'll have a vCard on your desktop named with the current date (no time) that contains all the current contacts of your Contacts.app.
Running on a schedule
When you click to save the Calendar Alarm, it'll ask you to name it. After you name it, you'll be asked to let the app you just named have access to your contacts - click OK here.
Finally, you can open the Calendar and you'll now see "On your Mac" and "Automator" as a Calendar. Right click the "Contacts Backup" and click "Get Info".
Under "Get Info" you'll see when the item runs. Click the date of the event and you can adjust the frequency.
I prefer to have this run on the first of every month, so I changed it to:
Now, the only catch is to have the computer on at this time. I generally leave my computer on/open while it's at home. As long as I get a back up every so often, I'm happy. I'd rather lose a month or two of contacts than all of my contacts.