QR codes can encode any text string, but certain formats are recognised by smartphones and trigger specific actions automatically:

  • Website URL: https://example.com โ€” opens in browser
  • Email: mailto:name@example.com โ€” opens email app
  • Phone: tel:+12345678900 โ€” dials the number
  • SMS: sms:+12345678900 โ€” opens SMS app
  • Wi-Fi: WIFI:S:NetworkName;T:WPA;P:yourpassword;; โ€” joins Wi-Fi automatically
  • vCard (contact): Standard vCard format โ€” adds to contacts
  • Plain text: Any text โ€” displayed by scanner

Single vs Bulk QR Code Generation

Single mode is perfect for one-off QR codes: product labels, business cards, event posters, menus, presentation slides, or any situation where you need one specific QR code right now. Type or paste your content, choose a size and download the PNG.

Bulk mode is built for scale. Paste up to 200 different URLs or text strings โ€” one per line โ€” or upload a .txt file. The generator creates a PNG for each line and bundles everything into a ZIP archive. This is ideal for: e-commerce product labels with individual product URLs, event ticket QR codes for each attendee, class or voucher batches, and anywhere you need many unique QR codes at once.

QR Code Size and Print Quality

The size setting controls how many pixels are used per module (the individual squares in the QR pattern). Larger settings produce higher-resolution images suitable for large-format printing โ€” banners, posters and packaging. For digital use (screens, email, social media), Medium or Large works well. For small labels and business cards, Medium is the right balance of quality and file size.

Installing phpqrcode for Self-Hosted Servers

This tool works best with phpqrcode installed at /libs/phpqrcode/qrlib.php. Download the free library from phpqrcode.sourceforge.net and place the files in that directory. Without it, the tool uses a fallback method. For full offline QR generation with no external requests, install phpqrcode.

Error Correction Levels Explained

QR codes have four error correction levels โ€” L, M, Q and H โ€” that determine how much of the code can be damaged or obscured while still being readable:

  • L (Low, ~7% recovery): Produces the simplest, least dense pattern. Best for digital use where no damage is expected and you want the smallest, cleanest QR code.
  • M (Medium, ~15% recovery): A balanced default for most uses. Works well for printed materials in normal conditions.
  • Q (Quartile, ~25% recovery): Higher redundancy. Good for outdoor signage, labels on products that might get scratched, or anywhere minor damage is possible.
  • H (High, ~30% recovery): Maximum redundancy. Required if you plan to place a logo or image over the centre of the QR code, which obscures part of the pattern. The high redundancy ensures the code still scans despite the overlay.

Best Practices for QR Code Design

  • Always test before printing: Scan your QR code with at least two different devices before committing to a print run. Different QR scanner apps can behave differently.
  • Maintain quiet zone: QR codes require a blank border (quiet zone) of at least 4 modules on all sides. Don't place text or design elements directly against the edge of the code.
  • Minimum size for print: For reliable scanning, QR codes should be at least 2 cm ร— 2 cm in physical print size. Smaller codes require higher-resolution printing.
  • High contrast: Use dark modules on a light background. Avoid placing QR codes on busy backgrounds, gradients or textured surfaces.
  • Use short URLs: Shorter content means less complex patterns, which are easier to scan. Use this site's URL Shortener to create a compact short URL before encoding it.
  • Dynamic vs static: A QR code is essentially static โ€” if the destination URL changes, you need to reprint the code. Use a URL shortener as the QR destination so you can update where it points without reprinting.
Privacy: QR codes are generated on ConvertFree.net servers. Your content strings are not stored or logged beyond the temporary file needed to serve the download. Files are deleted within 5 minutes.