Solved: .vcf import failure

I wanted to export contacts from my /e/ phone (Android 10) to a .vcf file, so that I could import it to a second Android (LineageOS) phone. (Both of these phones use the default Contacts app.)

The import to the second phone failed every time, with an “unable to import” error. This seems to be a common problem, and appears to be related to .vcf versioning, so I thought I would post how I solved it.

/e/'s default app includes the setting “Export vCard version,” which allows you to designate VCF version 2.1, 3.0, or 4.0 (apparently not mutually compatible), but on my phone it defaults to 4.0 if I don’t select a different version.

The Contacts app on my second phone, running LineageOS 19 (Android 12,) doesn’t offer the option to choose the export file version.

So I needed to find out which version the second phone defaulted to. Initially, I had no contacts in the second phone, so I created a fake contact, in order to export a file that contained it. Once done, I opened that .vcf file in a text editor app, to see if it displayed version 2.1, 3.0, or 4.0. It was 2.1.

I then knew that I had to export the contacts from the /e/ phone as VCF 2.1, so that it could be imported on the second phone, which I did, finally, with success.

I guess I could have just done three exports, one for each of the three VCF versions, to see which one wouldn’t fail to import, if any. :rofl:

Historical threads:


/e/ dev althafvly was upstreaming vcf 4.0 import (now the default export version for /e/), but it’s not merged in Lineage 19 yet, only 20


Good to know. Thanks!