vCard (.vcf) import on iOS not preserving PHOTO and X-SOCIALPROFILE — expected behavior?

I’m running an experiment around generating and importing .vcf files on iOS and wanted to sanity check expected behavior with others who may have explored this deeper.

Goal

Programmatically generate a vCard (v3.0) that, when imported into iOS Contacts, includes:

Standard fields (name, phone, email, organization, etc.) Contact photo (PHOTO) Social profile (e.g., LinkedIn via X-SOCIALPROFILE)

What I tested I tried to eliminate formatting issues by using iOS itself as the source of truth.

Steps:

Created a new contact directly in iOS Contacts Added name, phone, email Added a contact photo Added a social profile (LinkedIn) Exported that contact as a .vcf Deleted the contact from the device Re-imported the exported .vcf Result Core fields (name, phone, email, etc.) are restored correctly Contact photo is NOT restored Social profile is NOT restored as a native social entry

This happens even though:

The exported .vcf clearly contains a PHOTO field The exported .vcf includes X-SOCIALPROFILE;type=linkedin:... Additional testing

I also generated my own .vcf files that closely mirror the structure produced by iOS (field order, encoding, etc.), and observed the same behavior:

Photo does not reliably import Social profiles do not appear as native social entries in Contacts Question

Is this expected behavior on iOS?

More specifically:

Are PHOTO fields intentionally ignored (or restricted) during .vcf import? Is X-SOCIALPROFILE supported for import, or only used internally/exported by Contacts? Is there any supported way to programmatically create a contact with: a photo social profile entries via .vcf import? Current understanding

Based on testing, it appears that:

iOS may export more data than it will accept on import Some fields (like social profiles and possibly photos) may only be fully supported when created via native APIs (e.g., Contacts framework) rather than .vcf

Would appreciate confirmation or any documentation pointers if this is known behavior or if there are recommended alternatives.

Closing thought

If this is by design, it would be helpful to know which vCard fields are officially supported for import vs. export on iOS, since the current behavior is not entirely symmetric.

vCard (.vcf) import on iOS not preserving PHOTO and X-SOCIALPROFILE — expected behavior?
 
 
Q