QR Code Generator

Generate QR codes for text, URLs, Wi-Fi, contacts, and more. Customize colors and save as high-quality PNG or SVG.

๐Ÿ”’ QR codes are calculated directly in the browser. No external QR generation API is called, so content like Wi-Fi passwords and contacts are not sent to the server. It even works offline.
Error Correction Level
This determines how much damage the code can sustain and still be readable. Increasing the level improves resilience, but makes the code denser for the same content. Use M for screens/documents, Q for printouts/stickers/outdoor attachments, and H for codes with a logo in the center or in environments prone to dirt.
512px
4 modules
Preview
Enter content and your QR code will appear here instantly.

Actually encoded string
This is the original text read by the device when scanned. Types like Wi-Fi and contacts are automatically assembled into standard formats.

Choosing an Error Correction Level

LevelRecoverable DamageSize for same contentWhen to Use
LApprox. 7%SmallestWhen you want to include a long URL with minimal density. When viewed only on screen.
MApprox. 15%SmallDefault. Most cases, such as web, documents, business cards.
QApprox. 25%LargePrintouts like stickers, posters, banners that might get scratched or wet.
HApprox. 30%LargestWhen placing a logo in the center, or in dirty environments like outdoors or factories.
๐Ÿ’ก The shorter the content, the less dense the code and the easier it is to read. If you add many parameters to the same link, the version increases, making the modules denser and reducing recognition when printed small. If the "Version" number above increases, it's better to shorten the URL or use a URL shortener.
โš  Do not remove the quiet zone (outer margin). The standard requires a clear margin of 4 modules on all sides. If you reduce the margin to 0 for design reasons or place it directly on a patterned background, scanners may not be able to find the code's boundaries. When printing, it's also important to make the code color significantly darker than the background (contrast ratio of 4:1 or more).

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

  1. Select a content type from the top bar, such as "๐Ÿ”— URL" or "๐Ÿ“ถ Wi-Fi".
  2. Fill in the fields for your chosen type. A QR code will instantly appear in the "Preview" pane.
  3. Choose an "Error Correction Level". Use M for screens, Q for print, and H if you plan to add a logo.
  4. Adjust the "Image Size", "Outer Margin", and colors to fit your needs.
  5. 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.

ScenarioLevelWhy
Webpages / On-screen displayL or MNo risk of physical damage. A sparser code is faster to scan.
Business cards / Flyers / DocumentsMThe default. This is sufficient for most uses.
Store stickers / Posters / BannersQAccounts for scratches, rain, and sun-fading.
Planning to place a logo in the centerHError correction compensates for the obscured area.
Factories, kitchens, other dirty environmentsHRemains readable even if stained with oil or dust.
H isn't always better. For the same URL, H creates a much denser code than M. When printed small, like on a business card, the individual modules can become too tiny, which actually reduces scannability. 'Damage resistance' and 'module size' are a trade-off; choose what's appropriate for your situation.

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.

  1. Change the Error Correction Level to H.
  2. Click 'Save SVG'. This ensures the code won't get blurry even if printed large after adding the logo.
  3. 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.
  4. Create a margin by placing a white square or circle behind the logo.
  5. 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.
Look at the 'Version' number above. You'll see that changing to H increases the version and module count for the same content. If the version goes above 10, adding a logo on top becomes risky for small printouts.

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 DistanceRec. QR Side LengthUse Case
10โ€“30 cm (handheld)2 cm or moreBusiness cards, flyers, menus, table stickers
1โ€“2 m (standing)10 cm or morePosters, window signs, information boards
5 m or more (distant)50 cm or moreBanners, outdoor billboards
A good rule of thumb is that the QR code's minimum side length should be 1/10th of the scan distance. To scan from 2 meters away, the code needs to be at least 20cm wide. If the content is long and the version is high (denser modules), it needs to be even larger.

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.
Look at the 'Encoding Mode' display. It shows 'Numeric' for only numbers, 'Alphanumeric' for uppercase alphanumeric content, and 'Byte' for everything else. You can see the version drop by trying the same URL in lowercase and then uppercase.

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.
This tool does not automatically save the Wi-Fi password (other input fields are saved in your browser for convenience). The password field will be empty when you reload the page. This is intentional.

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.
PNG is for general use and image attachments. SVG is for when you need to scale the code without quality loss, such as for a large banner, or to send to a professional printer. If a printer asks for a 'vector file,' send them the SVG. The size slider only affects the PNG output; it automatically adjusts the dimensions to a multiple of the module size to ensure pixels align perfectly.

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).