Skip to main content
C
CodeUtil

How to Create QR Codes: Complete Guide for Developers and Marketers

I generate QR codes for everything - WiFi passwords for visitors, contact cards for business cards, URLs for print materials. Here is what I have learned about making them scan reliably.

2024-09-128 min
Related toolQR Code Generator

Use the tool alongside this guide for hands-on practice.

Why I use QR codes everywhere

QR codes are those square patterns you scan with your phone. They store data - URLs, WiFi passwords, contact info - in a visual format that any smartphone can read instantly. I used to think they were gimmicky, but now I use them constantly. That's actually why I added a QR generator to CodeUtil - I needed one I could trust for client projects.

At Šikulovi s.r.o., I put QR codes on everything: conference room displays for WiFi access, business cards linking to portfolios, print materials driving to landing pages. They bridge physical and digital seamlessly.

What can you put in a QR code?

Most people only use QR codes for URLs, but they can do so much more. Each type triggers a different action on the scanner's phone.

  • URL: Opens a website - my most common use case by far
  • WiFi: Connects to a network instantly - guests love this
  • vCard: Adds contact info to phone address book - great for business cards
  • Email: Opens email with pre-filled recipient and subject - useful for support links
  • Phone: Initiates a phone call - I use this for customer service numbers
  • SMS: Opens messaging with pre-filled number and text - good for text-to-join campaigns
  • Plain text: Displays any content - I use this for short instructions

Error correction - why it matters for print

QR codes have built-in redundancy so they still scan even when partially damaged. Higher error correction means bigger codes but better durability. I learned this matters a lot for printed materials that get folded or worn.

  • L (7%): Smallest code, minimal recovery - I use for digital only
  • M (15%): Good balance - my default for most cases
  • Q (25%): Better recovery - good for outdoor or busy environments
  • H (30%): Maximum durability - always my choice for print materials

WiFi QR codes changed my life

Okay, slight exaggeration. But seriously, WiFi QR codes are amazing. Scan once, connect instantly - no more spelling out long passwords to guests. I have them posted in every meeting room at Šikulovi s.r.o..

They work with WPA/WPA2, WEP, and open networks. You can even indicate hidden networks. Just update the QR code when you change passwords.

vCard QR codes for networking

I put a vCard QR code on my business cards. When people scan it, my contact info pops up ready to save - no typing, no typos. It is the fastest way to exchange contact information.

You can include name, phone, email, company, job title, website URL - basically everything that would go on a traditional business card.

Lessons from QR codes that did not scan

I have had QR codes fail at the worst times - print runs already done, clients waiting. Here is what I learned the hard way.

  • Size matters: At least 2cm for close scanning, bigger for distance - I once printed them too small
  • High contrast: Dark on light background - my branded purple on light gray did not scan well
  • Quiet zone: Keep white space around the code - designs that crowd the edge fail
  • Short content: Less data = simpler code = faster scanning
  • Test before printing: I scan with 3 different phones minimum before any print run
  • Error correction H for print: It is worth the slightly larger code

Customizing colors without breaking scannability

You can use custom colors for branding, but be careful. I tried matching our company purple once and the codes would not scan reliably. The rule is: dark foreground on light background, with enough contrast.

Black on white is safest. If you must use colors, test extensively. Light colors on dark backgrounds usually fail.

Static vs dynamic - why I prefer static

Static QR codes encode data directly in the pattern. They never expire and work offline - the code IS the data. Dynamic codes redirect through a service URL, letting you change destinations later, but they depend on that service staying online.

I use static codes because I do not want my print materials to break if some QR service goes down or changes their pricing. For URLs that might change, I use a redirect on a domain I control.

FAQ

Are QR codes free to use?

Yes - static QR codes are completely free with no licensing fees. The standard is open and not patent-encumbered. I generate hundreds of them for various projects at no cost.

Do QR codes expire?

Static QR codes never expire - the data is baked into the visual pattern itself. Dynamic codes depend on the service provider and may expire. That is why I prefer static.

What is the maximum data capacity of a QR code?

Up to 4,296 alphanumeric characters or 7,089 numeric digits. But more data means bigger, more complex codes. I keep URLs short for this reason - use a URL shortener if needed.

Can I add a logo to a QR code?

Yes, but use high error correction (H level) to compensate for the obscured area. Keep the logo under 30% of the code. I have seen branded codes that look great but do not scan because the logo is too big.

Why does my QR code not scan?

Usually it is insufficient contrast, code too small, no quiet zone around the edges, or too much data encoded. Try black on white, bigger size, and more white space around it.

Which format should I download - PNG or SVG?

PNG for digital use and small prints. SVG for large format printing since it scales infinitely without pixelation. I always generate both and keep the SVG as a master file.

Martin Šikula

Founder of CodeUtil. Web developer building tools I actually use. When I'm not coding, I experiment with productivity techniques (with mixed success).

Related articles