vCard Format Complete Guide — VCF Files & Digital Business Cards (2026)

AI SUMMARY

A vCard is a standardized file format (.vcf) for sharing contact information digitally. It stores names, phone numbers, emails, addresses, photos, and more in a plain-text structure that every major contacts app understands. vCard 3.0 (RFC 2426) is the most widely supported version, while vCard 4.0 (RFC 6350) adds features like multiple value types and better internationalization. You can create vCards manually in a text editor, embed photos as base64, encode them into QR codes for instant sharing, or write them to NFC tags for tap-to-save business cards. Apple Contacts and Google Contacts both import VCF files but handle certain fields differently. Generate a vCard automatically with Byline's free vCard generator.

Business cards used to be simple. You handed someone a piece of card stock with your name and number on it. They either kept it, lost it in a jacket pocket, or threw it away. The information lived on paper, and if you changed your phone number, every card you'd ever given out became obsolete. The vCard format solved this problem thirty years ago — and it's more relevant today than ever. Whether you're embedding contact details in an email signature, generating QR codes for conference badges, or programming NFC tags for tap-to-save business cards, the underlying technology is the same: a plain-text file with a .vcf extension that every contacts app on every platform can read.

This guide covers everything you need to know about vCards — from the file format specification to practical implementation. You'll learn how to create VCF files manually, embed photos using base64 encoding, generate QR codes that open contact save dialogs on smartphones, program NFC business cards, and handle the subtle differences between how Apple and Google process vCard data. If you just want a working vCard file without writing code, use Byline's vCard generator — it handles all the formatting automatically.

1. What Is a vCard (VCF File)?

A vCard — short for "virtual card" — is a standardized file format for electronic business cards. The file uses the .vcf extension (Virtual Contact File) and contains structured contact information in plain text. When someone opens a VCF file on their phone or computer, their contacts app reads the structured data and offers to create a new contact entry with all the information pre-filled.

The format was originally created by the Versit Consortium in 1995 and is now maintained by the Internet Engineering Task Force (IETF). Despite being nearly three decades old, vCard remains the universal standard for contact data exchange. Every major platform supports it: iOS, Android, macOS, Windows, Outlook, Gmail, Thunderbird, and essentially every contacts application ever built. No proprietary app installations required, no accounts to create, no APIs to integrate — just a text file that works everywhere.

At its simplest, a vCard is just a text file with a specific structure. Here's the most basic valid vCard:

BEGIN:VCARD
VERSION:3.0
FN:Jane Smith
TEL:+1-555-123-4567
EMAIL:[email protected]
END:VCARD

That's it. Save those six lines as a .vcf file, email it to someone, and when they open the attachment their phone will offer to save Jane Smith as a contact with her phone number and email address pre-populated. The format is deliberately simple — human-readable, easy to generate programmatically, and universally parseable. The RFC 6350 specification defines the current standard (vCard 4.0), but many implementations still use the older RFC 2426 (vCard 3.0) for maximum compatibility.

vCards aren't just for email attachments. They're the data format behind QR code contact sharing, NFC business cards, the "Share Contact" feature on your phone, contact export/import in every address book application, and — relevant to this site — the downloadable contact files you can attach to email signatures. When you add a "Save Contact" button to your email signature, the underlying technology is a vCard file.

2. vCard 3.0 vs 4.0 — Differences That Matter

Two versions of vCard are in active use today: version 3.0 (RFC 2426, published 1998) and version 4.0 (RFC 6350, published 2011). Understanding the differences matters because the version you choose affects compatibility, feature availability, and how contact apps parse your data.

Key Differences Between vCard 3.0 and 4.0

  • VERSION property: 3.0 uses VERSION:3.0, 4.0 uses VERSION:4.0. This line determines how the entire file is parsed. Mixing versions causes unpredictable behavior.
  • PHOTO encoding: 3.0 uses PHOTO;ENCODING=b;TYPE=JPEG: followed by base64 data. 4.0 uses PHOTO;MEDIATYPE=image/jpeg: with either base64 data or a URI. The syntax change is subtle but breaks parsing if mixed.
  • TEL property: 3.0 uses TEL;TYPE=WORK,VOICE:+1555123456. 4.0 uses TEL;VALUE=uri;TYPE=work:tel:+1-555-123-4567 with a tel: URI scheme. Both work, but 4.0’s format is more structured.
  • N (name) property: Required in 3.0 (N:Smith;Jane;;;). In 4.0, only FN is strictly required, though including N is still best practice for compatibility.
  • KIND property: New in 4.0. Allows specifying whether the vCard represents an individual, organization, group, or location. Not available in 3.0.
  • XML support: 4.0 adds an XML property for embedding arbitrary XML data and defines an official XML (xCard) representation. 3.0 has no XML support.
  • GENDER property: New in 4.0. Allows specifying gender with both a single-letter code and free-text description. Not available in 3.0.
  • Multiple values: 4.0 formalizes ALTID for grouping alternative representations of the same property (e.g., a name in Latin and Cyrillic scripts). 3.0 handles this less elegantly.

Which Version Should You Use?

For maximum compatibility, use vCard 3.0. It's supported by every contacts app on every platform, including legacy systems and older phones. Apple Contacts, Google Contacts, Outlook, and Thunderbird all handle 3.0 flawlessly. vCard 4.0 offers more features and cleaner syntax, but support is less universal — some older Android apps and corporate exchange systems don't fully parse 4.0 properties.

If you're generating vCards for a known audience (e.g., your company's internal contacts) and you know their systems support 4.0, use it for the better structure. If you're generating vCards for public consumption — email signatures, QR codes, NFC cards — stick with 3.0. The Byline vCard generator uses 3.0 by default for this reason.

3. Complete vCard Field Reference

vCard files use property-value pairs, one per line, to store contact information. Each property has a name, optional parameters, and a value separated by colons. Here's a comprehensive reference of the most commonly used fields with practical examples.

Core Identity Fields

  • N (Structured Name): Format: N:LastName;FirstName;MiddleName;Prefix;Suffix. Example: N:Smith;Jane;Marie;Dr.;PhD. The semicolons are required even if fields are empty: N:Smith;Jane;;; is valid.
  • FN (Formatted Name): The display name as a single string. Example: FN:Dr. Jane Marie Smith PhD. This is the name contacts apps show in their list. Required in both 3.0 and 4.0.
  • NICKNAME: Informal name or alias. Example: NICKNAME:JJ. Supported by most contacts apps but rarely displayed prominently.

Communication Fields

  • TEL (Telephone): Phone number with type classification. Example: TEL;TYPE=WORK,VOICE:+1-555-123-4567. Common types: WORK, HOME, CELL, FAX. Use international format with country code for reliable dialing.
  • EMAIL: Email address with optional type. Example: EMAIL;TYPE=WORK:[email protected]. Multiple EMAIL properties are allowed — one per email address. Most contacts apps display all of them.
  • URL: Website URL. Example: URL:https://janesmithconsulting.com. You can include multiple URL properties. Add TYPE=WORK to distinguish from personal websites.

Organization Fields

  • ORG (Organization): Company or organization name with optional department. Example: ORG:Acme Corp;Marketing Department. The semicolon separates the company from the department — both are optional but the order matters.
  • TITLE: Job title or position. Example: TITLE:Marketing Director. This maps to the “Job Title” field in most contacts apps and appears directly under the contact’s name in Apple Contacts.
  • ROLE: Function or role within the organization. Example: ROLE:Project Lead. Less commonly used than TITLE but supported by most parsers. Think of TITLE as your business card title and ROLE as your functional description.

Address & Location Fields

  • ADR (Address): Structured postal address. Format: ADR;TYPE=WORK:;;Street;City;State;PostalCode;Country. Example: ADR;TYPE=WORK:;;123 Business Ave;New York;NY;10001;United States. The first two semicolons (PO Box and Extended Address) are usually empty but must be present.
  • GEO: Geographic coordinates. vCard 3.0: GEO:40.7128;-74.0060. vCard 4.0: GEO:geo:40.7128,-74.0060. Used by mapping integrations but rarely displayed in contacts apps directly.

Media & Metadata Fields

  • PHOTO: Contact photo, either as a URL or embedded base64 data. vCard 3.0: PHOTO;ENCODING=b;TYPE=JPEG:[base64 data]. vCard 4.0: PHOTO;MEDIATYPE=image/jpeg:[base64 or URI]. See the base64 section below for implementation details.
  • LOGO: Organization logo, same format as PHOTO. Example: LOGO;ENCODING=b;TYPE=PNG:[base64 data]. Supported but less consistently displayed — many contacts apps ignore LOGO and only show PHOTO.
  • NOTE: Free-text notes about the contact. Example: NOTE:Met at TechConf 2026 — interested in API partnership. Displayed in the “Notes” section of contacts apps. Useful for CRM-style context.
  • REV: Last revision timestamp. Example: REV:2026-03-10T12:00:00Z. Used by sync systems to determine which version of a contact is newer. Important for CardDAV synchronization.

A complete real-world vCard combining these fields looks like this:

BEGIN:VCARD
VERSION:3.0
N:Smith;Jane;Marie;;
FN:Jane Smith
ORG:Acme Corp;Marketing
TITLE:Marketing Director
TEL;TYPE=WORK,VOICE:+1-555-123-4567
TEL;TYPE=CELL:+1-555-987-6543
EMAIL;TYPE=WORK:[email protected]
EMAIL;TYPE=HOME:[email protected]
ADR;TYPE=WORK:;;123 Business Ave;New York;NY;10001;United States
URL:https://acme.com
URL:https://linkedin.com/in/janesmith
NOTE:Marketing leader with 15 years experience in B2B SaaS.
REV:2026-03-10T12:00:00Z
END:VCARD

4. Creating a vCard Manually

You don't need special software to create a vCard. It's a plain text file. Open any text editor — Notepad on Windows, TextEdit on Mac (in plain text mode), VS Code, or even nano in a terminal — and start typing. The rules are straightforward but strict: each property goes on its own line, the file must start with BEGIN:VCARD and end with END:VCARD, and the VERSION property must be the first property after BEGIN.

File Encoding and Line Endings

Save the file with UTF-8 encoding. The vCard 4.0 specification explicitly requires UTF-8. vCard 3.0 technically defaults to ASCII but all modern parsers handle UTF-8 correctly, and you'll need it for international characters in names and addresses. Line endings should be CRLF (\r\n) per the specification, but most parsers also accept LF-only (\n). If you encounter import errors, CRLF line endings are the first thing to check.

Save the file with a .vcf extension. Both .vcf and .vcard extensions are recognized, but .vcf is universally supported while .vcard may not be associated with the contacts app on some systems. Always use .vcf.

Line Folding for Long Values

The vCard spec limits logical lines to 75 octets (bytes). For properties with long values — especially base64-encoded photos — you must fold lines. Folding works by inserting a CRLF followed by a single space or tab character. The parser joins folded lines back together by removing the line break and the leading whitespace character. In practice, most modern parsers handle long lines without folding, but if you're generating vCards programmatically for maximum compatibility, implement folding at the 75-byte boundary.

Special Characters

Certain characters need escaping in vCard values. Commas in property values should be escaped as \, (backslash-comma). Semicolons within a single value component should be escaped as \;. Newlines within values (like multi-line notes) should be escaped as \n. Backslashes themselves become \\. Get the escaping wrong and your vCard parser will split values at the wrong points, putting half your address in the wrong field.

If manually creating vCards sounds tedious, it is. Byline's vCard generator handles all the formatting, encoding, escaping, and line folding automatically — you just fill in the fields and download the file.

5. Embedding Base64 Photos in vCards

Adding a contact photo to a vCard makes your contact entry stand out in the recipient's address book — instead of generic initials, they see your face or your company logo. There are two approaches: linking to an external URL or embedding the image directly as base64-encoded data. Embedding is strongly recommended because it makes the vCard self-contained — the photo travels with the file regardless of network connectivity or whether the image URL remains valid.

How Base64 Photo Encoding Works

Base64 encoding converts binary image data into ASCII text characters. The image file's raw bytes are encoded into a string using only letters (A-Z, a-z), numbers (0-9), plus (+), and slash (/) characters. This encoded string is then embedded directly in the vCard text file. The contacts app decodes the base64 string back into image data when importing the contact.

The encoding adds approximately 33% overhead — a 30KB JPEG becomes roughly 40KB of base64 text. For contact photos, this is acceptable because you should be using small, optimized images anyway. Resize your photo to 256×256 pixels (or 512×512 maximum) and compress as JPEG at 70-80% quality. The resulting base64 string will be 15–40KB of text, which every contacts app handles easily.

vCard 3.0 Photo Syntax

PHOTO;ENCODING=b;TYPE=JPEG:/9j/4AAQSkZJRgABAQEASABIAAD/
 2wBDAAYEBQYFBAYGBQYHBwYIChAKCgkJChQODwwQFxQYGBcU
 FhYaHSUfGhsjHBYWICwgIyYnKSopGR8tMC0oMCUoKSj/...

Note the ENCODING=b parameter — this tells the parser the value is base64-encoded. The TYPE=JPEG parameter specifies the image format. Use TYPE=PNG for PNG images. The base64 data continues on folded lines (each continuation line starts with a space).

vCard 4.0 Photo Syntax

PHOTO;MEDIATYPE=image/jpeg:data:image/jpeg;base64,/9j/4AAQ
 SkZJRgABAQEASABIAAD/2wBDAAYEBQYFBAYGBQYHBwYIChAK...

vCard 4.0 uses the MEDIATYPE parameter instead of TYPE and ENCODING. It can also reference photos by URL: PHOTO;MEDIATYPE=image/jpeg:https://example.com/photo.jpg. The URL approach keeps the file small but depends on the URL remaining accessible indefinitely.

Generating Base64 from Command Line

# macOS / Linux
base64 -i headshot.jpg | tr -d '\n'

# Windows PowerShell
[Convert]::ToBase64String([IO.File]::ReadAllBytes("headshot.jpg"))

Copy the output and paste it after the PHOTO property declaration. Remember to apply line folding if the encoded string exceeds 75 characters per line (which it always will for images). Or let Byline's vCard tool handle it — upload a photo and the base64 encoding, line folding, and property formatting happen automatically.

6. QR Codes for vCards

QR codes are the most popular way to bridge physical and digital contact sharing. Print a QR code on your business card, conference badge, or office door, and anyone with a smartphone camera can scan it to save your contact information instantly — no typing, no searching, no app required. The QR code contains your vCard data directly, so the phone's camera app decodes the QR code, recognizes it as contact data, and opens the native "Add Contact" dialog.

How vCard QR Codes Work

A QR code is simply a two-dimensional barcode that encodes text data. When that text data is a valid vCard string (starting with BEGIN:VCARD and ending with END:VCARD), smartphone cameras and QR reader apps recognize it as contact information and trigger the appropriate system action. Both iOS (since iOS 11) and Android natively support this — no third-party app needed.

The practical limitation is data capacity. A standard QR code can hold approximately 3KB of text data at the highest error correction level, or up to 7KB at the lowest. A basic vCard without a photo is typically 300–500 bytes — well within capacity. But a vCard with an embedded base64 photo can easily exceed 30KB, which is impossible to encode in a QR code. The solution: omit the PHOTO property from QR code vCards, or use a URL-based photo reference instead of embedded base64 data.

Best Practices for vCard QR Codes

  • Keep it minimal: Include only essential fields: FN, N, TEL, EMAIL, ORG, TITLE, URL. Every extra byte increases QR code density and reduces scan reliability.
  • No embedded photos: Photos make the QR code too dense to scan reliably. If you need a photo, use a URL reference or link to a landing page that has your photo.
  • Use international phone format: Always include the country code (+1, +44, +61) so the number is dialable regardless of where the scanner is located.
  • Test at print size: Generate the QR code and print it at the size it will appear on your business card (typically 25-30mm square). Scan-test from multiple phones at realistic distances.
  • Error correction level M or higher: Use Medium (M) or Quartile (Q) error correction. This makes the QR code slightly denser but ensures it remains scannable even if partially obscured or slightly damaged.
  • Add a URL fallback: Include a URL property pointing to a web page with your full contact details. If the QR code fails to parse as a vCard on some devices, the URL gives the scanner a clickable fallback.

An alternative to encoding the full vCard in the QR code is to encode a URL that serves the VCF file. For example, encode https://yourdomain.com/contact.vcf in the QR code. When scanned, the phone opens the URL, downloads the VCF file, and offers to save the contact. This approach lets you include photos (they're in the downloaded file, not the QR code), update your details without reprinting QR codes, and track scan analytics. The trade-off is that it requires an internet connection at scan time.

7. NFC Digital Business Cards

NFC (Near Field Communication) business cards take digital contact sharing one step further. Instead of scanning a QR code with a camera, the recipient taps their phone against a physical card, tag, or sticker, and their phone automatically receives the contact data. It feels like magic to people who haven't seen it before — and it's built on the same vCard format under the hood.

How NFC Contact Sharing Works

An NFC tag is a small chip with a tiny antenna — thin enough to embed in a standard business card, a sticker, a phone case, or a keyring. The tag stores a small amount of data (typically 144 bytes to 8KB depending on the chip type) and transmits it wirelessly when a phone is held within a few centimeters. For contact sharing, the NFC tag contains either a vCard payload directly or a URL that points to a VCF file download.

Both iPhone (XS and later) and Android phones support reading NFC tags without installing any app. The phone detects the NFC tag, reads the payload, and either opens the contact save dialog (for direct vCard data) or opens the URL in the browser (for URL-based payloads). iPhones require the screen to be on but unlocked; Android phones vary by manufacturer but generally support background NFC reading.

Direct vCard vs URL-Based NFC

The most common NFC tags (NTAG213) hold only 144 bytes of usable data. A minimal vCard with just a name, phone number, and email is about 150-200 bytes — already tight. This means direct vCard storage only works on larger tags (NTAG215 with 504 bytes, or NTAG216 with 888 bytes) and requires stripping the vCard to absolute essentials.

The more practical approach is to store a URL on the NFC tag that points to a hosted VCF file or a contact landing page. A URL like https://byline.email/v/abc123 fits easily in any NFC tag and lets you include full contact details, a photo, multiple phone numbers, social links, and a company logo — all in the downloaded VCF file. You can also update your contact details without reprogramming the NFC tag, since the tag just contains the URL and the content lives on the server.

Programming NFC Tags

You need an NFC-capable phone and a free NFC writing app. On Android, apps like NFC Tools or NXP TagWriter let you write NDEF records to blank NFC tags. On iPhone, apps like NFC Tools or Simply NFC work similarly. Write the URL as an NDEF URI record — this is the most compatible format and ensures every phone that reads the tag opens the URL automatically. Blank NTAG213 tags cost about $0.30–0.50 each when purchased in bulk, making NFC business cards extremely cost-effective.

Create a professional digital business card with a hosted VCF file using Byline's vCard generator — then write the download URL to an NFC tag for tap-to-save functionality. Pair it with a printed email banner for a complete professional branding package.

8. Apple Contacts vs Google Contacts Handling

Both Apple Contacts and Google Contacts import VCF files, but they interpret certain vCard properties differently. If you're creating vCards that will be imported by a mixed audience of iPhone and Android users, understanding these differences helps you write vCards that work well on both platforms.

Platform-Specific vCard Handling

  • Photo handling: Apple Contacts handles embedded base64 photos flawlessly and displays them at high resolution. Google Contacts also imports base64 photos but may compress them. Both support URL-based PHOTO properties, but Google is more reliable with URLs while Apple prefers embedded data.
  • Custom fields (X-properties): Apple Contacts supports many X- prefixed custom properties: X-SOCIALPROFILE for social media links, X-ABRELATEDNAMES for relationships, X-ABADR for address formatting hints. Google Contacts ignores most X- properties except X-SOCIALPROFILE, which it maps to its own social profiles section.
  • Social profiles: Apple uses X-SOCIALPROFILE;TYPE=twitter:https://twitter.com/handle. Google recognizes this but also uses its own IMPP property for social links. For maximum compatibility, include both: X-SOCIALPROFILE for Apple and URL properties as fallback for everything else.
  • Address formatting: Apple Contacts respects the ADR field structure and formats addresses according to the country’s postal conventions (using X-ABADR as a hint). Google Contacts tends to display addresses more literally, showing exactly what’s in each ADR component without country-specific reformatting.
  • Multiple vCards in one file: Both platforms support VCF files containing multiple vCards (multiple BEGIN:VCARD...END:VCARD blocks). Apple imports them all at once and shows a preview of each. Google Contacts imports them silently. Both handle multi-contact VCF files well.
  • vCard 4.0 support: Apple Contacts has excellent vCard 4.0 support — it exports contacts in 4.0 format by default. Google Contacts has acceptable 4.0 support but works more reliably with 3.0 files. If targeting both platforms, vCard 3.0 is the safer choice.

For reference, Apple's documentation on importing contacts and Google's documentation on importing contacts to Google Contacts cover the import process from the user's perspective. When testing your vCards, import them on both platforms and verify every field is displayed correctly. Fields that don't import cleanly on one platform may need to be restructured or duplicated using platform-specific properties.

9. Privacy Considerations

vCards are designed to share personal information — that's their entire purpose. But the ease of sharing creates privacy risks worth considering, especially when your vCard is encoded in a QR code on a public-facing business card, embedded in every email you send, or written to an NFC tag that anyone can read.

What to Include and What to Omit

Just because vCard supports a field doesn't mean you should populate it. Your business vCard should include your professional name, work phone, work email, company name, title, and website. It should not include your home address, personal phone number, birthday, or private social media accounts unless you have a specific reason. A vCard shared via QR code at a conference reaches an unknown audience — treat it like any public-facing professional profile.

QR Code and NFC Exposure

QR codes on printed materials can be scanned by anyone — not just the intended recipient. If your business card is photographed (increasingly common at events), the QR code in the photo can be scanned later. Similarly, NFC tags can be read by any NFC-capable phone within range. Consider what information you're comfortable making accessible to anyone who encounters your card, not just the people you hand it to intentionally.

URL-Based vCards and Tracking

If you use a URL in your QR code or NFC tag that points to a hosted VCF file, be aware that the hosting server can track access. This can be useful (knowing how many people saved your contact) but also raises privacy considerations. Server logs record IP addresses, timestamps, and device information for every download. If you're offering the vCard download from your own domain, your privacy policy should mention this. If you're using a third-party vCard hosting service, review their privacy policy to understand what data they collect about your contacts.

GDPR and Contact Data

Under GDPR, a vCard is personal data. If you collect other people's vCards (e.g., scanning attendee badges at events), you're collecting personal data and must process it lawfully. Sharing your own vCard is generally fine — you're consenting to share your own information. But if your company distributes vCards containing employee information, the employees should know their data is being shared and the vCard content should align with what's necessary for the business purpose. The email disclaimer legal guide covers GDPR requirements for email communications in more detail.

For professional email signatures, vCards are powerful additions. Use Byline's signature generator to create a signature with a "Save Contact" vCard link, and validate your signature's metadata with Clarity to ensure your links preview correctly. Choose your signature colors with Hue for a cohesive brand palette.

Generate your vCard in seconds

Skip the manual formatting. Byline's vCard generator creates properly formatted VCF files with base64 photos, correct escaping, and line folding — ready to download, share, or encode into a QR code.

Create Your vCard — It's Free

Frequently Asked Questions

What is a VCF file and how do I open it?

A VCF (Virtual Contact File) is a vCard file containing contact information in a standardized text format. Every major contacts app opens VCF files natively — on iPhone tap the file and it opens in Contacts, on Android it opens in Google Contacts, on Mac it opens in Apple Contacts, and on Windows it opens in People or Outlook. You can also open VCF files in any text editor to see the raw data. Double-clicking a .vcf file on any platform should open it in the default contacts app.

What is the difference between vCard 3.0 and 4.0?

vCard 3.0 (RFC 2426) and 4.0 (RFC 6350) are both active standards. The key differences: 4.0 makes only FN required (3.0 requires both N and FN), 4.0 uses MEDIATYPE instead of ENCODING and TYPE for photos, 4.0 adds new properties like KIND and GENDER, and 4.0 uses tel: URI scheme for phone numbers. For maximum compatibility across all contacts apps and platforms, use vCard 3.0. Apple Contacts works well with 4.0 but Google Contacts and older systems are more reliable with 3.0.

Can I include a photo in a QR code vCard?

Technically yes, but practically no. QR codes can hold roughly 3-7KB of data depending on error correction level. A base64-encoded photo is typically 15-40KB — far exceeding QR code capacity. The solution is either to omit the photo from QR code vCards or use a URL-based approach: encode a URL pointing to a hosted VCF file that includes the photo. The URL approach also lets you update your contact details without reprinting the QR code.

How do NFC business cards work?

NFC business cards contain a small wireless chip (NFC tag) embedded in the card material. When someone taps their smartphone against the card, the phone reads data from the NFC tag via radio waves — no app required. The tag typically stores a URL pointing to a VCF file download or a digital business card page. The phone opens the URL, downloads the contact data, and offers to save it. Both iPhone (XS and later) and modern Android phones support reading NFC tags natively.

Why does my vCard look different on iPhone vs Android?

Apple Contacts and Google Contacts parse vCard data differently. Apple has better support for custom X- properties (like X-SOCIALPROFILE), displays photos at higher resolution, and formats addresses according to country conventions. Google Contacts ignores most X- properties, may compress embedded photos, and displays addresses more literally. For best results on both platforms, use vCard 3.0, include standard fields (N, FN, TEL, EMAIL, ORG, TITLE, URL, ADR), and test your VCF file on both an iPhone and an Android device.

How do I add a vCard to my email signature?

There are two approaches: attach the VCF file to every email (cumbersome and increases email size), or add a "Save Contact" link in your signature that points to a hosted VCF file. The link approach is better — it keeps emails small, lets you update contact details without changing the signature, and works as a one-click save for recipients. Byline’s signature generator can create a signature with a built-in vCard download link automatically.