Free forever · No sign-up · No tracking

Create custom QR codes in seconds

Generate, style and download high-resolution QR codes for URLs, WiFi, vCards, payments and more — right in your browser.

  • 12data types
  • PNG · SVG · JPEGdownloads
  • 100%client-side
QR Generator

Build your QR code

Pick a data type, enter your content, customise the look and download instantly.

QR Scanner

Scan any QR code

Use your camera or upload an image. Everything decodes locally in your browser.

Result

No code scanned yet.

Templates

Start from a preset

One click to load a ready-made QR type into the generator.

Why choose us

Everything you need in one tool

12 data types

URLs, WiFi, vCards, events, payments and more — all encoded natively.

Full customization

Colors, dot styles, error correction and your own logo in the center.

High-res downloads

Export crisp PNG, scalable SVG or JPEG ready for print and web.

Private & offline

Everything runs in your browser. Nothing is uploaded or tracked.

Built-in scanner

Decode any QR code with your camera or an uploaded image.

Blazing fast

Optimized, lightweight and tuned for Core Web Vitals.

FAQ

Frequently asked questions

Are the QR codes free and permanent?

Yes. Every QR code you generate is completely free, has no expiry, and contains no tracking. The data is encoded directly in the code so it works forever.

Can I add my logo and change the colors?

Absolutely. Upload a logo, pick foreground and background colors, choose dot styles and error correction, then download in PNG, SVG or JPEG.

Which data types are supported?

URL, plain text, email, phone, SMS, WhatsApp, WiFi, vCard contact, location, calendar event, PDF link and image link — 12 types in total.

Does the scanner work on mobile?

Yes. The scanner uses your device camera or an uploaded image and decodes QR codes instantly in the browser, with nothing sent to a server.

Do I need an account or an internet connection?

No account is required. Once the page is loaded the generator works offline because all processing happens locally in your browser.