QR Code Generator for Links and Text

Turn a web address or any piece of text into a QR code, adjust its colors, size and error correction, add a logo if you like, and download it as PNG or SVG. The code is made in your browser and never expires.

Content

Start web addresses with https:// so phones recognize them as links.

#000000
#ffffff
Center logo (optional)

Preview

Loading the QR code generator…

Show encoded text

How to use the QR code generator

  1. Paste a link that starts with https://, or type the text you want to share, into the box.
  2. Pick a foreground and a background color. Dark modules on a light background scan most reliably.
  3. Choose an image size and an error correction level. M is a good default; H is recommended when you add a logo.
  4. Optionally upload a small logo to place in the center of the code.
  5. Scan the preview with your phone to confirm that it opens the right page.
  6. Download a PNG for screens and documents, or an SVG for print and design software.

How it works

QR Hut uses the open-source qrcodejs library (version 1.0.0) to turn your text into a QR symbol. The library picks the smallest of the 40 QR code versions that can hold your content at the error correction level you selected, and it stores the content in byte mode as UTF-8. Version 1 is a grid of 21 × 21 modules, each version adds four modules per side, and version 40 reaches 177 × 177. The line under the preview tells you which version you got, the size of the grid and how many bytes were encoded.

Once the grid of dark and light modules is known, QR Hut draws it itself: on a canvas for the PNG download and as vector shapes for the SVG download. Both files include a quiet zone, the blank border four modules wide that the QR Code standard (ISO/IEC 18004) requires around the symbol so that scanners can tell where it starts. Module edges are snapped to whole pixels, so the PNG stays crisp instead of blurred.

Error correction uses Reed–Solomon codes. Level L can recover roughly 7% of damaged data, M about 15%, Q about 25% and H about 30%. More redundancy needs more space, so the same text produces a denser code at a higher level. When you upload a logo, the tool switches to level H, clears a small padded box in the center (22% of the code's width, or about 5% of its area) and fits your image inside it without stretching it.

Nothing you type is sent to a server. The page loads the library from the jsDelivr CDN and does all the work on your device, which is also why the preview updates as you type.

Tips for a code that scans every time

Common uses

Limitations

Frequently asked questions

Do QR codes made with QR Hut expire?

No. They are static codes: your link or text is stored in the pattern itself, so there is no server that could switch them off. A code keeps working for as long as the page it points to exists.

Can I use the QR codes for commercial purposes?

Yes. The images you create are yours to use on packaging, menus, ads or anything else, for personal or commercial projects. No attribution is required.

Should I download PNG or SVG?

PNG is a pixel image that works everywhere, from documents to social media. SVG is a vector file that stays sharp at any size, so it is the better choice for print and for design tools such as Illustrator, Inkscape, Figma or Affinity Designer.

Which error correction level should I choose?

M suits most codes printed on clean paper or shown on screens. Choose Q or H for codes that may get scratched, dirty or folded, and H whenever you add a logo. Higher levels make the code denser, so do not pick H by default for long links.

Why is my QR code so dense?

Density depends on how many characters you encode and on the error correction level. Long links with tracking parameters produce many small modules. Shorten the link or lower the level to get a simpler code.

Can I change the link after printing the code?

Not with a static code. If you expect the destination to change, encode a short address on your own website, such as example.com/menu, and update that page or redirect it later. Our static vs dynamic guide explains this approach.

Is there a limit on how many codes I can create?

No. There is no account, no quota and no watermark. Make as many codes as you need.