Best open-source QR Code Generators compared: Mini QR, libqrencode, Segno, QR Code Styling and 2 more, with licenses, platforms and prices from official pages checked October 24, 2026.
•3 min read•Social Media & Ads
| Tool | Price | Platforms | Best for | Tested |
|---|---|---|---|---|
| Mini QR | Free (Free and open source) | Web browser, Self-hosted | Making a few good-looking codes | Docs only |
| libqrencode | Free (Free and open source C library with a qrencode command-line tool) | Command line (build from source) | Scripts and embedded use | Docs only |
| Segno | Free (Free and open source) | Python library, Command line | Python projects | Docs only |
| QR Code Styling | Free (Free and open source) | JavaScript library | Branded codes on a website | Docs only |
| ZXing | Free (Free and open source) | Java library | Java applications | Docs only |
| Shlink | Free (Free to self-host under MIT; no hosted plan checked) | Web, Docker | Dynamic codes you can redirect | Docs only |
Independent comparison. Paid placements are labelled separately; editorial links earn no affiliate commissions. Learn more.
Most open-source QR code tools are libraries rather than finished websites, so decide first whether you want to click or to code. For clicking, Mini QR is a free web app you can also host yourself, with custom colours, logo upload and PNG, JPG and SVG export. For code, libqrencode is the classic C library and command-line tool, Segno is a pure-Python generator, qr-code-styling adds logos and styles in JavaScript, and ZXing is a long-standing Java barcode library whose repository is now in maintenance mode. Shlink is a self-hosted link shortener rather than a QR generator, but it can give you short links you can encode and track, so it is worth knowing about if you want dynamic codes that you can redirect later. That last point matters: a QR code that encodes a static URL can never be changed, while one pointing to a short link you control can. Print codes with high contrast and quiet margins, and test them with two phones before printing a thousand flyers. Commercial generators lock dynamic codes behind subscriptions and may disable them if you stop paying, which is the strongest argument for the open-source route. Licences below come from the projects' repositories as of the check date.
GPL-3.0 web app for creating styled QR codes with colour options, logo upload and PNG, JPG and SVG export. Easy to self-host.
Price: Free (Free and open source) (Mini QR pricing, checked 2026-10-24).
Platforms and license: Web browser, Self-hosted. GPL-3.0 (open source) (license source).
Project activity: 2.4k GitHub stars · latest release v0.33.0 (Aug 21, 2026) · last commit Oct 24, 2026
Best for: Making a few good-looking codes.
Worth knowing: README features: custom colors and styles, PNG/JPG/SVG export, logo upload, and scanning of QR codes.
LGPL-2.1 C library with a qrencode command-line tool. Fast and compact, with no styling features.
Price: Free (Free and open source C library with a qrencode command-line tool) (libqrencode pricing, checked 2026-10-23).
Platforms and license: Command line (build from source). LGPL-2.1 (open source) (license source).
Project activity: 3k GitHub stars · latest release v4.1.1 (Sep 28, 2020) · No commits since Oct 10, 2025
Best for: Scripts and embedded use.
BSD-3-Clause pure-Python QR and Micro QR encoder with no dependencies, easy to call from scripts that generate many codes at once.
Price: Free (Free and open source) (Segno pricing, checked 2026-10-24).
Platforms and license: Python library, Command line. BSD-3-Clause (open source) (license source).
Project activity: 818 GitHub stars · latest release 1.6.6 (Mar 12, 2025) · last commit Jul 23, 2026
Best for: Python projects.
Worth knowing: README: pure Python QR Code and Micro QR Code encoder with no dependencies.
MIT JavaScript library for QR codes with logos and styling in your own web app.
Price: Free (Free and open source) (QR Code Styling pricing, checked 2026-10-24).
Platforms and license: JavaScript library. MIT (open source) (license source).
Project activity: 3k GitHub stars · latest release v1.9.2 (Apr 11, 2025) · last commit Feb 14, 2026
Best for: Branded codes on a website.
Worth knowing: README: JavaScript library for generating QR codes with a logo and styling.
Apache-2.0 Java barcode library. The project is in maintenance mode and the Barcode Scanner app is not available.
Price: Free (Free and open source) (ZXing pricing, checked 2026-10-24).
Platforms and license: Java library. Apache-2.0 (open source) (license source).
Project activity: 34.2k GitHub stars · latest release zxing-3.5.4 (Nov 11, 2025) · last commit Oct 26, 2026
Best for: Java applications.
Worth knowing: README: multi-format 1D/2D barcode image processing library; the project is in maintenance mode and the Barcode Scanner app is not available.
MIT self-hosted URL shortener. Not a QR generator itself, but its short links let you redirect a printed code later.
Price: Free (Free to self-host under MIT; no hosted plan checked) (Shlink pricing, checked 2026-10-23).
Platforms and license: Web, Docker. MIT (open source) (license source).
Project activity: 5.4k GitHub stars · latest release v5.1.8 (Oct 21, 2026) · last commit Oct 24, 2026
Best for: Dynamic codes you can redirect.
Worth knowing: Self-hosted URL shortener; you pay for your own server. The project describes itself as a self-hosted URL shortener.
Docs-only for Mini QR, libqrencode, Segno, QR Code Styling, ZXing, Shlink: we did not install or run them, so feature claims come from vendor pages. Vendor prices and free limits change; confirm on the linked pricing page before you commit.
Kevin Fan is a SaaS founder. He runs Free Instead Of, which tracks free and open-source alternatives to paid software and checks each price and free-plan limit against the vendor's own pages.
Based on official pricing, license and product pages checked between 2026-10-23 and 2026-10-24: Mini QR, libqrencode, Segno, QR Code Styling, ZXing, Shlink. Prices, free limits and licenses are the figures shown on those pages on those dates. No tool on this page was installed or run. No accounts were created.