QR Code Generator
Generate QR codes for text, URLs, Wi-Fi, contacts, and more. Customize colors and save as high-quality PNG or SVG.
Choosing an Error Correction Level
| Level | Recoverable Damage | Size for same content | When to Use |
|---|---|---|---|
| L | Approx. 7% | Smallest | When you want to include a long URL with minimal density. When viewed only on screen. |
| M | Approx. 15% | Small | Default. Most cases, such as web, documents, business cards. |
| Q | Approx. 25% | Large | Printouts like stickers, posters, banners that might get scratched or wet. |
| H | Approx. 30% | Largest | When placing a logo in the center, or in dirty environments like outdoors or factories. |
What is the QR Code Generator?
This QR Code Generator turns text, links, Wi-Fi credentials, or contact details into a scannable square code. Unlike most sites that send your data to a server, this tool performs all QR encodingโfrom data analysis to Reed-Solomon error correction and mask pattern selectionโentirely within your browser. This means sensitive information like Wi-Fi passwords or personal contacts never leaves your device. The generator automatically optimizes for the most readable code and lets you save the result as a PNG or a scalable SVG.
How to use
- Select a content type from the top bar, such as "๐ URL" or "๐ถ Wi-Fi".
- Fill in the fields for your chosen type. A QR code will instantly appear in the "Preview" pane.
- Choose an "Error Correction Level". Use M for screens, Q for print, and H if you plan to add a logo.
- Adjust the "Image Size", "Outer Margin", and colors to fit your needs.
- Click "Save PNG" for a standard image or "Save SVG" for a scalable vector file perfect for high-resolution printing.
QR Code Generator guide
How this tool is used in real work, and what to watch out for.
Error Correction Isn't Just for Logos
QR codes are readable even if parts are obscured or erased. This is because they contain redundant information (Reed-Solomon error correction codes) that can reconstruct the original data. A higher level means more redundancy, allowing it to recover from more damage. But this also reduces the content capacity, making the code denser for the same data.
It's commonly said, "Use H for logos," but logos aren't the only source of damage. Rain stains on an outdoor banner, scratches on a store sticker, a fold on a business card, or smudged printer ink are all forms of damage.
| Scenario | Level | Why |
|---|---|---|
| Webpages / On-screen display | L or M | No risk of physical damage. A sparser code is faster to scan. |
| Business cards / Flyers / Documents | M | The default. This is sufficient for most uses. |
| Store stickers / Posters / Banners | Q | Accounts for scratches, rain, and sun-fading. |
| Planning to place a logo in the center | H | Error correction compensates for the obscured area. |
| Factories, kitchens, other dirty environments | H | Remains readable even if stained with oil or dust. |
Adding a Logo โ This Tool Doesn't Do It for You
To be clear, this tool does not have a logo insertion feature. You must add the logo yourself using an image editor or design tool. Instead, it provides what you need for that job: Level H error correction and the ability to save as an SVG that won't get blurry when scaled.
The principle is simple: the QR code's error correction capability treats the "covered area" as damage and reconstructs it. In other words, the logo damages the QR code, and error correction patches over that damage. This is why it has clear limitations.
- Change the Error Correction Level to H.
- Click 'Save SVG'. This ensures the code won't get blurry even if printed large after adding the logo.
- In a design tool, place your logo over the QR code. Keep its size within 20% of the QR's side length, and place it in the center.
- Create a margin by placing a white square or circle behind the logo.
- Export the final image, print it at its intended physical size, and test scanning it with multiple devices.
- Even at level H, the theoretical limit is around 30% recovery. In practice, it's recommended to keep the logo within 15-20% of the total area to be safe.
- Always place it in the exact center. Since data is scattered throughout the code, a single block of damage in the middle is the easiest to recover from.
- Never, ever touch the three large squares in the corners (the finder patterns). The scanner uses these to find the code's position and orientation. If they're covered, it won't be recognized as a QR code at all, regardless of the error correction level.
- Place the logo on a solid white background (padding). If the logo's edges touch the QR modules directly, the boundaries can blur, further reducing scannability.
- After creating it, you must test it on multiple devices. The built-in iPhone camera, various Android scanners, and popular apps (like KakaoTalk or Naver in Korea, which have their own scanners) all have different recognition performance. The test is only meaningful if you use the worst-performing scanner you can find.
Printing โ It Won't Scan If You Remove the Margin
The QR specification requires a blank margin of 4 modules' width on all four sides of the code. This is called the 'quiet zone.' A scanner uses this margin to determine "this is where the code begins and ends," so if the margin is missing, it can't find the code's boundaries.
The most common real-world failures happen when a designer crops the margin because it 'looks stuffy,' places the QR code directly on a patterned background, or puts other design elements too close to it. Raising the error correction level to H won't fix thisโit's a completely different problem.
- The margin slider defaults to 4 modules. This tool displays a warning if you set it lower.
- The margin must be white (or your chosen background color). If you must place the code on a photo or pattern, put a solid white square behind the QR code first.
- For printed materials, a more generous margin is safer. It's common for print trimming to be off by a few millimeters.
| Scan Distance | Rec. QR Side Length | Use Case |
|---|---|---|
| 10โ30 cm (handheld) | 2 cm or more | Business cards, flyers, menus, table stickers |
| 1โ2 m (standing) | 10 cm or more | Posters, window signs, information boards |
| 5 m or more (distant) | 50 cm or more | Banners, outdoor billboards |
Shorter Content Is Better โ Watch the Version Number
A QR code's "version" is its size rating. Version 1 is 21ร21 modules, while Version 40 is 177ร177. Longer content requires a higher version, making the modules denser. When printed at the same physical size, the individual modules become smaller and harder for a camera to distinguish.
A classic real-world case where this becomes a problem is with marketing tracking parameters. A URL loaded with `utm_source`, `utm_medium`, and `utm_campaign` can easily exceed 200 characters, causing the version to jump. For printed materials, it's often better to use a URL shortener.
- The 'Used/Max' display tells you how much of the capacity you've used. If it's over 90%, the version will likely increase if the content gets even slightly longer.
- For English URLs, using all uppercase can make the code smaller. The QR Alphanumeric mode supports uppercase letters, numbers, and a few symbols. If even one lowercase letter is present, it falls back to the less efficient Byte mode. `HTTPS://TOOLS25.COM` works fine and produces a sparser code than its lowercase equivalent.
- Non-ASCII characters, like those in many European or Asian languages, often take up more space. For example, in UTF-8, one Korean character uses 3 bytes, which quickly increases the data size.
- vCard contacts can get long very easily. If you plan to print it on a small business card, consider removing fields like address or notes.
Wi-Fi QR Codes โ For Use in a Shop or Cafe
A Wi-Fi QR code is one of the most practical uses for QR codes in a cafe or restaurant. Customers don't need to ask for the password, and there's no risk of misreading uppercase and lowercase letters from a piece of paper on the wall. This tool assembles the standard `WIFI:` string for you when you fill in the fields.
However, the password is included in the QR code as plain text. It's not encrypted; it's just written down. You can see the password directly if you look at the 'Actually encoded string' field.
- For guests, always create a guest network. Otherwise, you're essentially taping the password to your internal networkโwhich might include your POS system and security camerasโto the wall.
- Special characters in the password, like semicolons (;), commas, or double quotes, can break the format. This tool automatically escapes them, but it's safest to create passwords using only letters and numbers in the first place.
- Make sure the security type matches your router's actual setting. If you select WEP for a WPA network, it won't connect. Most modern routers use WPA/WPA2/WPA3.
- Most modern phones can connect to a Wi-Fi network just by using the default camera app. However, older devices might require a separate QR scanner app, so consider your customer base.
- If you change the Wi-Fi password, you must create and replace the QR code. This is an easy step to forget.
The Rules for Changing Colors
Many people want to create QR codes using their brand colors. This is possible, but there are rules. Scanners distinguish modules by brightness difference, so the key is light-dark contrast, not the specific color itself.
- The code should be dark, and the background light. If you reverse this (a light code on a dark background), many scanner apps will fail to recognize it. This tool detects and warns you about inverted colors.
- The contrast ratio should be at least 4:1, and ideally 7:1 or higher for safety. This tool will warn you if the ratio drops below 3:1.
- Light colors like yellow, light green, or sky blue will not provide enough contrast for the code itself. Use a much darker tone from the same color family (e.g., a dark green like #166534). This is why the preset colors are all dark.
- This tool doesn't support gradients or patterns. If you need that, save the code as an SVG and edit the path's fill color in a vector editor.
- Printing reduces contrast. A code that is barely scannable on-screen will likely fail when printed.
Frequently asked questions
Is my Wi-Fi password or contact info sent to a server?
No. All QR code generation happens in your browser, and your data is never uploaded. The tool works even if you disconnect from the internet.
Will the QR codes I create expire or stop working?
No. These are static QR codes that encode your data directly. They have no expiration date or scan limits and don't rely on our website to function.
Why won't my printed QR code scan?
Common causes are low contrast between the code and background, an "Outer Margin" set below 4 modules, or printing a dense code at a very small size.
How much text can a QR code hold?
It depends on the content and error correction. At max capacity, a single QR code can hold up to 4,296 alphanumeric characters or 2,953 bytes (e.g., UTF-8 text).