QR Code Generator

Create in your browser

QR Code Generator

Turn a website, text, Wi‑Fi details, or contact information into a QR code, check the preview, then save it as PNG or JPG.

URLTEXTWi‑FivCard

QR content

Choose a type and fill only the fields that type needs. The preview updates as you type.

QR code type

Use an http or https address. Check that the link opens where scanners should land.

Color presets

Preview and save

When the QR appears, scan it with a real phone camera before downloading.

Enter information to show the QR preview here.

Waiting for input.

QR guide before you publish

Turn links, Wi‑Fi, and contact details into one scannable code

This QR code generator turns a website URL, short text, Wi‑Fi login details, or a contact card into an image that a phone camera can read. The preview changes while you type, and the download buttons open after you generate the final QR so you can save a PNG or JPG only after checking what will be shared.

Follow the screen order to avoid missing fields

Start by choosing what the QR should contain. Each type keeps only the fields it needs, so the safest workflow is type first, values second, scan test last.

  1. Choose the type first. Website, Text, Wi‑Fi, and Contact each expose a different set of fields.
  2. Enter the value in the form people will use. For a URL, include the full address. For Wi‑Fi, SSID means the network name.
  3. Set size and recognition quality. Use 128–512 px for the image size, and raise error correction when the code may be printed or handled roughly.
  4. Generate, then scan. Before downloading PNG or JPG, test the result with a phone camera and check the destination or fields.

The four types produce different payload strings

QR images can look similar from the outside, but the text inside them changes by type.

Website

Encodes a URL. Use the full address without spaces, and check private or team-only links before sharing.

Text

Stores a short message exactly as text. Long messages make the QR pattern dense and harder to scan at small sizes.

Wi‑Fi

Combines SSID, security type, password, and hidden-network state into a Wi‑Fi QR string that camera apps can understand.

Contact

Uses vCard-style fields so name, phone, email, and address can open as a contact draft on supported devices.

The important part is a readable payload, not a calculation

The tool does not calculate a changing tax rate or public value. It prepares your input as a payload string that QR readers understand, then QRCode.js draws that payload as a square pattern.

URL payloadhttps://...

The address is normalized into a link that scanners can open directly.

Wi‑Fi payloadWIFI:T:...;S:...;P:...;;

Characters such as semicolons and colons are escaped so the network name or password is not split incorrectly.

Contact payloadBEGIN:VCARD

Only the contact fields you fill are placed into a vCard 3.0 style payload.

File outputPNG / JPG

The generated QR is drawn with the chosen size and colors, then exported as an image file.

QR payload format referenceUse this when checking URL and Wi‑Fi payload strings commonly understood by scanner apps.vCard 3.0 referenceUse this when checking the contact-card fields placed inside a QR code.

Check size and contrast before saving

For example, enter https://roberin.com/en/projects/qr-generator-wrapper/, keep 256 px, Standard recognition quality, and the default black-on-white colors. The preview and data-length card update together.

PreviewThe QR pattern and data length update when the input changes.Very long text can make the code harder to scan.
GenerateThe Generate QR code button opens the final download area.The current color, size, and recognition-quality settings are used.
Save filePNG is usually best for clean web or document use; JPG can fit some editing flows.For print, scan at the final physical size.
Scan testUse a phone camera to check the URL, Wi‑Fi network, or contact fields.If the result is wrong, start again from the selected type.

A browser-made QR still becomes public once shared

The input is not meant to be stored by this page, but a printed or forwarded QR image reveals whatever it contains to anyone who scans it. Decide the sharing range before distributing Wi‑Fi passwords, private links, or contact details.

Keep the pre-publish check short and strict

A QR code is awkward to fix after it is printed, placed on a flyer, or sent to customers. Run this short check right after saving the image.

  • Remove sensitive values. If the code contains a Wi‑Fi password or a private link, manage who can see it and when it should expire.
  • Check contrast first. Brand colors are fine only when the QR color and background remain clearly separated.
  • Keep small prints simple. Long text, many contact fields, and high error correction make the pattern denser.
  • Test more than one device. Older camera apps can read hidden Wi‑Fi networks or contact fields differently.

Questions people usually ask about QR codes

Do I need to press Generate if the preview already appears?

Yes when you want to download. The preview helps while editing, but the PNG and JPG buttons appear after you generate the final QR state.

Is it safe to put a Wi‑Fi password in a QR code?

It is convenient for a guest or shop network. Do not use it for staff-only or administrator networks, because anyone with the image can read the access details.

Will a contact QR open the same way on every phone?

Most modern phones understand vCard contact data, but apps may display address or email fields differently. Test on iPhone and Android before printing.

Can I change the QR colors?

Yes, if contrast stays strong. Similar foreground and background colors, or some inverted combinations, can lower scan reliability.

Roberin
A developer with sense
I'm Roberin, a developer with sense who creates a better world through creative and practical tools. Technology is for everyone - let's build a more convenient world together! 😊
Contact form
Send only the details needed to check it.
If you need a reply, include an email address. For a bug report, add the page URL, the value you entered, what you expected, and what you actually saw.