Merge VCF
BetaCombine several .vcf vCard contact files into one to import. Cards are copied as written, photos included, with optional skip of exact duplicates. Files are not uploaded.
- Free, no sign-up
- REST + MCP
- Updated
- Reviewed by Olgun Ozoktas
A later card is skipped only when its name, phone digits and email addresses all match an earlier card. The first copy is kept.
Processed in your browser; files are not uploaded.
Why Use Merge VCF?
A .vcf file holds one or more vCards, each written between a BEGIN:VCARD line and an END:VCARD line. Merge VCF finds every complete card in each file and copies its lines exactly as written, so the vCard version, PHOTO data, X- fields and anything else in the card are kept. The cards keep their own line endings and are joined in the order of the file list, then the order inside each file.
With Skip duplicates on, which is the default, a card is skipped when an earlier card has the same name (FN, or N when FN is missing, trimmed and ignoring letter case), the same set of phone numbers compared by their digits, and the same set of email addresses ignoring letter case. All three must match; there is no fuzzy name matching, and the first copy is the one kept.
A card that starts but never reaches END:VCARD is refused and counted, and a file with no complete card is marked with the reason while the other files still merge. Up to 500 files can be merged at once. The files are read in your browser and no contacts service is called.
How it compares
Joining the files with cat on macOS or copy /b on Windows also concatenates the cards, but keeps every duplicate and can glue a truncated card onto the next one. Online mergers usually need the files uploaded, and some rebuild each card, which can drop photos and custom fields. This page copies the original cards unchanged, skips exact duplicates when you want it to, leaves damaged cards out, and runs in the tab.
Tips for Merging Contacts
- Cards are written in file order, then in the order inside each file, so with Skip duplicates on the copy from the file higher in the list is the one kept.
- Duplicates are matched exactly: the name ignores letter case and extra spaces, phones compare their digits only, and emails ignore letter case. "J. Smith" and "John Smith" stay two cards.
- A card cut off before END:VCARD is left out of the download and counted as incomplete, so a damaged export does not break the rest.
- For looser cleanup, open the merged file in VCF to CSV, fix it in a spreadsheet, and rebuild it with CSV to VCF. Photos may not survive that round trip.
- Importing adds contacts to those already on the phone. Check the phone's own duplicate or merge feature afterwards if the file overlaps what is already there.