Older cell phones do not have autofocus cameras, so they can have a hard time reading small QR codes. If possible, create a “larger” QR code, like 1.5 inches square (or bigger if on a poster, for example). That should work with older phones.
Print the QR code using a laser printer, so that the image is crisper.
Try to limit glare on the code, since that will inhibit readability. So putting it behind plastic, for example, may limit the codes usefulness if there is glare.
Have a good color contrast on the code, e.g., black on white, again to enhance readability.
Create your code using software provided by the QR code reader you are going to use (or that you are going to recommend others use). So, for example, use Scanlife software to create the code, and recommend Scanlife for reading the code. Again, this helps readability. This piece advice works if you’re in a situation where you can indeed recommend to people the ‘preferred QR code reader to use.
Try your QR code with several different readers, so you’ll see how it works. Vcards (in a QR code) don’t always work well with different readers. Also try out the code in different settings. So if you going to put the code on your badge, test it on a badge to see how it is going to work. (You might also consider how people will read the code and where the best place is to put it.)
If you plan on using your phone to read QR codes, download several different readers, since they all do not work the same (and sometimes you’ll need to try a different reader).
If you are using the QR code as a replacement for a URL (or some other information), have that information handy in a different form for those that do not have a QR code reader.