Free QR Code Generator
Create custom QR codes for URLs, text, Wi-Fi, contact details, email, phone numbers and more. Customize your QR code and download it instantly.
- Free
- No signup
- Instant generation
- Customizable
- Downloadable
Enter the URL you want to encode. If you leave off https:// it will be added.
Unicode is supported — Hindi, Chinese, Arabic and emoji all encode correctly.
A Wi-Fi QR code can reveal the encoded network credentials to anyone who scans it. Share it only with trusted people.
Include the country code for international use.
Style
Output & error correction
Higher error correction survives more damage but stores less data. The preview size and the export size are separate.
Logo
Adding a logo raises error correction to H automatically. The SVG export does not include the logo.
Scan to test before you print or share.
What can this QR code generator create?
This free QR code generator creates QR codes for URLs, text, Wi-Fi networks, email, phone numbers, SMS, contacts and locations. Every type listed is implemented and runs in your browser.
- URL QR codes
- Text QR codes
- Wi-Fi QR codes
- Email QR codes
- Phone QR codes
- SMS QR codes
- Contact / vCard QR codes
- Location QR codes
- WhatsApp QR codes
| Type | Use case | Encoded as |
|---|---|---|
| URL | Open a website | https://example.com |
| Text | Plain information | Hello World |
| Wi-Fi | Join a network | WIFI:T:WPA;S:Name;P:Pass;; |
| Compose an email | mailto:a@b.com?subject=Hi | |
| Phone | Start a call | tel:+919876543210 |
| SMS | Pre-filled message | SMSTO:+15551234567 |
| Contact | Save a contact | BEGIN:VCARD … END:VCARD |
| Location | Open a map pin | geo:28.4595,77.0266 |
| Open a chat | https://wa.me/919876543210 |
Creating and customising QR codes
What is a QR code?
A QR code is a two-dimensional barcode that stores data as a grid of black and white squares called modules. A camera reads the entire grid at once rather than sweeping across it, which is why a QR code holds far more than a traditional barcode and can be scanned at any angle.
How do I create a QR code?
- Choose a type at the top of the studio — URL, text, Wi-Fi, email, phone, SMS, contact, location or WhatsApp.
- Fill in the fields. The preview updates as you type.
- Adjust colours, error correction or add a logo if you want.
- Check the contrast and density warnings.
- Download as PNG or SVG, or press Print.
How do I create a Wi-Fi QR code?
Choose Wi-Fi, enter the network name and password, and pick the security type. Scanning the code offers to join the network. Characters such as semicolons, colons and commas in the name or password are escaped as the format requires — this is where simpler generators silently produce the wrong credentials.
Can I create a QR code with a logo?
Yes. Upload a PNG, JPG or WebP and it is placed in the centre. Error correction is raised to H automatically, because a logo covers modules the error correction then has to reconstruct. Keep it small: above roughly 30% of the width the code stops scanning reliably, and the tool refuses to go further.
Why won't my QR code scan?
Four causes account for almost all failures: too little contrast, a code printed too small for its data density, a missing quiet zone, or a logo covering too much of the pattern. Fall back to black on white at a larger size to work out which one it is.
Is my QR data uploaded?
No. Everything is generated in the page by a local library. Nothing you type — including Wi-Fi passwords and contact details — is sent anywhere, logged, or written to local storage.
Popular ways to use this free QR code generator
Every example below is built with a type that already exists in the studio above — mostly URL, Wi-Fi, Contact or Location. If a job needs something this tool genuinely cannot do, it says so and points you somewhere sensible instead of pretending.
Convert a link or URL into a QR code
This is the most common job by far: you have a link and you want a scannable version of it. Choose the URL type, paste the address, and the preview appears as you type. It works the same whether you are turning a website, a blog post, a Drive file, a form, a landing page or a shortened link into a QR code — a QR code does not care what is at the other end, it only stores the string.
Two habits make the result better. Keep the link short, because a long address with tracking parameters produces a denser grid that needs a bigger print size; our URL shortener and UTM builder help you keep campaign links tidy. And scan your own code once before you print it anywhere.
QR code for a Google Form
Open your form, press Send or Share, copy the link (either the long docs.google.com/forms/… address or the short forms.gle/… one), then paste it into the URL type here. The short link is the better choice: fewer characters means fewer modules, so the printed code stays readable on a classroom handout, a feedback card or a poster at an event.
QR code for Google reviews
Google gives every verified business a review link in the Google Business Profile dashboard — the "Ask for reviews" short link, usually of the form g.page/r/…/review. Copy that link, encode it with the URL type, and print it on a table card, receipt or counter sticker so customers land straight on the review box instead of hunting for your listing.
Location and Google Maps QR codes
There are two honest ways to make a location QR code, and they behave differently:
- Location type (coordinates). Enter latitude and longitude and the code encodes a
geo:URI, which opens the phone's default map app. This works offline and depends on no single company, which is why it is the type provided here. - URL type (a map link). Open the place in Google Maps, use Share → Copy link, and encode that link as a URL. Scanning opens the exact listing — with the name, photos, reviews and directions — instead of a bare pin.
Use coordinates for a spot with no listing (a plot, a gate, a wedding venue field) and a map link for a business or landmark that already exists on the map.
WhatsApp chat and group QR codes
The WhatsApp type builds a wa.me link from a phone number with country code, plus an optional pre-filled message, so scanning opens a chat with you. For a group, open the group in WhatsApp, go to Invite via link, copy the invite link, and encode it with the URL type — anyone who scans it gets the join screen.
One thing worth being clear about: the QR code you see on web.whatsapp.com when you log in is generated by WhatsApp itself and is a rotating session token. The same is true of the Telegram desktop login code. Codes like those cannot be created here, or by any third-party generator, and you should never scan a login QR that somebody else has sent you.
Business card and contact QR codes
Choose Contact and fill in name, organisation, job title, phone, email, website and address. The output is a standard vCard 3.0, so scanning it offers to save you as a new contact — no typing, no transcription errors. Printed on a visiting card it turns the card into something the recipient actually keeps, and commas or semicolons in your details are escaped so the fields do not split in the wrong places.
Wi-Fi QR codes for guests, cafés and hotels
The Wi-Fi type encodes the network name, the password and the security mode, so a guest scans once and joins — no dictating a twenty-character password across a room. It is read natively by both iOS and Android cameras. Remember that the credentials are stored in plain text inside the pattern: printing a Wi-Fi QR code is as public as writing the password on the wall, so use it for a guest network and keep it away from anything sensitive.
Payment, UPI and merchant QR codes — read this first
Payment codes must come from your bank or payment provider. A collect-money QR — UPI, Google Pay, PhonePe, Paytm, an NPCI-compliant merchant code — carries a verified merchant identifier and, for merchant codes, a signature that only the issuer can produce. Generating a payment code from a string you typed yourself is how people end up with money going to the wrong account. Get your QR from your bank, your PSP app or your payment gateway dashboard, and never re-encode or reprint a code you found somewhere else.
What you can legitimately do here is encode a link that leads to payment: your own payment-page URL, a donation page, an invoice link or a hosted payment link from your gateway. Paste it into the URL type. There is no dedicated UPI type in this tool, and that omission is deliberate rather than an oversight.
PDF, image, photo and video QR codes
This is the single most misunderstood request, so it is worth stating plainly: a QR code cannot contain a file. It holds a few hundred characters of text at most — nowhere near a PDF, a JPG, an MP4 or a photo. Every "PDF to QR code" or "image to QR code" service in existence does the same two steps behind a friendlier label:
- Upload the file somewhere it has a public web address — Drive, Dropbox, your own site, a CDN.
- Encode that address as a URL QR code.
So host the file yourself, copy its share link, and paste it into the URL type above. You keep control of the file and there is no third party that can delete it, meter it or start charging you later. The one thing to check is that the sharing permission is set to "anyone with the link", otherwise scanners land on a sign-in screen.
YouTube, Instagram and other social QR codes
Copy the profile, channel, video or reel link and encode it with the URL type — a YouTube channel code on a business card, a video link on packaging, a profile link on a shop shelf. Note that apps such as Instagram and Snapchat also have their own in-app profile codes (Instagram: profile menu → QR code), which are stylised and app-specific. Those are made in the app; what you build here is a plain, standards-compliant code to your public link, which has the advantage of working in any camera.
Events, menus, signage and notices
A short URL plus a printed code covers an enormous amount of everyday work: a restaurant menu, a birthday or wedding invitation with directions, a hospital or clinic notice pointing at appointment information, a shop counter card, a donation page, a product manual, a classroom worksheet, a conference schedule. For anything printed, choose error correction Q or H, export SVG, and test the code at final size before ordering the run.
Understanding QR codes
How QR codes work
The three large squares in the corners are finder patterns. A scanner locates those first, which is how it works out where the code is, how big it is and which way up. The smaller square near the fourth corner is an alignment pattern that corrects for the code being photographed at an angle or on a curved surface.
Around the edges run timing patterns — alternating light and dark modules that tell the scanner the module size. The remaining area holds the data, interleaved with error correction codewords using Reed–Solomon coding, which is what lets a partly damaged code still resolve.
The one thing that is not part of the pattern but is still required is the quiet zone: a blank margin of at least four modules on every side. Without it a scanner cannot tell where the symbol ends. It is the most commonly omitted requirement and the most common reason a technically valid code fails to read against a coloured background.
QR code types and what they encode
A QR code has no notion of type — it holds a string. What makes a Wi-Fi code different from a URL code is a convention about how that string is formatted, which scanners recognise and act on.
That is why the formatting has to be exact. WIFI:T:WPA;S:name;P:pass;; uses semicolons as separators, so a semicolon inside the network name has to be escaped as \; or the payload splits in the wrong place. vCard uses commas and semicolons structurally, so an organisation called "ToolAdda, Inc." needs its comma escaped. mailto: needs URL encoding so an ampersand in the subject does not start a new parameter.
Each of those escaping rules is implemented and tested here. It is unglamorous work and it is the difference between a code that does what you meant and one that quietly does something else.
Error correction levels
QR codes store redundant data so a damaged, dirty or partly covered symbol still resolves. There are four levels, and the trade is always the same: more redundancy means less room for your payload at a given symbol size.
- L — lowest redundancy, most capacity. Suitable for long payloads scanned from a screen.
- M — the default here, and a sensible choice for most screen and clean-print use.
- Q — for printed material that will be handled: packaging, tickets, table cards.
- H — highest redundancy. Required when a logo covers part of the pattern, and useful outdoors.
Raising the level does not make a code easier to scan in good conditions — it makes it more tolerant of bad ones. If your code fails on a clean screen, error correction is not the problem.
Choosing colours
Scanners look for a strong light–dark difference. The reliable arrangement is a dark foreground on a light background, and black on white is the most reliable of all.
The contrast ratio is calculated here from WCAG relative luminance as you pick colours. Below 3:1 the combination is refused, because it will not scan. Between 3:1 and 7:1 you get a warning — it may work on a good phone in good light and fail on a cheap camera in a dim restaurant. Above 7:1 you are safe.
Inverting — light modules on a dark background — is flagged rather than refused. Most modern scanners handle it, but not all older ones do, and it is worth knowing you have made that choice deliberately.
Two further cautions. A transparent background means the code takes on whatever is behind it, so a busy photograph can destroy the contrast entirely. And a mid-tone foreground that looks fine on screen often loses contrast once printed, because printing darkens light tones less than you expect.
QR codes with logos
Placing a logo in the centre works because Reed–Solomon error correction can reconstruct missing codewords. It is a deliberate use of redundancy, not a trick — but redundancy is finite.
Practical limits: keep the logo under about 20% of the width for comfort, and never above 30%. Use error correction H, which this tool switches to automatically when you add one. Give the logo a solid backing so it does not blend into surrounding modules — a white square or circle behind it helps scanners considerably. And never cover a finder pattern in a corner; that is what the scanner uses to find the code at all.
Then test it. A code with a logo that scans instantly on your phone can be unreliable on an older Android camera, and the only way to know is to try more than one device.
Size, density and printing
How large a code needs to be depends on how much data it holds and how far away it will be scanned. More data means more modules in the same square, so each module is physically smaller and the camera needs to be closer or better.
A widely used rule of thumb is that the printed code should be about one tenth of the intended scanning distance — roughly 3 cm for something read at arm's length, and much larger for a poster read from across a room. Treat that as a starting point rather than a specification.
The cheapest way to make a code more scannable is almost always to shorten the data. A long URL with tracking parameters produces a dense grid; the same link shortened can drop several versions and become noticeably easier to read at the same physical size.
For print, prefer the SVG export. It is a genuine vector — one path built from the module grid — so it stays perfectly crisp at any size, which matters on signage and packaging. And always print a test at final size before ordering a run.
PNG or SVG?
PNG is the right default for screens, documents, slides and most everyday printing. It is lossless, so module edges stay sharp, and it is universally supported.
SVG is better wherever the code will be scaled: posters, banners, vinyl, packaging artwork. Because it is a vector it has no resolution at all, and a print shop can enlarge it without any loss.
One thing to know: the SVG export here contains the QR symbol only. A centre logo is a raster image, and embedding it would make the file part-vector and part-bitmap while claiming to be a vector. If you need the logo, use the PNG.
JPG is deliberately not offered. Its lossy compression puts ringing artifacts along the hard edges between modules — exactly the wrong kind of damage for something a camera has to threshold into black and white.
Unicode and international text
Text is encoded as UTF-8, so Devanagari, Chinese, Japanese, Arabic, accented Latin and emoji all survive scanning intact.
This is worth checking in any generator you use. The widely used qrcode-generator library ships two byte encoders and defaults to a Latin-1 one, in which "नमस्ते" becomes six meaningless bytes rather than the correct eighteen. The code still builds, still scans, and decodes to mojibake. The UTF-8 encoder is selected explicitly here, and the test suite verifies the byte output against Node's own encoder for six scripts.
Security and privacy
A QR code is neither secure nor insecure. It is encoded data that anyone can decode, and it has no authentication of any kind. The risk lies in what it points to.
The practical attack is a sticker: someone covers a genuine code — on a parking meter, a restaurant table, a payment poster — with their own. Nothing about the pattern reveals this. The defence is on the scanning side: read the URL your phone previews before opening it, and be suspicious of a payment code that has visibly been stuck over something else.
Wi-Fi codes deserve particular care. The credentials are encoded in plain text, so anyone who scans or photographs the code has your password. A Wi-Fi QR on a café wall is exactly as public as writing the password on the wall — which is often fine, as long as it is a guest network and you meant to.
On this page, nothing you enter leaves the browser. There is no request carrying your data, no analytics event containing it, and nothing written to local storage — deliberately, because a QR generator routinely handles Wi-Fi passwords and personal contact details.
Static and dynamic codes
The codes here are static: the data is baked into the pattern. That has real advantages — they never expire, depend on no service, work offline for Wi-Fi and contact types, and cannot be tracked.
The limitation is that the destination cannot be changed afterwards. If you print ten thousand flyers pointing at a URL and the page moves, the codes are wrong. Dynamic QR services solve this by encoding a redirect URL they own, which lets them change the target and count scans — at the cost of a permanent dependency on that provider and their analytics.
A middle path worth knowing: point a static code at a URL you control and set up the redirect yourself. You keep the ability to change the destination without handing anyone else control of your printed material.
Common problems
- No quiet zone. The code was cropped tight to the modules. Every export here includes the four-module margin.
- Printed too small. Dense codes need physical size. Shorten the data or print larger.
- Low contrast. Pale foregrounds and mid-tone backgrounds fail in poor light.
- Logo too large. Past roughly 30% the error correction cannot recover the pattern.
- Distorted when placed. A code stretched to fit a layout is no longer square and may not resolve.
- Glossy or curved surface. Reflections defeat the camera; matte finishes scan better.
- Mojibake after scanning. The generator encoded non-ASCII text as Latin-1. Not an issue here.
QR code meaning, full form and history
What is the full form of QR code?
QR stands for Quick Response. The name was chosen because the symbol was designed to be decoded fast — a camera reads the whole two-dimensional grid in one capture instead of sweeping a laser across a set of lines. So "QR code" means, quite literally, quick-response code, and a "QR code scanner" is simply a camera plus software that decodes that grid.
हिंदी में QR कोड का पूरा नाम "क्विक रिस्पॉन्स कोड" है — यह एक द्वि-आयामी बारकोड है जिसमें जानकारी काले और सफ़ेद चौकोर खानों के रूप में संग्रहित रहती है, और मोबाइल कैमरा उसे स्कैन करके पढ़ लेता है।
Who invented the QR code?
The QR code was developed in 1994 by a team led by Masahiro Hara at Denso Wave, a Japanese company in the Toyota group. The problem being solved was industrial rather than consumer: barcodes on automotive parts held too little data and had to be scanned one at a time in a precise orientation, which slowed assembly lines down. The finder patterns in three corners — the feature that lets a phone read a code upside down or at an angle today — exist because a part on a moving line does not arrive neatly aligned.
Denso Wave chose not to charge for use of the standard, which is the main reason QR codes are everywhere while several competing 2D symbologies are not. QR Code is a registered trademark of Denso Wave Incorporated, but the specification itself is published as ISO/IEC 18004 and free to implement.
Difference between a barcode and a QR code
A traditional barcode is one-dimensional: information is encoded in the widths of vertical bars, read along a single line. A QR code is two-dimensional, encoding data across both axes, which is why the capacity difference is so large.
| Barcode (1D, e.g. Code 128) | QR code (2D) | |
|---|---|---|
| Data direction | Horizontal only | Horizontal and vertical |
| Typical capacity | Around 20–48 characters | Up to about 4,296 alphanumeric characters |
| Orientation | Must be roughly aligned | Any angle, including upside down |
| Damage tolerance | None built in | Reed–Solomon error correction, L to H |
| Read with | Laser scanner or camera | Any phone camera |
| Common use | Retail SKUs, logistics labels, shelf tags | Links, Wi-Fi, contacts, payments, tickets |
A frequent mix-up is worth clearing up here: Code 128 is a barcode symbology, not a kind of QR code. If you searched for "QR code 128" and what you actually need is a linear barcode for stock, shipping or labelling, use our barcode generator, which covers CODE 128, EAN, UPC and ITF.
Do you need a static or a dynamic QR code generator?
Everything produced on this page is a static QR code: the data lives inside the pattern, so the code never expires, never phones home, needs no account, and keeps working even if this site does not. That is the right choice for Wi-Fi, contacts, locations, plain text and any link you control.
A dynamic QR code is a different product. It encodes a short redirect URL owned by a service; the service then forwards each scan to a destination you can edit later and counts the scans on the way through. You gain editability and analytics, and you take on a permanent dependency — if that provider changes its pricing, or shuts down, the printed codes stop leading anywhere.
There is a middle path that most people overlook. Point a static code at a short URL on a domain you own, and control the redirect yourself: you can change the destination whenever you like, and nobody else holds your printed material hostage. Combine a short link with UTM parameters and you get editable destinations plus scan attribution in your own analytics.
How to scan a QR code
This page creates codes; it does not read them. If you need to decode one — from your camera, a screenshot or a saved image — use the ToolAdda QR code scanner, which also runs entirely in your browser. The notes below cover how scanning works on the devices people actually ask about, because the most common reason a printed code "fails" is a scanning habit rather than the code itself.
On an iPhone or iPad
Open the built-in Camera app, point it at the code, and hold steady — a notification banner appears at the top and tapping it opens the link. No app installation is needed on iOS 11 or later. There is also a dedicated Code Scanner you can add to Control Centre from Settings → Control Centre, which is handy because it opens straight into scan mode. For a code sitting in a photo or a screenshot, open it in Photos and tap the Live Text button, or long-press the code in the image.
On Android
Most Android cameras detect QR codes automatically; if yours does not, look for a Lens or QR icon in the camera viewfinder, or use Google Lens. Many phones also carry a QR scanner tile in the Quick Settings panel that you pull down from the top of the screen — swipe to the second page of tiles if you do not see it. Google Lens can also read a code out of an image you already have: open the picture in Google Photos and press the Lens button.
On a laptop, PC or Mac
Desktops have no camera app worth the name, so a browser-based scanner is the practical route: grant webcam access and hold the code up, or — usually easier — drop the image file straight in. Our online QR code scanner does both without installing anything, which is what people are after when they search for a QR scanner for PC or a way to scan a code without an app.
From a photo, screenshot or image file
You do not need to point a camera at a physical code at all. If someone has sent you a code as an image, or you have a screenshot of one, upload the file to a scanner and it decodes the pattern from the pixels. This is the reliable way to handle a code on the same screen you are reading it from — a camera cannot photograph its own display.
Scanning a Wi-Fi QR code
Point the camera at a Wi-Fi code and both iOS and Android offer to join the network directly; you never see or type the password. If what you actually want is to read the password out of the code, use a scanner that shows the raw decoded text — a Wi-Fi payload looks like WIFI:T:WPA;S:NetworkName;P:ThePassword;;, with the password after P:. That also explains why a printed Wi-Fi code should never be shared more widely than you intend.
"Invalid QR code" or "unrecognised QR code format"
Those messages almost never mean the QR standard was violated. In practice they mean one of the following:
- The image is incomplete or cropped. A code missing its quiet zone or one of its corner finder patterns cannot be located, let alone decoded.
- The photo is blurry, skewed or glare-hit. Reflections on glossy paper and phone screens are a leading cause; tilt slightly, or move to diffuse light.
- It decoded fine, but the app rejected the contents. A payment app shown a plain URL, or a ticket scanner shown a link, will say the code is invalid because it expected its own payload format. The code is valid; it is the wrong code for that app.
- It is a single-app or expiring code. Login codes and one-time tickets are session tokens that go stale in seconds and are meaningless outside their own app.
- The code has been rendered too small or stretched. A code squashed to fit a layout is no longer square and often will not resolve.
The quickest diagnosis is to decode the image in a general-purpose scanner. If the raw text comes out cleanly, the pattern is fine and the problem is on the app side.
What this tool does not do — and where to go instead
Being straight about the boundaries saves you the time of discovering them yourself. Each item below is a real limitation of this page, with the nearest honest alternative.
- Bulk or batch generation. Codes are made one at a time; there is no CSV or spreadsheet upload that spits out hundreds of codes in a ZIP. For a handful you can simply change the input and download again — the fields keep their values.
- Dynamic, editable or trackable codes. The output is static by design, so there is no dashboard, no scan counter and no way to change a destination after printing. Use a self-owned redirect, as described above, or a dedicated dynamic QR service if you need the analytics.
- Reading, decoding or editing an existing code. You cannot upload a finished QR code here to see what it contains or to alter it — a QR code is not an editable document. Decode it with the QR code scanner, then generate a fresh code from the text.
- Artistic codes, shaped modules and gradients. This generator keeps to clean square modules because that is what scans most reliably. For rounded modules, custom eye shapes and heavier styling, use the custom QR code maker — and test any decorative code on several phones before committing it to print.
- Linear barcodes. Code 128, EAN-13, UPC-A and ITF are a different symbology entirely; that is what the barcode generator is for.
- Payment code issuance. As covered above, UPI and merchant collection codes have to come from your bank or payment provider.
- Photo-editing "QR codes". Codes shared for Snapseed, Lightroom, CapCut or VN presets are app-specific preset containers that happen to be distributed as scannable images. They are decoded by those apps, not by the QR standard, and nothing here creates or applies them.
Frequently asked questions
What is a QR code?
A QR code is a two-dimensional barcode that stores data as a grid of black and white squares called modules. A camera reads the whole grid at once, which is why it holds far more than a traditional barcode and can be scanned from any angle.
How do I create a QR code?
Pick a type — URL, text, Wi-Fi, email, phone, SMS, contact, location or WhatsApp — fill in the fields, and the preview updates as you type. Adjust colours or error correction if you want, then download as PNG or SVG.
Is this QR code generator free?
Yes. It is free, needs no account or email address, adds no watermark, and there is no limit on how many codes you create.
Do I need an account?
No. There is no sign-up at any point. The generator runs entirely in your browser, so there is nothing for an account to store.
How do I create a QR code for a website?
Choose the URL type and paste your address. If you leave off the scheme, https:// is added; a URL that already names a scheme is encoded exactly as typed, including any query string.
How do I create a Wi-Fi QR code?
Choose Wi-Fi, enter the network name and password, and pick the security type. Scanning the result offers to join the network. Characters such as semicolons and colons in the name or password are escaped correctly, which is where naive generators produce the wrong credentials.
Can I create a QR code for a Wi-Fi password?
Yes, and it works on both iOS and Android. Be aware that anyone who scans or photographs the code gets your password — it encodes the credentials in plain text, so treat a printed Wi-Fi QR the way you would treat the password written on a card.
Can I create a contact or vCard QR code?
Yes. Fill in name, organisation, job title, phone, email, website and address, and the code encodes a standard vCard 3.0. Scanning it offers to save a new contact. Commas and semicolons in your details are escaped so the fields do not split in the wrong places.
Can I create a QR code for email?
Yes. Enter an address and optionally a subject and message body. The code encodes a mailto: link, so scanning it opens a pre-filled email. The subject and body are URL-encoded, so ampersands and spaces survive.
Can I create a QR code for a phone number?
Yes. The Phone type encodes a tel: link, and scanning it starts a call to that number. International formats with a leading plus and spaces or brackets are accepted.
Can I create an SMS QR code?
Yes. Enter a number and an optional message, and scanning opens the messaging app with both pre-filled. The recipient still has to press send.
Can I create a location QR code?
Yes. Enter latitude and longitude and the code encodes a geo: URI that opens in the phone's map app. Latitude is validated to between -90 and 90, longitude to between -180 and 180.
Can I create a WhatsApp QR code?
Yes. Enter a phone number with country code and an optional message; the code encodes a wa.me link that opens a chat with the message pre-filled.
Can I add a logo to my QR code?
Yes. Upload a PNG, JPG or WebP and it is placed in the centre. Error correction is raised to H automatically, because a logo covers modules that the error correction then has to reconstruct. Keep the logo small — above about 30% of the width the code stops scanning reliably.
Can I change the QR code colours?
Yes, foreground and background are both adjustable, and there are presets. The contrast ratio is calculated as you change them and you are warned when the combination is likely to fail — under 3:1 it is refused as unscannable.
Can I change the QR code size?
Yes. The export size is separate from the on-screen preview, so you can work with a comfortable preview and still download at 1024 or 2048 pixels for print.
What is QR error correction?
QR codes store redundant data so they still scan when part of the symbol is damaged, dirty or covered. There are four levels — L, M, Q and H — with H holding the most redundancy and therefore the least payload for a given symbol size.
Which error correction level should I use?
M is a good default for screens and clean printing. Use Q or H for codes that will be printed on packaging, displayed outdoors, or that carry a logo. Use L only when the payload is long and the code will be scanned from a screen in good conditions.
Why is my QR code not scanning?
The usual causes are too little contrast between foreground and background, a code printed too small for its data density, a missing quiet zone — the light margin around the symbol — or a logo covering too much of the pattern. Try black on white at a larger size to isolate which one it is.
What is the quiet zone and why does it matter?
The quiet zone is the blank margin of at least four modules that must surround a QR code. Without it a scanner cannot tell where the symbol ends, and codes placed flush against coloured backgrounds often fail. Every code this tool produces includes the margin.
How can I make a QR code easier to scan?
Use dark on light, keep the quiet zone, print it larger than you think you need, shorten the data so the grid is less dense, and raise the error correction level. Then test it with more than one phone before printing a batch.
Can I download my QR code as PNG?
Yes, and PNG is the recommended format for screens, documents and most printing. It is lossless, so the module edges stay sharp.
Can I download my QR code as SVG?
Yes. The SVG is a genuine vector — one path built from the module grid, not a PNG wrapped in markup — so it scales to any size without losing sharpness. Note that a centre logo is not included in the SVG export.
Is SVG better for printing?
Usually yes. A vector prints crisply at any physical size, which matters for posters, signage and packaging where a raster would show soft edges. For a business card at a fixed size, a high-resolution PNG is equally fine.
Can I print my QR code?
Yes. The Print button produces a clean page containing only the QR code and a short label — no navigation, controls or page furniture.
Do QR codes expire?
No. A QR code is just an encoding of data; it has no expiry and needs no service to keep working. What can stop working is what it points at — if the URL inside it goes away, the code still scans but leads nowhere.
Are QR codes permanent?
The codes produced here are static: the data is baked into the pattern and cannot be changed afterwards. Editing the destination later requires a dynamic QR service that redirects through its own URL, which is a different product with its own tracking and dependency.
Does a QR code require internet?
Scanning does not — the data is in the image itself. Acting on it might: a URL code needs a connection to load the page, while a Wi-Fi, contact or SMS code works entirely offline.
Are QR codes secure?
A QR code is neither secure nor insecure by itself — it is just encoded data that anyone can decode. The risk is what it points to, since a scanner cannot tell a genuine code from a sticker placed over it. Check the URL your phone shows before opening it.
Is my QR data stored or uploaded?
No. The code is generated in your browser by a local library. Nothing you type — including Wi-Fi passwords and contact details — is sent anywhere, logged, or saved to local storage.
Does the generator support Hindi, Chinese or emoji?
Yes. Text is encoded as UTF-8, so Devanagari, Chinese, Japanese, Arabic, accented Latin and emoji all survive scanning intact. This is worth checking in any generator — a common library default encodes Latin-1 and silently turns non-ASCII text into mojibake.
How much data can a QR code hold?
Up to roughly 2,953 bytes at the lowest error correction level and about 1,273 at the highest. In practice much less is advisable: more data means a denser grid, which needs a larger print size to stay scannable. This tool refuses payloads that will not fit and warns when one is getting dense.
How large should a printed QR code be?
A common rule of thumb is that the code should be about a tenth of the scanning distance — roughly 3 cm for arm's length, and much larger for a poster read from across a room. Denser codes need to be bigger, so shortening the data is often the cheapest way to shrink the print size.
Can I use these QR codes for business?
Yes. There is no licence, watermark or attribution requirement on the codes you generate, and the QR standard itself is free to use. Menus, packaging, business cards and signage are all fine.
Can I use a transparent background?
Yes, for PNG and SVG. It is worth testing though — with a transparent background the code takes on whatever is behind it, and a busy or mid-tone surface can destroy the contrast a scanner needs.
What is the full form of QR code?
QR stands for Quick Response. The name reflects the design goal: a camera reads the whole two-dimensional grid in a single capture instead of sweeping across a set of lines, so decoding is near-instant. In Hindi it is commonly written as क्विक रिस्पॉन्स कोड.
Who invented the QR code?
A team led by Masahiro Hara at Denso Wave, part of the Toyota group, developed it in 1994 to track automotive parts faster than barcodes allowed. Denso Wave chose not to charge for use of the standard, which is why QR codes became universal. QR Code remains its registered trademark, while the specification is published as ISO/IEC 18004.
What is the difference between a barcode and a QR code?
A barcode is one-dimensional and stores roughly 20 to 48 characters in the widths of vertical bars, read along a single line. A QR code is two-dimensional, holds up to about 4,296 alphanumeric characters, scans at any angle, and carries error correction so a damaged symbol still resolves. Code 128 is a barcode symbology, not a type of QR code.
How do I make a QR code for a Google Form?
Open the form, press Send or Share, and copy the link — the short forms.gle address is better than the long one because fewer characters mean a less dense code. Paste it into the URL type here and download the result.
How do I create a QR code for a location?
Two ways. The Location type takes latitude and longitude and encodes a geo: URI that opens the phone's default map app, which works for places with no listing. Alternatively copy a Google Maps share link and encode it with the URL type, which opens the full listing with directions and reviews.
Can I create a QR code for my Google review link?
Yes. Copy the "Ask for reviews" short link from your Google Business Profile — usually of the form g.page/r/…/review — and encode it with the URL type. Printed on a table card or receipt it takes customers straight to the review box.
How do I convert a link into a QR code?
Choose the URL type, paste the link, and the preview updates as you type; then download PNG or SVG. Shorter links produce less dense codes that stay readable at smaller print sizes, so trim tracking parameters where you can.
Can I turn a PDF, image or video into a QR code?
Not directly — a QR code holds a few hundred characters of text, not a file of any kind. Host the PDF, image or video somewhere with a public link, set the sharing permission to anyone with the link, then encode that link with the URL type. Every "file to QR code" service does exactly this behind a friendlier label.
Can I create a UPI, Google Pay or PhonePe payment QR code?
No, and deliberately so. A collection or merchant QR carries a verified payee identifier — and for merchant codes a signature only the issuer can produce — so it must come from your bank, your payment app or your gateway dashboard. You can, however, encode a link to your own payment or donation page with the URL type.
Can I generate QR codes in bulk?
No. This tool makes one code at a time and has no CSV or spreadsheet upload for batch output. For a small number, change the input and download again — the settings and fields keep their values between codes.
Can I edit a QR code after I have created it?
No. A static QR code is not an editable document; the data is baked into the module pattern, so changing it means generating a new code. Editing a destination after printing requires a dynamic QR service that redirects through a URL it owns, or your own redirect on a domain you control.
Can this tool scan or decode a QR code?
No — this page only creates codes. To read one from your camera, a screenshot or an image file, use the ToolAdda QR code scanner, which also runs entirely in your browser.
How do I scan a QR code on an iPhone?
Open the Camera app, point it at the code, and tap the banner that appears; no app is needed on iOS 11 or later. You can also add the Code Scanner to Control Centre, or read a code inside a saved photo by opening it in Photos and tapping the Live Text button.
How do I scan a QR code on Android?
Most Android cameras detect codes automatically; otherwise use Google Lens or the QR scanner tile in the Quick Settings panel. Google Lens can also decode a code from a picture already in your gallery via Google Photos.
How do I scan a QR code on a laptop or PC?
Use a browser-based scanner: either grant webcam access and hold the code up, or upload the image file, which is usually easier and needs no camera at all. That is what the ToolAdda QR code scanner is for, and it requires no installation.
How do I scan a QR code from a photo in my gallery?
Upload the image to a scanner that accepts files, or use Google Lens from within Google Photos on Android. This is also the reliable way to handle a code displayed on the same screen you are reading — a camera cannot photograph its own display.
Why does my phone say the QR code is invalid or the format is unrecognised?
Usually the image is cropped, blurry, stretched or missing its quiet zone, or the code decoded correctly but the app expected its own payload format — a payment app shown a plain URL will call it invalid. Login and ticket codes are also short-lived session tokens that are meaningless outside their own app. Decode the image in a general-purpose scanner: if the raw text comes out cleanly, the pattern is fine.
Can I make a WhatsApp group QR code?
Yes, indirectly. Open the group, choose Invite via link, copy the invite link, and encode it with the URL type — scanning then opens the join screen. The WhatsApp type itself builds a wa.me chat link to a single number.
Can I create the WhatsApp Web or Telegram login QR code?
No. Those are rotating session tokens generated by WhatsApp and Telegram themselves and cannot be produced by any third-party generator. Never scan a login QR code that somebody else has sent you — doing so hands them access to your account.
Can I make a heart-shaped or artistic QR code?
Not here. This generator keeps clean square modules because they scan most reliably. For rounded modules, custom corner shapes and heavier styling, use the ToolAdda custom QR code maker, and test any decorative code on several phones before printing it.
Do I need an app to scan a QR code?
No. The built-in camera on any current iPhone or Android phone reads QR codes without an extra app, and on a desktop a browser-based scanner works from your webcam or from an uploaded image. Dedicated scanner apps are rarely necessary.
What is a static QR code generator?
One that writes your data directly into the pattern, with no service in the middle — which is what this page is. Static codes never expire, need no account, are not tracked, and work offline for Wi-Fi, contact and location types. The trade-off is that the destination cannot be changed after the code is printed.
Related tools
More ToolAdda utilities that run entirely in your browser.
QR codes are generated in your browser by a local library. Nothing you enter — including Wi-Fi passwords, contact details and URLs — is uploaded, logged or saved to storage, and the generator never fetches or visits the URLs you encode. Every code includes the four-module quiet zone the specification requires, and text is encoded as UTF-8. QR Code is a registered trademark of Denso Wave Incorporated; the standard itself is free to use.