This is the best method to deduplicate Mac/iOS contacts. Let me explain to you why:
When you have hundreds or thousands of duplicated contacts on your Apple device, your problem isn't just the duplicates — it's the time spent wondering which contact is the most recent.
For that, I've developed a Apple Script that lets you fetch all the metadata from your macOS contacts and get it in CSV format to then deduplicate them for free
In this workflow, I will show you how I deduplicate my MacBook contacts based on recency in 4 steps:
- Using the Script Editor app to determine which contacts are the most recent
- Importing contacts into Datablist (free tool)
- Deduplicating macOS contacts based on recency
- Reimporting cleaned contact list in the Contacts App
📘 About This Guide
- You don't have to know how to code to complete the steps outlined
- You should be performing it on MacOs
Step 1 of How to Deduplicate iPhone Contacts Based on Recency
👉 Download this Apple Script file: contacts-deduplication-script-v2.scpt
🧠 Understanding Script Editor
Script Editor is a built-in automation tool for Mac that we're using to extract all contact information and more invisible metadata such as "creation date" and "modification date" which are usually not included in the vCards you'd export from Mac.
How the Script Works
This script is like a contact exporter that grabs every single detail from your Mac's Contacts app and organizes it into a spreadsheet file (CSV) on your desktop.
Here's exactly what happens when you run it:
- Scans your entire contact list — The script goes through every single contact you have stored in your Mac's Contacts app
- Fetches invisible metadata — You get data that nobody usually sees, such as "creation date" and "modification date," allowing you to deduplicate your contacts more easily
- Extracts all the contact details — It pulls out names, phone numbers, email addresses, birthdays, addresses, notes, and even stuff like pronouns and instant messenger info
- Organizes phone numbers and emails by type — Instead of combining all phone numbers together, it creates separate columns for "work phone," "home phone," "mobile," etc. Same thing for emails
- Creates a perfectly organized CSV file — Everything gets saved as "contacts_detailed.csv" right on your desktop.
After downloading the script (click here to get it), open the script with Script Editor.
Run the script using the "Play" button in the top menu.
Then, accept the notification prompt, to see the progress of the export.
❗️ The script will run for 30-50 seconds, depending on how many contacts you have.
Once the script is finished, you will receive this notification:
Now you'll find a CSV file in your Desktop folder with the name "contacts_detailed_XXXX.csv"
That’s it with the first step.
Now I'll show you a tool you can use for free contact deduplication.
Step 2 of How to Deduplicate iPhone Contacts Based on Recency
Go to Datablist.com and create a free account.
💡 What is Datablist?
Datablist is an AI-powered spreadsheet application that allows you to deduplicate, clean, enrich data, and automate workflows. Use Datablist to run ChatGPT on thousands of rows, use AI-agents, clean CRMs, scrape any website, automate repetitive work, find business emails and more.
Import the list you just created.
When importing your CSV, it's crucial to map each column with the correct format for accurate deduplication. For that, click on the data type field.
Here's how to set up the important columns:
- Name columns (First Name, Last Name) → "Text"
- Phone Numbers → "Phone"
- Email Addresses → "Email"
- Dates (Creation Date, Modified Date) → "Date"
- URL → “Url”
Once you've mapped a column click on “Save Property”.
You can also skip the columns you don’t need by clicking this switch.
Click "Continue" once you’ve mapped all you need.
Now you should see and hopefully recognize some of your contacts :)
Step 3 of How to Deduplicate iPhone Contacts Based on Recency
Now that your contacts are imported, you can start the deduplication process:
Click on "Clean" in the top menu and select "Duplicates Finder".
Choose your unique identifier (e.g., "Email” or "Phone Number") and click on “Next”.
Now you'll be able to adjust 3 settings:
- Comparison algorithm — The grade of similarity needed for Datablist to identify a duplicate. Learn more here
- Processor — This will bring your data in a standardized format for better matching
- Multiple value matching — Split values using ";" before deduplication. For example, 'habib@datablist.com;contact@datablist.com' and 'habib@datablist.com' will be considered a match.
Click “Run duplicates check” once done.
Now Datablist will show you all the duplicates you have. Here's what to do next:
Click on “Configure the Master Item selection rule”.
Now, select "Highest Value on a Property" as the rule.
Choose "Creation Date" or "Modification Date" as the property (find explanation below).
Then click on the highlighted button to refresh your merging view.
Choose Creation Date when you want to keep the original contact entry — this is useful if you're sure your earliest contacts have the most accurate information.
Choose Modification Date when you want the most recently updated contact — this is better if you regularly update contact details with new information.
For most people, Creation Date is the safer choice since it reflects your last contact created.
Once you've done this, navigate back to the top.
Click on "Drop conflicting values on existing properties."
Then click on the red shortcut to drop all conflicting properties of your duplicated contacts.
This will keep only the values from the newer contacts and allow you to remove the duplicates.
Conflicting properties settings for deduplicating Apple contacts.
❗️ Be Aware of This
If you choose “Combine conflicting properties”, then the duplicated values will be put in one column and your Apple contacts will become useless, so don’t do it.
Now that Datablist has configured the conflicting properties to drop for you, click on "Refresh Merging Preview"
Now you'll be able to preview the changes Datablist is going to make.
Click on "Auto merge duplicates when possible" to start deduplicating your contacts once ready.
If you've followed along with each step, you should see this now:
Step 4 of How to Deduplicate iPhone Contacts Based on Recency
In this step I’ll show you how you can download the file with the deduplicated contacts from Datablist to your Mac and import the contacts in your Contacts app again.
Let’s go!
❗️ Delete the Old Contacts First
Don’t forget to delete the old contacts first. Otherwise you will have duplicated records again for that use “Command + A” to select all contacts and delete them with “delete”
Rename your collection in Datablist so you can find it easier when you download it.
Now, we're going to hide the date columns since they aren't recognizable when importing contacts to the MacBook Contacts app, which means we can't import them. To do this, click on the column header of "Creation Date" and select "Hide column", and do the same for "Modification Date".
Click on “Export” in the top menu and select “Export all items”.
Click on “Export” again to download your deduplicated contacts.
Now open the Contacts app on your Mac and go to “File” and click on “Import”.
Select the file you just downloaded and click on “Open”.
Now map your fields (or keep the default mapping) and click "OK" to import the contacts.
Congrats! You've successfully deduplicated your macOS contacts (in 3 min for free).
Conclusion:
Yes, deduplication Apple Contacts based on recency is possible even though the Apple Contacts app doesn’t provide this natively tools like Script Editor and Datablist’s smart deduplication tool make it possible for everyone to deduplicate their Apple contacts
Frequently Asked Questions About Contacts Deduplication
How Can I Automatically Remove Duplicate Contacts on My Mac?
While macOS has a built-in automatic duplicate removal feature but it’s very limited, you can use free tools like Datablist to quickly identify and merge duplicate contacts.
What's the Fastest Way to Clean Up Duplicate iPhone Contacts?
The fastest way is to export your contacts, use a deduplication tool to clean them, and then reimport them. This process typically takes about 3-5 minutes and ensures you don't lose any important contact information during the cleanup process.
How Do I Merge Duplicate Contacts Without Losing Data?
To merge duplicates safely, first export your contacts as a backup. Then use a free deduplication tool like Datablist that allows you to specify which version of the contact information to keep (like the most recently updated or originally created version).
What Causes Duplicate Contacts on iPhone and Mac?
Duplicate contacts commonly occur when syncing multiple email accounts, restoring from backups, importing contacts from different sources, or when contacts are manually created without checking for existing entries. Multiple device synchronization can also lead to duplicates.
How Often Should I Check for Duplicate Contacts?
It's recommended to check for duplicate contacts every 3-6 months, especially if you frequently add new contacts or sync with multiple devices and accounts.
Can Duplicate Contacts Affect My Device's Performance?
Yes, having numerous duplicate contacts can slow down your device's contact search function, increase storage usage, and cause sync issues across your devices.