Base64 to QR Code
Turn any text or Base64 string into a scannable QR code, right in your browser. Paste your data, pick an error-correction level, and download the QR as SVG or PNG. Nothing is uploaded.
How to make a QR code from Base64 or text
Paste any text or Base64 string into the input above. The tool encodes it into a scannable QR code locally and renders it instantly. By default the QR carries your input exactly as typed — so a Base64 string is stored as that literal Base64 text. Flip on Decode Base64 first to Base64-decode the input and encode the resulting plain text into the QR instead. Pick an error-correction level, then click Download SVG or Download PNG to save it.
What can a QR code hold?
A QR code's capacity depends on two things: its version (size, from 1 up to 40, where 40 is a 177×177 grid) and its error-correction level. This tool auto-selects the smallest version that fits your data. Rough maximum byte capacity at version 40:
- Level L (recovers ~7% damage) — up to ~2,953 bytes
- Level M (~15%) — up to ~2,331 bytes
- Level Q (~25%) — up to ~1,663 bytes
- Level H (~30%) — up to ~1,273 bytes
Because Base64 inflates data by about 33%, a long Base64 string reaches these limits quickly — encoding a whole image as Base64 will almost always overflow a QR code. If you see a capacity error, shorten the input or drop to level L to fit more. For a scannable code that survives smudges and reprints, level M or Q is a good default.
SVG vs PNG
Both downloads encode the same QR code; they differ in format. SVG is vector, so it scales cleanly to any size without pixelation — the right choice for print, posters, signage, or embedding in other vector artwork. PNG is a raster image at a fixed resolution, which is handy when you need a plain image for a website, a chat message, or an app that does not accept SVG. When in doubt, grab the SVG: it stays crisp everywhere.
Is this private?
Yes. The QR code is built entirely in your browser using a small, MIT-licensed library vendored on this site — no network calls, no uploads. Your text or Base64 is encoded and drawn locally, and nothing is sent to any server. You can confirm in DevTools → Network: generating a QR fires no request.
Frequently asked questions
How do I generate a QR code from a Base64 string?
Paste your Base64 (or any text) into the input above. By default the QR code carries the string exactly as typed. Choose an error-correction level and the scannable QR renders instantly — then click Download SVG or Download PNG. To encode the decoded contents instead of the Base64 text, toggle Decode Base64 first.
Why won't my Base64 fit in a QR code?
QR codes have a hard capacity limit — the largest version holds roughly 2,953 bytes at level L, and only about 1,273 bytes at level H. Base64 is ~33% larger than the data it represents, so a long Base64 string easily exceeds the limit. Shorten the input, or lower the error-correction level to L to squeeze in more.
Should I use SVG or PNG?
Use SVG when the QR needs to scale cleanly — it is vector and stays crisp at any size, ideal for print and large signage. Use PNG when you need a plain raster image for a website, chat, or an app that does not accept SVG.
Is my data sent to a server?
No. The code is generated entirely in your browser with a vendored, offline library — your data never leaves the page. You can verify in DevTools → Network that generating a QR fires no request.
Need plain Base64 encode/decode?
The main base64.dev tool handles text, files, and URL-safe mode with auto-detect.
Open base64.dev →