inyourbrowser.com

Free QR code and barcode tools, online

Generate and decode QR codes and barcodes entirely in your browser. Create QR codes for URLs, text, or Wi-Fi credentials and download as PNG or copy the SVG. Scan QR codes from an uploaded image or your webcam. Generate standard barcodes in Code 128, EAN-13, or UPC-A format.

All tools use open-source JavaScript libraries (qrcode.js, jsQR, JsBarcode) running locally. All processing happens inside your browser tab.

Read the complete QR tools guide

QR code generator
Generate QR codes for URLs, plain text, or Wi-Fi credentials. Download as PNG or copy as SVG. Runs in your browser.
QR code scanner
Decode QR codes from uploaded images or your webcam. All decoding runs in your browser.
Barcode generator
Generate Code 128, EAN-13, and UPC-A barcodes. Download as SVG or PNG. Runs in your browser.

Why generate and scan QR codes in your browser

QR codes are convenient because they hide their payload. A square of black and white squares reveals nothing until you scan it. That convenience is also the privacy concern: the payload often contains something you would not paste into a chat window. A Wi-Fi QR code carries your network name and password in plain text. A payment QR includes account or wallet identifiers. A shared contact card holds names and phone numbers.

Hosted QR generators receive the payload to turn into an image, then send the PNG back. For a marketing URL that's fine. For a Wi-Fi password it is not. The server now has a record of your credentials, indexed by your IP address and the time you typed them in.

Browser-based tools handle the whole pipeline locally. The QR generator draws the image in a canvas in your page. The scanner reads pixels from an image or webcam frame and decodes them with JavaScript. The payload never crosses the network in either direction.

How the QR and barcode tools work

The QR generator uses qrcode.js, an open-source JavaScript library that implements the QR specification (ISO/IEC 18004). You give it a string, it returns an array of dark and light modules, and the page renders that array onto a canvas. Saving as PNG uses canvas.toDataURL; saving as SVG uses the library's vector output mode.

The scanner uses jsQR, a pure-JavaScript QR decoder. It reads pixel data from an image or a webcam frame, runs the decoding pipeline (locating the finder patterns, sampling the modules, error correction), and returns the original string. The webcam path uses getUserMedia to attach the camera to a <video>element and samples frames every animation tick.

The barcode generator uses JsBarcode, which knows the encoding rules for Code 128, EAN-13, UPC-A, and several other formats. It draws the bars directly into an SVG or canvas. Check digits for EAN-13 and UPC-A are calculated automatically.

In-browser QR tools vs the alternatives

ApproachProcesses locallySetupBest for
In-browser (this site)YesNoneWi-Fi codes, contact cards, one-off generation
Hosted QR code servicesNoNonePublic marketing URLs
Phone camera (built-in scanner)YesNoneScanning physical codes in the world

Your phone camera is already an excellent QR scanner for things you encounter in the real world. The in-browser tools here cover the cases the phone camera does not: generating new codes from text or a URL, and decoding codes from a screenshot or downloaded image.

When to use these tools

Frequently asked questions

Are these QR and barcode tools free?
Yes. No limits on the number of codes generated, no account required, no watermark or logo added to the output.
Is my QR code or barcode data sent to a server?
No. QR codes are generated locally by the qrcode.js library. Barcodes are generated by JsBarcode. The scanner uses jsQR. All three are JavaScript libraries that run entirely in your browser.
Can the scanner work without uploading my image?
Yes. When you pick an image, the file is read into a canvas element in your browser. The jsQR library reads the pixels off that canvas and returns the decoded text. Nothing leaves the tab.
What about the webcam scanner, does it stream video anywhere?
All decoding runs in your browser. The webcam feed goes directly into a video element in the page. Frames are sampled into a canvas and decoded with jsQR. The video stream is processed locally and not recorded or transmitted.
What barcode formats does the generator support?
Code 128 (any text), EAN-13 (12-digit product codes plus check digit), and UPC-A (11-digit codes plus check digit). The generator validates the input and adds the check digit automatically for EAN-13 and UPC-A.
Why is my Wi-Fi QR code longer than I expected?
Wi-Fi QR codes encode a structured string with the network name, security type, and password. The format is WIFI:T:WPA;S:NetworkName;P:Password;; which iOS and Android both recognise. The QR will look denser than a short URL because the payload is bigger.
Can I customise the QR code colors?
Yes, the generator lets you pick foreground and background colors. Be careful with low-contrast combinations: scanners need a clear distinction between the dark and light modules to decode reliably. Stick to dark-on-light for best results.
Do the tools work on mobile?
Yes. The QR generator works on any device with a browser. The webcam scanner needs camera access, which iOS Safari and Android Chrome both support via the standard getUserMedia API.