Free online XLSX to VCF converter
Convert Excel contact spreadsheets into importable VCF address-book files.
Convert XLSX to VCF online - free
Your file is processed instantly and never stored on our servers.
Import a file from a URL
Paste a direct link to the file. We download it to our server and it is converted exactly like an upload.
How it works
-
1/3
Upload your .xlsx file
Click to browse to select your file you want to convert or simply drag & drop your file into selected area.
-
2/3
Perform .xlsx to .vcf conversion
After successful file upload, click to convert when you are ready.
-
3/3
Download converted .vcf file
Conversion result is ready to download.
How to convert xlsx to vcf file
- Contacts and address books
- No ratings yet.
Phone address books, email clients, and contact-management systems commonly import contacts as VCF files. Converting an XLSX contact list avoids re-entering names, telephone numbers, email addresses, and organization details manually.
What the XLSX format is
XLSX is Microsoft Excel’s ZIP-based Open XML workbook format, supported by Excel, LibreOffice Calc, Apple Numbers, and many business systems. A workbook can contain multiple worksheets, cell values, formulas, formatting, tables, and contact data arranged in rows and columns.
XLSX does not define a standard contact schema. The conversion must therefore map headings such as First Name, Last Name, Phone, and Email to corresponding VCF properties. A workbook should normally use one contact per row with a heading row at the top.
What the VCF format is
VCF, also called vCard, is a text-based format for exchanging contact records. A file can contain one contact or multiple contacts, with properties such as FN for the display name, N for the structured name, TEL for telephone numbers, EMAIL, ORG, TITLE, and ADR for an address.
Android and iOS contact applications, Microsoft Outlook, Apple Contacts, Thunderbird, webmail systems, and business address books commonly support VCF import. Unlike a generic CSV file, VCF identifies contact fields directly, but applications differ in the fields, labels, character encodings, and VCF versions they accept.
Convert XLSX to VCF online
You can convert the file on 101convert.com for free without installing software. Upload the XLSX workbook, start the conversion, and download the generated VCF file. If the workbook contains several worksheets or unusual headings, check which sheet and columns the converter uses before importing the result.
Online conversion requires uploading the spreadsheet. Use a local method instead for confidential customer, employee, or personal contact lists when the data must remain on your computer.
Convert XLSX to VCF locally with Python
Python provides a repeatable local method using openpyxl to read XLSX and vobject to create vCard 3.0 data. Install both packages:
python -m pip install openpyxl vobject
Place contacts on the active worksheet and use headings such as First Name, Last Name, Phone, Mobile, Work Phone, Email, Organization, Title, Street, City, State, Postal Code, and Country. Save this as xlsx_to_vcf.py in the same folder as contacts.xlsx:
from openpyxl import load_workbook
import vobject
workbook = load_workbook("contacts.xlsx", data_only=True, read_only=True)
worksheet = workbook.active
rows = worksheet.iter_rows(values_only=True)
headers = [str(value or "").strip().lower() for value in next(rows)]
with open("contacts.vcf", "w", encoding="utf-8", newline="") as output:
for values in rows:
row = dict(zip(headers, values))
def get(*names):
for name in names:
value = row.get(name.lower())
if value not in (None, ""):
return str(value).strip()
return ""
first = get("first name", "given name")
last = get("last name", "surname", "family name")
display = get("full name", "name") or " ".join(
part for part in (first, last) if part
)
if not display:
continue
card = vobject.vCard()
card.add("fn").value = display
card.add("n").value = vobject.vcard.Name(family=last, given=first)
for column, label in (("phone", "VOICE"), ("mobile", "CELL"), ("work phone", "WORK")):
number = get(column)
if number:
telephone = card.add("tel")
telephone.value = number
telephone.type_param = label
email = get("email", "email address")
if email:
card.add("email").value = email
organization = get("organization", "company")
if organization:
card.add("org").value = [organization]
title = get("title", "job title")
if title:
card.add("title").value = title
address = vobject.vcard.Address(
street=get("street", "address"),
city=get("city"),
region=get("state", "province", "region"),
code=get("postal code", "zip", "zip code"),
country=get("country")
)
if any(address.value):
card.add("adr").value = address
output.write(card.serialize())
Run the script from that folder:
python xlsx_to_vcf.py
The script reads the first active worksheet and writes all converted records to contacts.vcf. Add extra heading names to the get() calls when the spreadsheet uses different labels; add another telephone mapping when the file has fields such as Home Phone or Phone 2.
Import the result through the destination application’s contact command, such as Contacts → Settings → Import or File → Import. The exact menu and whether the application accepts a multi-contact VCF depend on the software.
Quality and compatibility limits
- Column mapping controls the result. Rename ambiguous headings before conversion. A heading such as
Phone 2is not recognized by the sample script until it is added to its mapping. - Keep one contact per row. Several phone numbers or email addresses in one cell may be imported as one unstructured value unless the conversion rules split them.
- The Python example uses
data_only=True, so formula cells require cached results saved by Excel or LibreOffice. Recalculate and save the workbook before running the script. - XLSX formatting, colors, column widths, filters, formulas, and worksheet structure have no VCF equivalent and are discarded.
- Review names, duplicate records, country codes, extensions, blank rows, and telephone labels after import. Spreadsheet numbers can also be altered by automatic numeric formatting; store phone numbers as text when leading zeros or plus signs must be preserved.
- VCF 3.0 is widely accepted, while some newer applications also support VCF 4.0 and older devices may expect VCF 2.1. If an importer rejects the output, export in the version it specifies or split a large file into smaller batches.
- UTF-8 generally preserves accented characters, but older phones and contact programs may mishandle non-ASCII text, long notes, multiple telephone labels, or less common address fields.
XLSX vs VCF: format comparison
How the XLSX and VCF formats compare on the properties that matter most for this conversion.
| Property | .XLSX Microsoft Excel Open XML Spreadsheet | .VCF vCard |
|---|---|---|
| Open standard | Yes | Yes |
| Compression | Both | Uncompressed |
| Typical file size | Medium | Small |
| Opens in a web browser | Partial | No |
| Further editing | Easy | Limited |
| Metadata support | Extensive | Extensive |
| Plain-text readable | No | Yes |
| Best used for | Data exchange | Sharing and distribution |
| Introduced | 2007 | 1996 |
| Developer | Microsoft | IETF |
| MIME type | application/vnd.openxmlformats-officedocument.spreadsheetml.sheet | text/vcard |
The database currently does not contain any direct xlsx file converter links.
Frequently asked questions
Is the XLSX to VCF converter free?
Yes, converting XLSX to VCF on 101convert.com is completely free. No registration, email address or installation is required. If you need a higher file size limit or want to convert more files at once, see our plans.
How large can my XLSX file be?
You can upload XLSX files up to 15 MB and convert up to 100 files at once in a single batch.
What happens to my uploaded files?
Files are processed automatically and deleted from our servers within a few minutes after conversion. We never view or share your files.
Do I need to install any software to convert XLSX to VCF?
No. The XLSX to VCF conversion runs entirely online in your browser and works on Windows, Mac, Linux, Android and iPhone.
Did the conversion fail?
In most cases, the cause is an incorrect file format. Please upload a valid XLSX file for this XLSX to VCF conversion. Occasionally, the issue may be on our side. We analyze recurring conversion failures and disable or fix the converter if we detect a defect.
Additional formats for
xlsx file conversion
Reverse conversion
Convert to vcf from
other formats
- html to vcf
- csv to vcf
- nbf to vcf
- spb to vcf
- doc to vcf
- vcard to vcf
- pdf to vcf
- txt to vcf
- abcdp to vcf
- db to vcf
- aba to vcf
- abbu to vcf
- abcddb to vcf
- abcdmr to vcf
- arc to vcf
- bak to vcf
- bbb to vcf
- bin to vcf
- bk to vcf
- cvs to vcf
- dbx to vcf
- docx to vcf
- eml to vcf
- gbk to vcf
- icbu to vcf
- ics to vcf
- ldif to vcf
- lnk to vcf
- mbk to vcf
- mpb to vcf
- msg to vcf
- nbu to vcf
- nfb to vcf
- nfc to vcf
- npf to vcf
- pab to vcf
- pbb to vcf
- pst to vcf
- pwi to vcf
- rar to vcf
- sbp to vcf
- sbu to vcf
- smm to vcf
- sparc to vcf
- spba to vcf
- spd to vcf
- spv to vcf
- text to vcf
- usv to vcf
- vci to vcf
- vcs to vcf
- vef to vcf
- wab to vcf
- word to vcf
- xml to vcf
- zip to vcf