Categories About Us Contact Us Become a Member

How to fix iCloud “this vCard cannot be imported because it contains invalid contact data”

This means iCloud's strict contact parser found something in your .vcf file it will not accept. The most common reason is an old vCard 2.1 file, but oversized photos, custom fields and encoding issues also cause it. Jump to your situation below or work through the methods in order.

By Neeraj Singh ~8 min Updated Jun 2026 94% found this helpful
Error message
Unable to import vCard. This vCard cannot be imported because it contains invalid contact data.
Summary

iCloud shows this when a .vcf file contains something its strict parser refuses, and it does not tell you which contact or field is to blame. By far the most common cause is an old vCard 2.1 file, because iCloud only accepts version 3.0 or later. Other frequent causes are an embedded photo over iCloud's 224 KB limit, a UTF-8 byte order mark (BOM), quoted-printable or non-UTF-8 encoding, non-standard X-properties from a CRM or Android export, a missing FN or END:VCARD, or a name-only contact with no phone or email. iCloud is much stricter than Google Contacts or Outlook, so a file that imports elsewhere can still fail here. The fastest fix that needs no editing is to import the file into Google Contacts and export a fresh vCard 3.0, or to use the Mac Contacts app, which has a more forgiving parser. Otherwise, change the version, strip the problem fields, and save as clean UTF-8.

What this error means

A vCard (.vcf) is a plain-text contact file with a defined structure. iCloud reads it with a strict parser that follows Apple's own validation rules on top of the vCard standard, so anything it does not recognise causes the whole import, or specific contacts, to be rejected with “invalid contact data”.

The frustrating part is the lack of detail: there is no pointer to the broken contact or field. Because iCloud is stricter than other services, the same file often imports fine into Google Contacts or Outlook. That difference is also the basis of the quickest fix, letting a lenient service clean the file for you.

Common causes

The file is vCard version 2.1, which iCloud does not accept (it needs 3.0 or 4.0).
A contact has an embedded photo larger than iCloud's 224 KB limit.
The file has a UTF-8 byte order mark (BOM) at the start.
The encoding is quoted-printable or not UTF-8, so characters are invalid.
Non-standard X-properties from a CRM or Android grouping confuse the parser.
A contact is missing a required FN or N field, or the file is missing END:VCARD.
A name-only contact has no phone or email, which iCloud silently drops.
Expert insight

“iCloud gives you the world's least helpful error, no contact, no field, just invalid data. So I stop guessing and play the odds. Nine times out of ten the file is vCard 2.1 and iCloud wants 3.0, a single find-and-replace fixes it. If that is not it, I do not hand-edit for an hour, I import the file into Google Contacts, which swallows almost anything, then export a clean 3.0 vCard and feed that to iCloud. And if one stubborn contact is the problem, I split the file in half, import each half, and binary-search my way to the culprit in about four rounds.”

How to fix it

Method 1

Change the vCard version to 3.0

1Open the .vcf in a plain-text editor and find the version lines:
VERSION:2.1
2Replace every VERSION:2.1 with VERSION:3.0 using replace-all, then save.
3iCloud accepts 3.0 and 4.0, so this alone fixes the most common case.
Method 2

Round-trip through Google Contacts

1Import the problem .vcf into Google Contacts at contacts.google.com, which is far more lenient.
2Select the imported contacts and Export as vCard (for iOS Contacts), which writes clean vCard 3.0 in UTF-8.
3Import that fresh file into iCloud. This will not help if the file originally came from Google.
Method 3

Use the Mac Contacts app

1If you have a Mac, import the .vcf into the Contacts app rather than iCloud.com.
2The desktop Contacts parser is more forgiving of encoding and minor formatting issues.
3Once imported, the contacts sync up to iCloud automatically.
Method 4

Remove oversized photos

1iCloud rejects contacts whose embedded photo is larger than 224 KB.
2In a text editor, search for PHOTO; and delete the whole PHOTO block, the PHOTO line plus the base64 lines that follow until the next property.
3Re-add photos in Contacts afterwards if you need them.
Method 5

Save as clean UTF-8 without a BOM

1Re-save the file as UTF-8, and make sure there is no byte order mark, which iCloud rejects.
2Remove any per-property CHARSET and ENCODING=QUOTED-PRINTABLE parameters, which are vCard 2.1 artifacts.
3If names look garbled, see our garbled-characters fix for the full encoding workflow.
Method 6

Strip non-standard fields

1Use find and replace to delete lines starting with X-SALESFORCE, X-HUBSPOT, X-ABShowAs and other non-standard X-properties.
2For Android exports, reformat item1.TEL grouped properties to standard names.
3Keep Apple-native properties such as X-ABUID if you are importing into iCloud.
Method 7

Find the bad contact by splitting

1If only some contacts fail, split the file in half at an END:VCARD boundary and import each half.
2Whichever half fails, split it again, in four or five rounds you isolate the offending contact.
3Check that contact for a missing FN, a missing END:VCARD or a name-only entry.

iCloud is stricter than Google Contacts and Outlook, so do not assume a file is fine just because it imported elsewhere. The quickest no-edit fix is to round-trip through Google Contacts or use the Mac Contacts app, both of which clean the file as they re-export it. Reach for manual editing only when those are not available.

Frequently asked questions

Why does iCloud say my vCard has invalid contact data?
Its strict parser found something it will not accept and does not say what. The most common cause is an old vCard 2.1 file, since iCloud needs version 3.0 or later.
How do I change a vCard to version 3.0?
Open the .vcf in a text editor and replace every VERSION:2.1 with VERSION:3.0 using replace-all, then save. iCloud accepts 3.0 and 4.0.
My file imports into Google but not iCloud, why?
iCloud applies stricter validation than Google. Import the file into Google Contacts, then export a fresh vCard 3.0 and import that clean file into iCloud.
Why are only some contacts rejected?
One or more contacts have a specific problem such as an oversized photo, a missing field, or a name with no phone or email. Split the file in half repeatedly to find the culprit.
What is the photo size limit in iCloud contacts?
An embedded contact photo must be under 224 KB. Delete the PHOTO block from any contact that exceeds it, then re-add the photo in the Contacts app.
How do I stop this happening again?
Export contacts as vCard 3.0 in UTF-8 without a BOM, keep photos small, and avoid non-standard CRM fields. Using the Mac Contacts app to prepare files also helps.

Still not working?

If the file still fails after converting to 3.0, stripping photos and cleaning the encoding, a single malformed contact is usually the blocker. Use the binary-split method to isolate it, or run the file through a dedicated vCard validator or converter that normalizes version, encoding and properties in one pass. You can also submit your error to us for a tailored fix.

Was this fix helpful? Thanks for your feedback!