vCard

VCF File Size: How Many Contacts Can a VCF File Hold?

Quick Answer

A VCF file has no built-in limit on the number of contacts it can hold. The format itself can store thousands or even hundreds of thousands of contacts in a single file. However, the apps you import into have limits: iCloud allows 50,000 vCards (max 256 KB each), Google Contacts allows 25,000 contacts (max 20 MB per import) and Zoho CRM allows 5,000 per VCF batch (max 5 MB). Without photos, each contact uses about 0.3-1 KB. With photos, each contact uses 10-100 KB.

Introduction

When working with contact files, two questions come up constantly: how large will my VCF file size be, and how many contacts can I fit? The answers depend on what data each contact contains and which platform you plan to import into. A VCF file with 1,000 basic contacts (name and phone only) might be 300 KB, while the same 1,000 contacts with photos could be 50 MB or more.

This guide breaks down the actual per-contact sizes we have measured across thousands of VCF files at Univik since 2013, documents the import limits for every major platform, and shows you how to check and reduce your file size when needed.

There Is No Contact Limit in a VCF File

The vCard specification (RFC 6350 for vCard 4.0, RFC 2426 for vCard 3.0) does not define any maximum number of contacts per file or any maximum file size. A VCF file is simply a text file where each contact begins with BEGIN:VCARD and ends with END:VCARD, and you can stack as many of these blocks as you want. We have tested VCF files with over 100,000 contacts without any format-level issues.

The practical limits come from the software doing the importing, not the VCF format itself. A file with 50,000 contacts will open fine in a text editor but may exceed the import limit of Google Contacts (25,000) or the file size cap of Zoho CRM (5 MB for VCF).

How Much Space Does Each Contact Use?

The size per contact varies dramatically based on which fields are filled in. Here are the actual sizes we have measured across real-world VCF files:

Contact Type Fields Included Size per Contact
Minimal Name + 1 phone number 0.2-0.3 KB
Basic Name + phone + email 0.3-0.5 KB
Standard Name + phone + email + company + address 0.5-1.0 KB
Detailed All above + birthday + notes + URL + multiple phones 1.0-2.0 KB
With small photo Standard fields + compressed JPEG photo (thumbnail) 10-30 KB
With full photo Standard fields + high-resolution photo 50-200 KB

The biggest factor is whether contacts include embedded photos. A contact with a photo can be 100 times larger than the same contact without one. The photo is stored inside the VCF file as Base64-encoded data, which adds about 33% overhead to the original image size.

What Affects VCF File Size

1

Embedded photos (biggest factor). Contact photos are stored as Base64-encoded JPEG or PNG data directly inside the VCF file. A 50 KB photo becomes roughly 67 KB after Base64 encoding. If all 1,000 contacts have photos, your file could be 50-100 MB instead of 500 KB.

2

Number of fields per contact. Each additional field (second email, work address, home address, birthday, anniversary, notes, social profiles) adds 50-200 bytes. Contacts with 5 phone numbers, 3 emails and 2 addresses use roughly 3-5 times more space than contacts with just a name and one phone number.

3

Notes and long text fields. The NOTE property can hold unlimited text. Contacts with paragraphs of notes, meeting history, or CRM data in the notes field can be several KB each. If you exported from a CRM system, notes may contain extensive interaction history.

4

vCard version. vCard 2.1 uses quoted-printable encoding for special characters, which can slightly inflate the size of contacts with international names or addresses. vCard 3.0 and 4.0 use UTF-8, which is more compact for most languages. The version difference is usually minor (under 5%).

5

Character encoding of names and addresses. Contacts with Latin characters (English, French, Spanish) are compact. Contacts with CJK characters (Chinese, Japanese, Korean) or Arabic script use 2-3 bytes per character in UTF-8, roughly doubling the text size compared to ASCII names.

VCF File Size Estimates by Contact Count

These estimates assume standard contacts with name, phone, email, and company (no photos). Your actual file size will be larger if contacts include photos or extensive notes.

Contact Count Without Photos With Photos (avg 30 KB each)
100 50-100 KB 3-4 MB
500 250-500 KB 15-20 MB
1,000 0.5-1 MB 30-40 MB
5,000 2.5-5 MB 150-200 MB
10,000 5-10 MB 300-400 MB
50,000 25-50 MB 1.5-2 GB

Platform Import Limits

Even though the VCF format has no limit, every import destination has its own restrictions. Here are the limits you will hit when importing VCF files into popular platforms:

Platform Max Contacts per Import Max File Size Max per Contact
iCloud Contacts 50,000 vCards total No file size cap specified 256 KB (photo + text)
Google Contacts 3,000 per import (25,000 total) 20 MB per import 128 KB per contact
Microsoft Outlook.com 50,000 vCards 256 KB per vCard 256 KB
Outlook Desktop 1 contact per VCF import No cap (single file) N/A
Zoho CRM 5,000 per VCF batch 5 MB for VCF N/A
HubSpot No VCF support (CSV only) N/A N/A
Thunderbird No hard limit Limited by available memory N/A
Android Contacts No hard limit Limited by device storage N/A

When your file exceeds these limits, the solution is to split the VCF file into smaller batches that fit within the platform’s import cap.

How to Reduce VCF File Size

If your VCF file is too large for your target platform, here are the most effective ways to shrink it, ordered by impact:

1

Remove embedded photos (biggest impact). Photos account for 90-99% of file size in most VCF files. Open the file in a text editor and delete everything between “PHOTO;” and the next property line (or the next “END:VCARD”). On Mac/Linux, use grep -v "^PHOTO" contacts.vcf > contacts_nophoto.vcf for a quick removal (note: this only works for single-line PHOTO entries; Base64 photos span multiple lines and need a more careful approach).

2

Remove duplicate contacts. Duplicates double your file size for no benefit. Use our remove duplicate contacts from VCF guide to clean the file before importing.

3

Strip unnecessary fields. If you only need names and phone numbers for your use case, you can remove other properties like ADR (address), NOTE, URL, X-SOCIALPROFILE and others. The extract phone numbers from VCF guide shows how to pull just the fields you need.

4

Split into multiple files. If reducing the size per file is not an option (you need all data), split the VCF file into batches of 500-1,000 contacts each and import them separately.

How to Check the Contact Count in a VCF file

To verify how many contacts are in your VCF file before importing:

Mac / Linux (Terminal)

Run grep -c "BEGIN:VCARD" contacts.vcf to get the exact contact count. The number of BEGIN:VCARD entries equals the number of contacts.

Windows (PowerShell)

Run (Select-String -Path contacts.vcf -Pattern "BEGIN:VCARD").Count to count contacts. Or open the file in Notepad++ and use Find (Ctrl+H), search for “BEGIN:VCARD” and note the match count at the bottom.

You can also check the file size in your file manager (right-click, Properties on Windows, or Get Info on Mac) and use the estimates table above to approximate the contact count based on file size.

Common Problems and Fixes

1

The VCF file is much larger than expected. Embedded photos are almost always the cause. Check by opening the file in a text editor and searching for “PHOTO”. If you see large blocks of Base64-encoded data (long strings of letters and numbers), photos are embedded. Remove them to reduce the file size dramatically.

2

The import only processes some of the contacts. You have likely hit the platform’s per-import limit (3,000 for Google, 5,000 for Zoho CRM). Split the file into smaller batches and import each one separately.

3

The text editor freezes when opening a large VCF file. VCF files over 50 MB (especially with photos) can overwhelm basic text editors like Notepad. Use a lightweight editor designed for large files such as Notepad++ (Windows), Sublime Text, or VS Code. On Mac/Linux, use head -100 contacts.vcf to preview just the first 100 lines without loading the entire file.

4

iCloud rejects a vCard that is under 256 KB. Apple’s 256 KB limit is per individual contact card, not per file. If a single contact has a very high-resolution photo that pushes it over 256 KB after Base64 encoding, iCloud will reject that specific contact. Compress or remove the photo for that contact to fix it.

Frequently Asked Questions

Is there a maximum number of contacts a VCF file can hold?

No. The vCard format (VCF) has no built-in limit on the number of contacts per file. You can store 10 contacts or 100,000 contacts in a single file. The practical limit comes from the software you use to import the file, not the format itself.

Why is my VCF file so large even with few contacts?

Embedded photos are the most common cause. A VCF file with 200 contacts and photos can easily be 20-40 MB, while the same 200 contacts without photos would be under 200 KB. Open the file in a text editor and search for “PHOTO” to confirm. If photos are present, removing them will reduce the file size by 90% or more.

How do I know the exact number of contacts in a VCF file without importing it?

Count the number of “BEGIN:VCARD” lines in the file. On Mac/Linux, run grep -c "BEGIN:VCARD" yourfile.vcf. On Windows, open in Notepad++ and use Find All for “BEGIN:VCARD”. You can also open the VCF file in Google Contacts or Apple Contacts, which will display the count before you confirm the import.

Can I email a large VCF file?

Most email providers limit attachments to 25 MB (Gmail, Outlook.com) or 10 MB (some corporate email). If your VCF file with photos exceeds this, either remove photos before emailing, compress the file into a ZIP archive, or use a file sharing service like Google Drive or Dropbox to share the file via a link instead.

Does vCard version affect file size?

The version difference is minimal for most contacts (under 5%). vCard 2.1 uses quoted-printable encoding for special characters, which can be slightly larger than the UTF-8 encoding used by vCard 3.0 and 4.0. The version does not affect how photos are stored, so for files with photos the version impact is negligible.

Conclusion

Last verified: February 2026. File sizes measured from VCF exports across iCloud (iOS 18), Google Contacts, Outlook 365, and Android 15 (Pixel, Samsung). Platform limits verified against current documentation for iCloud, Google, Outlook.com, Zoho CRM, and Thunderbird.

A VCF file has no built-in limit on the number of contacts it can hold. The VCF file size depends primarily on whether contacts include embedded photos: without photos, expect about 0.5-1 KB per contact (1,000 contacts = roughly 0.5-1 MB); with photos, expect 10-100 KB per contact (1,000 contacts = 10-100 MB). When importing, check the platform limits (iCloud 50,000, Google 3,000 per batch, Zoho CRM 5,000 per batch) and split large files accordingly.

Three things to remember: the VCF format itself has no contact limit (the limits come from the importing platform), embedded photos are the #1 factor in file size (remove them to reduce size by 90%+), and you can count contacts without importing by searching for “BEGIN:VCARD” in a text editor or terminal.

About the Author

This guide is written and maintained by the Univik team, developers of VCF conversion and digital forensics tools since 2013. The file size estimates in this guide come from analyzing thousands of real VCF files across every major platform. We measure, test, and document so you do not have to guess. Questions about your VCF file size? Let us know.