QR Code Generator — Apply Best Practices
Use the generator below to create a QR code following all the best practices from this guide. Adjust error correction, colors, and size as recommended.
PNG, JPG, or WebP. Logo is embedded in the center of the QR code. Use High error correction for best results.
Your QR code will appear here
Enter your URL and click "Generate"
The Complete QR Code Best Practices Guide
Six essential areas that determine whether your QR code succeeds or fails in the real world.
1. Minimum Size Guidelines
Size is the single most common reason QR codes fail. Cameras need enough pixels to resolve the fine pattern details, and that requires a minimum physical area. For business cards, use at least 2 cm × 2 cm (0.8 in) — smaller than this and most phone cameras struggle at arm's length. Flyers and posters should have a QR code of at least 3 cm × 3 cm to be scannable from 30–40 cm. For billboards and large-format signs, apply the rule of thumb: code size = scanning distance ÷ 10. A code meant to be scanned from 3 metres needs to be at least 30 cm square. On digital screens maintain a minimum of 240 px × 240 px; for high-DPI displays, 480 px or more is recommended to avoid softness. Always export at the highest resolution you need — QRMint supports up to 2048 × 2048 px PNG and infinite-resolution SVG.
2. Error Correction Levels
QR codes have four error correction levels: L (Low, 7%), M (Medium, 15%), Q (Quartile, 25%), and H (High, 30%). The percentage indicates how much of the code can be damaged or obscured and still scan correctly. Level M is the right choice for most use cases — it balances data density with resilience against minor dirt, smudges, and print wear. Use Level L only when you need to fit a large amount of data into a compact code and the printing environment is clean and controlled. Use Level H whenever you embed a logo inside the QR code — the logo physically covers part of the pattern, so you need maximum redundancy to compensate. Level Q is a practical midpoint for codes that will be displayed outdoors or in environments with occasional physical damage. QRMint defaults to Level M and lets you switch to H with one click when you upload a logo.
3. Color Contrast Rules
QR code scanners work by detecting the contrast between dark modules and a light background. This means the foreground (modules) must always be significantly darker than the background. The minimum recommended contrast ratio is 4:1; aim for 4.5:1 or higher for reliable scanning across different cameras and lighting conditions. Never invert the colors (light modules on a dark background) without thoroughly testing — many scanning apps and built-in phone cameras struggle with inverted QR codes. Avoid placing a QR code on a patterned or textured background. If you use brand colors, ensure the foreground hex is at least 4× darker in luminance than the background hex. Gradients are supported by QRMint, but keep the gradient's darkest point well above the contrast threshold for the entire code area. When in doubt, black on white is always the safest choice.
4. Placement & Positioning
Where and how you place a QR code directly affects scan rates. Eye level is ideal — codes placed too high or too low require awkward phone angles. Avoid mounting QR codes on curved surfaces such as bottles or cylinders; the distortion makes them significantly harder to scan. Every QR code requires a quiet zone — a border of white space equal to at least four module widths on all four sides. Never let graphics, text, or design elements intrude into this margin. Consider ambient lighting: codes in dark environments or under strong directional light (glare on glossy paper) will perform poorly. For outdoor placement, use UV-resistant laminate to prevent fading. Include a clear call to action near the code — "Scan to learn more" — to increase engagement. A QR code without context sees up to 60% fewer scans than one with a brief instruction.
5. Testing Before Printing
Never go to print without testing, and never test with just one device. Use at least three different phones — an iPhone and two Android devices with different camera apps — to confirm the code scans reliably. Test at the exact distance users will be standing when they encounter the code in the real world. Test in the actual lighting conditions of the deployment environment: a code that scans perfectly in a bright office may fail under fluorescent strip lighting or in a dimly lit bar. Print a physical proof rather than testing only on screen — printer gamut and paper finish affect contrast. Verify that the destination URL works, loads quickly on a mobile connection, and that the landing page is mobile-optimised. Finally, consider the entire user journey: from the moment someone raises their phone to scan, to completing the action on the destination page. Any friction in that chain reduces conversion.
6. Common Mistakes to Avoid
The most frequent QR code failures are entirely preventable. Inverting colors (printing light modules on a dark background) breaks compatibility with a large share of scanning apps — always use dark on light. Making the code too small is the leading cause of failed scans in print; follow the size guidelines above without compromise. Using low error correction (Level L) with an embedded logo is a near-guarantee the code will not scan — always use Level H when adding a logo. Linking to a broken or expired URL is a silent failure mode that wastes every scan; set up a redirect through a link manager if the destination URL may change. Omitting the quiet zone by letting surrounding design elements bleed into the margin destroys scannability near the edges. Lastly, not testing on physical print before distribution is the mistake that causes the most costly reprints. Catch these issues with QRMint's high-resolution preview before you commit to a print run.
How to Design, Test & Deploy Your QR Code
Three steps. Under a minute. No account needed.
1. Design Your QR Code
Choose your QR type, enter your content, and customise colors, module shape, eye style, and frame. Follow the contrast and size guidelines from this guide. Upload a logo if needed — and select High error correction to keep it scannable. Save your style as a reusable preset for consistent branding across all your codes.
2. Follow Best Practices
Apply the size rules: at least 2 cm for business cards, 3 cm for flyers, and 240 px for screens. Verify your foreground-to-background contrast ratio meets the 4:1 minimum. Confirm the quiet zone is intact. Select an error correction level appropriate for your use case and environment.
3. Test & Deploy
Download as PNG (for digital and standard print) or SVG (for large-format and infinitely scalable output). Print a proof and test with at least three different smartphones in your actual deployment environment. Verify the destination URL works on mobile. Only then go to full print or publish the code digitally.
QRMint Features That Help You Follow Best Practices
Every tool you need to create QR codes that scan reliably, every time.
Error Correction Control
Choose from all four ISO error correction levels — L, M, Q, and H — directly in the generator. QRMint automatically suggests Level H when you upload a logo so you never accidentally generate an unscannable code. For clean environments without logos, Level M is pre-selected as the best-practice default.
High-Resolution Output
Export your QR code at up to 2048×2048 px PNG or infinite-resolution SVG. Meeting the minimum size guideline for any print format is trivial when you start from a high-resolution master. The SVG format is ideal for large-format signs and banners where raster softness would cause scan failures.
Style Preview
See your QR code rendered in real time before downloading. The live preview lets you verify color contrast visually and confirm the quiet zone is intact around the pattern. Switch between light and dark themes using the theme toggle to check how your code looks in both contexts before committing to a design.
Multiple Formats
Download as PNG for digital screens and standard print, or SVG for professional print production. Both formats are available at no cost with no API key or account required. Use the REST API to generate QR codes programmatically and integrate size, error correction, and format selection directly into your workflow or CMS.
QR Code Best Practices FAQ
What is the minimum size for a QR code?
The minimum recommended QR code size depends on the medium. For business cards, use at least 2 cm × 2 cm (about 0.8 in). For flyers and posters, use at least 3 cm × 3 cm. For billboards, divide the intended scanning distance (in cm) by 10 to get the minimum side length — a code scanned from 3 metres should be at least 30 cm square. For digital screens, use at least 240×240 px; on high-DPI displays use 480×480 px or higher. Smaller sizes reduce contrast resolution for camera sensors and cause scan failures, especially in low light or at an angle.
What error correction level should I use?
Use Level M (Medium, 15%) for most QR codes — it balances data capacity with resilience against dirt, smudges, and minor print defects. Use Level H (High, 30%) whenever you embed a logo, because the logo physically covers part of the pattern and requires maximum redundancy to remain scannable. Use Level L (Low, 7%) only for large payloads in pristine print environments where you need to keep the code compact. Level Q (25%) is a good choice for outdoor or high-wear applications where moderate damage is expected.
Can I use custom colors in QR codes?
Yes, but contrast is critical. QR code scanners detect the difference between dark modules and a light background. The foreground color must be significantly darker than the background — aim for a minimum contrast ratio of 4:1, with 4.5:1 or higher recommended for reliable scanning. Never invert the colors (light modules on a dark background) without extensive multi-device testing, as many scanning apps cannot handle inversions. Avoid placing QR codes on patterned backgrounds. QRMint supports full custom colors, gradients, and a live preview so you can verify contrast before downloading.
How far away can a QR code be scanned?
The scannable distance depends directly on the physical size of the code. A practical rule of thumb is: maximum scanning distance = code size × 10. A 3 cm code can reliably be scanned from up to 30 cm. A 30 cm code on a billboard can be scanned from up to 3 metres. These are conservative estimates under good lighting with a modern smartphone. Actual range varies with camera resolution, lighting conditions, and the amount of data encoded in the QR code (more data means a denser pattern that requires closer proximity or a larger physical size to resolve).
Should I test my QR code before printing?
Absolutely — always test before printing. Test with at least three different devices: an iPhone and two Android phones with different camera apps. Test at the intended scan distance and in the actual lighting conditions where the code will be deployed. Print a physical proof rather than testing only on screen, because printer gamut and paper finish affect perceived contrast. Verify the destination URL is working, loads quickly on a mobile connection, and that the landing page is mobile-optimised. The cost of a reprint far exceeds the time it takes to test properly before committing to a run.
Need specific QR code types? QRMint generates URL, vCard, Email, Phone, SMS, WiFi, Event, and Payment QR codes — all free, no signup, with full styling and best-practice controls built in.