How to create a business card QR code

by mikepk on April 2, 2010

Generally there are two ways to create QR codes for business cards. The first involves putting the information directly into the barcode. The other usually uses a web address to act as either a landing page filled with the contact information (say your linkedin profile) or as an indirect way of pointing to your contact information. Each method has its pros and cons and I’ll go over each.

The Direct Method

QR codes are designed to store text. Over time, many barcode readers have evolved to understand that when the text is formatted in special ways, that they should do “smart” things with the information. Adding contact information with these formats, in many cases, allows them to be acted upon, say dialing an embedded phone number or possibly rapidly importing a contact into an address book.

One such format is vCard. vCards are fairly common, you may have seen vCards attached to emails with people’s contact information. Unfortunately, there are different versions of the vCard format, so usually only the simplest (first vCard version) is understood by most barcode decoders. While many address book applications can output vCards, just exporting a vCard from your address book application will usually not work and result in confused barcode readers.

If you want to explore QR codes with a simple vCard embedded you can use this form to generate vCard based QR codes. Alternatively, if you just want to convert some text into a QR code, there’s a form for that too.

A typical vCard formatted block of text might look something like this:

BEGIN:VCARD
N:Kowalchik;Michael
ORG:TenZeroLab
TITLE:Founder
EMAIL:mikepk@tenzerolab.com
END:VCARD

Which generates the following QR barcode:

Mike's vCard

There are a couple of benefits to adding contact information directly to the barcode. The first is that the information can be read without a data connection, all of the information is in the code itself. Another, related, benefit is that there is no reliance on a third party to connect you to your contact information. Most indirect methods rely on an intermediary to direct you to the actual contact information which can present privacy and dependency issues.

One drawback of putting the information inside the barcode, especially if you’re using more complex formats, is that not all barcode readers treat the formats the same way. There’s no official standard for storing contact information, so there’s no guarantee the barcode reader will identify it and do the right (or expected) thing with the data.

Another problem is that if you ever want to change the contact information in the code, you can’t. With the direct method, whatever is in the code at print time is now immutable.

The last drawback of the direct method is that the QR code becomes more complex, “busier”, the more information you store in it. This has direct implications for how easy it is to decode, especially with cell phone cameras. Simpler codes are easier to read. This puts a practical upper limit on what you can store in a QR code printed on something small like a business card.

The Indirect Method

The other method of storing contact information, the one used by SnapMyInfo, is to use a web url to act as a “pointer” to the contact information. This means that the actual contact details are not stored in the code itself, but rather they’re stored online somewhere that can be accessed by the link.

In the case of SnapMyInfo, each user’s contact card is assigned an address. Here’s an example of what’s actually stored inside a SnapMyinfo QR code:


http://snpmy.com/9WDu17f29WQYoe

This link results in a QR code that looks like this (this is the one that stores contact info for SnapMyInfo itself).

SnapMyInfo

These addresses currently turn into an email “mailto” link. If you follow them, your email program should open pointing at SnapMyInfo’s email decoder, send that email and you get contact information in a response. After a lot of trial and error, it turned out that most phone devices seemed to accept maito links and handled the resultant contact data more easily if it was attached to an email. (As an example, redirecting the link to download a contact directly fails on the iPhone. Mobile Safari currently doesn’t understand how to download contact information from the web). One of the nice things about using these kinds of addresses is that their behavior can be altered. A feature I’m planning to add is the ability for users to change what their SnapMyInfo address redirects to on the fly.

Obviously, you don’t have to use SnapMyInfo to use the indirect method. There are other services that are using a similar technique. Also, using a link to something like your LinkedIn profile accomplishes much the same thing, creating a pointer to where you can find your latest information (assuming you keep LinkedIn up to date of course).

The benefits and drawbacks of the indirect method are the inverse of the direct method. Storing a pointer means that you can update and change your contact information over time, and all the barcodes you may have printed remain valid and up-to-date. The indirect method also means that you can store a lot more information “behind” the QR code, the code itself never increases in complexity since the barcode only contains a fixed size web address. This means contact information that comes out can be richer, like the inclusion of contact photos in the contacts that come out of SnapMyInfo.

Using the indirect method, however, also means that the decoder needs to have a network connection to be able to access the data. It also means that the contact information is dependent on the intermediary being there, such as SnapMyInfo.

If you’re interested in giving the indirect method a shot, sign up for a SnapMyInfo account! I would love to hear your feedback.

{ 0 comments }

QR me!

Click and hold, then drag it to the bookmarks bar on your browser.


Here’s a quick little bookmarklet to generate QR codes. If you click the bookmarklet while you’re on a page, it will generate a barcode based on the address for that page. Try it now! if you click the button, you should get a QR code for this blog post.

Another feature is that you can also generate barcodes from highlighted text on the page. You can use it to quickly encode any page text into a barcode. Of course, if you want to encode arbitrary text, there’s a tool for that as well.

What’s this useful for? Mostly this is just a fun, quick, way to generate QR codes to experiment with. There is one thing I’ve found it’s quite useful for though. Ever wanted to load the page you have open in your browser quickly on your phone? Click the bookmarklet then scan the code using your phone’s barcode reader. It’s faster than typing in long urls! Let me know if you find any other fun or useful hacks!

bookmarklet.png

Update: Had some issues with wordpress and the quote marks in the bookmarklet. Should work now.

{ 2 comments }

Facebook Jumping in the Gowalla and Foursquare Pool?

March 19, 2010

Just saw on Techcrunch, that it seems like the QR tests that appeared on Facebook are part of a location service of some kind. At first blush it sounds more like Google Favorite Places, but with Facebook’s focus on people and connections I can’t help but wonder if it’s going to incorporate aspects of Foursquare [...]

Read the full article →

QR Codes Ugly? The Future of Unobtrusive Physical Hyperlinking

March 19, 2010

One of the issues with QR codes that I’ve heard several times is that they’re not that visually appealing. I just ran across an interesting blog post Clothes With Matrix Codes Put Information Up Front | Singularity Hub. The post mentions another technology I wasn’t aware of Data Glyphs, symbols that can be embedded into [...]

Read the full article →

Overcoming the Limitations of QR Codes as Business Cards

March 18, 2010

Sharing information using QR codes is a great idea but it’s not without its limitations. I’ve been working on SnapMyInfo for several months now and thought I’d share my experiences with sharing contact information in this way.

Read the full article →

Facebook and the Coming Wave of QR Codes

March 16, 2010

With Facebook’s push to add QR codes to profiles, there is now the potential for millions of new users to be exposed to the what’s possible with these two dimensional barcodes. This technology has the potential to be as fundamental as the hyperlink with just as many amazing applications and creative uses.

Read the full article →

Read and Decode QR Codes Without a Smartphone

March 12, 2010

This led me to create a way to read these 2d barcodes without a smartphone. What I’ve built is an email-based QR code decoder that works on photo attachments.

Read the full article →

Create 2D QR Barcodes

March 11, 2010

There seems to be growing interest in these kinds of two dimensional barcodes, so I thought it would be fun to allow you to generate barcodes based on arbitrary text and not just snap codes.

Read the full article →

A QR Code Clock – qrtime.com

March 1, 2010

Not very practical as a timepiece, but I could see this as a fun piece of dynamic QR artwork that could be placed somewhere.

Read the full article →

Presentation on QR Codes

February 23, 2010

I stumbled across this presentation about QR codes and their uses, specifically their uses in libraries and museums. I’m a sucker for the prezi.com style of presentation animation (ooh eye candy ).
In the “drawbacks” part of the presentation, it mentions that these codes require special applications. I was trying to address this [...]

Read the full article →