Free QR Code Generator — Create QR Codes for Any URL Online
Generate a QR code for any URL instantly — entirely in your browser, with no upload required. Customize the QR color and background, choose from four output sizes (200–600 px), set the error correction level for durability, and add an optional center label. Download as a crisp PNG or copy the raw SVG to your clipboard. Free, private, no account needed.
QR Code Preview
Your QR Code will appear here.
Enter a URL and click Generate.
How to Create a QR Code Online
This tool uses QRCode.js — an open-source JavaScript library — to generate QR codes entirely within your browser. No data is transmitted to any server. The URL you enter, the colors you choose, and the resulting QR image all stay on your device.
Step 1 — Enter Your URL
Type or paste any valid URL into the input field. The tool accepts https:// and http:// URLs, as well as other URI schemes including mailto:, tel:, and sms:. A validation indicator turns green when the URL is correctly formatted. For maximum compatibility with QR scanners and phones, always use full URLs starting with https://.
Step 2 — Choose a Size
Select one of four output sizes:
- Small (200 px) — For on-screen display, email signatures, or small print areas where space is limited.
- Medium (300 px) — The recommended default for general use. Works well for social media, documents, and web pages.
- Large (450 px) — For presentations, posters, or any print context where the QR code needs to be legible from a distance.
- XL (600 px) — For large-format printing such as banners, signage, or high-resolution documents.
Step 3 — Customize Colors
Set the QR Color (Dark) — the color of the QR modules (dots and squares) — and the Background Color using color pickers or by entering hex codes directly. The most important rule: the dark color must be sufficiently darker than the background for scanners to detect the contrast. A high contrast ratio (dark on light or light on dark) ensures fast, reliable scanning across all devices and lighting conditions.
Step 4 — Set Error Correction Level
Error correction determines how much of the QR code can be damaged or covered while still being scannable:
- L (~7%) — Lowest redundancy. Produces the smallest, least dense QR code. Use only in ideal scanning conditions with clean printing.
- M (~15%) — Default. Good balance between size and robustness for most everyday use cases.
- Q (~25%) — Good for outdoor use or scenarios where the QR may get slightly dirty or worn.
- H (~30%) — Highest redundancy. Best for QR codes on products, packaging, or anywhere damage is likely. Automatically selected when a center label is added.
Step 5 — Add a Center Label (Optional)
Enter up to 22 characters of text to appear in a white pill at the center of the QR code — for example "Scan me", "Menu", "Wi-Fi", or your brand name. When a center label is set, the error correction level is automatically raised to H to ensure the QR remains scannable even with the center partially covered. Keep the label short — the QR must retain enough visible modules around the center for reliable scanning.
Step 6 — Generate and Download
Click Generate QR Code. The QR appears in the preview panel on the right. Click Download PNG to save a crisp raster image at your chosen resolution. Click Copy as SVG to copy the vector markup to your clipboard — useful for pasting into Figma, Illustrator, Canva, or directly into HTML.
What Can QR Codes Be Used For?
- Website links — Point people to a landing page, product page, or blog post without requiring them to type a URL.
- Restaurant menus — Replace printed menus with a QR code that opens a PDF or web menu on customers' phones.
- Business cards — Add a QR code to your business card linking to your LinkedIn profile, portfolio, or contact page.
- Event invitations — Encode a registration link or event page so attendees can RSVP instantly by scanning.
- Wi-Fi sharing — Encode a
WIFI:T:WPA;S:NetworkName;P:Password;;URI so guests can connect without typing passwords. - Product packaging — Link to manuals, warranty registration, or promotional pages from physical products.
- Payment links — Encode a payment URL or digital wallet address for contactless transactions.
- Social media profiles — Link directly to your Instagram, YouTube, or TikTok profile for offline-to-online engagement.
Frequently Asked Questions
Is my URL sent to a server?
No — your URL never leaves your device. The tool uses QRCode.js, an open-source JavaScript library that runs entirely in your browser. No data is transmitted over the internet at any step: not the URL, not the generated QR image, and not any configuration settings. This makes the tool safe for generating QR codes for private links, internal tools, or sensitive destinations.
What is Error Correction Level and which should I choose?
Error correction is a built-in feature of the QR code standard that allows a code to remain scannable even if part of it is obscured, dirty, or damaged. L (~7%) stores minimal redundancy and produces smaller QR codes — good for clean digital display. M (~15%) is the default and works for most use cases. Q (~25%) is good for outdoor or worn surfaces. H (~30%) is the most robust and is automatically set when you add a center label, since the label covers part of the QR. In general, choose a higher level for physical printing and a lower one for purely digital use.
Can I use custom colors for my QR code?
Yes. Use the QR Color (Dark) picker to change the module color and the Background Color picker to change the fill. You can enter any hex color. The critical requirement: the dark color must provide sufficient contrast against the background — QR scanners rely on high contrast to detect the pattern. Very similar colors (e.g., dark grey on black) will prevent scanning. For non-standard color combinations, always test with a real phone scanner before printing.
What formats can I download the QR code in?
PNG — A raster image at your chosen resolution (200, 300, 450, or 600 pixels). Suitable for most use cases: documents, websites, presentations, and print in moderate sizes. SVG (Copy to Clipboard) — Scalable vector markup that can be pasted into design tools like Figma, Adobe Illustrator, or Canva. SVG is resolution-independent, making it ideal for large-format printing where the QR needs to scale without pixelation.
What is the QR Code Title and how many characters can I use?
The QR Code Title is an optional label (up to 22 characters) that appears in a white pill at the center of the QR code — for example "Scan me", "Menu", "Wi-Fi", or your brand name. When a title is added, the error correction level is automatically set to H (~30%) to ensure the QR remains scannable even with the center covered. Keep the text short: longer labels cover more of the QR pattern, and while H correction compensates, very long labels near the 22-character limit may reduce reliability on low-resolution printers.
Which URLs and URI schemes are supported?
Any valid URL or URI is supported, including https:// and http:// web URLs, mailto: for email addresses, tel: for phone numbers, sms: for text messages, and WIFI: for Wi-Fi credentials. For maximum compatibility across all QR scanner apps and phone cameras, always use full URLs with a protocol prefix (e.g., https://) rather than bare domain names like example.com.
Why isn't my QR code scanning correctly?
The most common causes of scanning failure are: (1) Low contrast — the dark and light colors are too similar for the scanner to detect. Always use high-contrast color combinations. (2) QR too small in print — at smaller physical sizes, module detail is lost. Use a larger resolution (450 or 600 px) for printed materials. (3) Center label too long — if the label covers too many modules, even H error correction may not compensate. Try a shorter title. (4) Invalid URL — if the encoded URL has a typo, the QR code will scan successfully but the link will not open correctly. Always verify the URL before generating.
Is there a limit to how long the URL can be?
The QR code standard has a practical data capacity limit that depends on the error correction level and character type. For typical HTTPS URLs, the limit is several hundred to over a thousand characters — far more than most URLs require. Very long URLs (such as those containing base64-encoded data or long tracking parameters) may produce denser QR codes that are harder to scan reliably. For very long URLs, consider using a URL shortener first.
Why Use Alfreto's QR Code Generator?
Most online QR code generators send your URL to a remote server to process the image. That means your link — whether it points to a private internal tool, a sensitive landing page, or confidential content — is logged by a third party. Alfreto generates QR codes entirely client-side using open-source JavaScript, with zero server involvement.