(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.data-privacy-src= 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-TT9ZP96');

Knowledge Base

Best Practices for Generating vCards

A vCard is a digital business card or a contact card that can be shared in a .vcf file format, through text messaging. Using our API, you can dynamically generate and send vCards to your clients.


iOS vCard


Possible Fields in a vCard

  • Full Name
  • Organization (Name of your Company)
  • Title (Job Title)
  • Phone Number
  • Email Address
  • Location/Mail Address
  • Photo
  • Note
  • Website URL

We recommend a square photo with a minimum size of 400×400. We recommend a jpg image but we support png and gif file types. We recommend the file size of the image not exceed 200kb.

Additional Notes for Images

  • We do not recommend using an image larger than a 3:2 or 2:3 ratio. The resulting image may be stretched, blurry, or cut off as a result.
  • We do not recommend using an image with a transparent background since the background may turn black on certain handsets.
  • We do not recommend using an animated gif for the photo since the image will lose its animation when converted.

Additional Notes for Supported Fields

  • We support up to four phone numbers, email addresses, physical addresses, and websites in the vCard.
  • We support the labels “work” and “home” for the phone numbers, email addresses, and physical addresses labels in the vCard. Additionally the labels “mobile”, “fax”, “pager”, “main”, and “other” are supported for the phone numbers only.
  • For more information, please visit the API documentation here.

Additional Notes for Website URLs and Labels

  • Android devices do not support Website labels.
  • iOS devices will automatically display “homepage” label for a website URL with no label.
  • iOS devices will hide the rest of the label after around 50 characters or so and will add an ellipsis at the end instead.
  • If an invalid URL is added, it will still be clickable but may not be accessible when clicked.
  • We tested with a list of special characters (~`!@#$%^&*()_-+=[{}]|;:'”,<.>/) and noted the following:
    • If there is some text before and after the ; (semicolon), then the semicolon and the text after it will be removed. Ex) ab;cd => ab
    • If the label starts with \; then the \ gets removed. Ex) \;ab => ;ab
    • If the label starts with a ; then the ; gets removed. Ex) ;ab => ab
    • \ will always be removed regardless of where it is in the label. Ex) ab\cd => abcd
  • iOS devices will automatically add http to website URLs that do not contain http or https whereas Android will accept any website URL as is.

How your Dynamic vCard and the Message would look like


iOS vCard 2


vCard Jane Doe Android
Go to Top