QR Code Generator Pro
Create QR codes for URLs, Wi-Fi, email, phone, SMS or contacts, with colors and download.
Create a QR code from text or a URL in your browser, then download a PNG.
A QR code generator turns text or a URL into a downloadable QR image, created on your device.
This tool runs in your browser. Inputs, files and generated values stay on this device. Favorites and recently used tools, if you use them, store only tool names in local storage — never passwords, documents or QR contents. See the privacy policy.
The QR Code Generator builds a QR code PNG from plain text or a URL, up to 1,200 characters. Use it for a short link or a short note you want someone to scan. The text is stored in the pattern itself. There is no redirect service. Wi-Fi, email, phone, SMS, and contact layouts are on QR Code Generator Pro. A long string makes a denser code, and some cameras miss those.
Enter https://example.com and press Generate. The page trims any spaces around it and encodes that exact address. A phone that scans the PNG opens that URL if the camera treats it as a link. The code is a PNG with error correction level M, a quiet margin of 2 modules, and a width of 320 pixels. The dark color is #0b1f3a and the light color is #ffffff.
Enter a short sentence, such as Meet at the north door. Generate encodes those characters, not a web page. Scanners usually show the text instead of opening a browser. The same 1,200 character cap applies. Empty text, including a box of only spaces, fails with: Enter text or a URL to encode.
1,200 characters is accepted. 1,201 characters is rejected before a code is drawn. The message is: Keep QR content to 1200 characters so the code stays readable. Shorten the text, or put the long text on a page and encode that page’s URL instead.
A QR code is a matrix of dark and light modules. This page builds it in the browser with a client-side library. Generate does not send the text to a QR service. Error correction level M can recover a modest amount of damage. It does not make a tiny or low-contrast print reliable. The download is a PNG of the preview.
More characters mean more modules in the same 320 pixel image, so each module is smaller. Level M spends some of those modules on recovery data. A short URL stays coarse and is easier for a phone camera.
Print the PNG large enough that the modules stay sharp. A blurry screenshot, a colored background, or a logo on top of this basic code can make it fail. This page does not add a logo or change the colors.
This page encodes the characters you paste and nothing else. It does not build a Wi-Fi setup string, a mailto link, an SMS body, or a contact card for you.
QR Code Generator Pro has those layouts, and it can change colors. If you only have a URL or a sentence, stay on this page. If you paste a Wi-Fi string you already wrote, this page will encode that string as text. It will not check that the network exists.
There is no account and no short-link server behind the PNG. The pattern keeps working for as long as a scanner can read it and, for a URL, for as long as that address still responds. If you change the page at that address, the old code still points at the same address.
Test with a phone before you print a stack of labels. The preview on this page is not a scan test.
The text stays in this tab. Generate does not upload it. The PNG is created locally and downloaded to your device. Do not encode a password you would not want on a printed page. Anyone who scans the code can read the text.
Plain text or a URL is encoded, and the text must be 1,200 characters or shorter after trimming. An empty value is rejected. Wi-Fi, email, phone, SMS, and contact layouts are on QR Code Generator Pro. The image is a 320 pixel PNG at error correction level M. A long string makes a dense pattern that some cameras miss. The page does not track scans.
See the disclaimer for what these tools do not cover.
Create QR codes for URLs, Wi-Fi, email, phone, SMS or contacts, with colors and download.
Scan a QR code with your camera or an uploaded image. Processing stays in your browser.
Add utm_source, utm_medium, and utm_campaign to a link. Term and content are optional. Blank fields are omitted, and this page does not record a visit.
Turn a title into a lowercase, hyphenated permalink. Latin accents are removed, while letters such as 你好 stay. It does not check that the address is unused.
Generate a random password in your browser with crypto.getRandomValues. Nothing is stored.
Split an absolute URL into protocol, host, port, path, fragment, and query parameters.
Guide
Add utm_source, utm_medium, and utm_campaign to a destination URL so analytics can tell campaigns apart.
Read guideGuide
Decode one QR code from the camera or from a PNG or JPG, then open a link only after you read it.
Read guideThe QR code is created in your browser. Keep content reasonably short.
The QR code is generated in your browser. The text is not sent to a server.