Generating QR codes for free

Posted by Chris Rosser on Mon 27 January 2020
Hello! This site is archived and no longer maintained. For Chris' main site go to

Back when I published The Weaver's Boy, I co-opted work's monthly booze-up as an unofficial launch party. To this end I knocked up a promo poster on the cheap. Hardly a professional job, but I was in a hurry, and I didn't want to spend good coin. Since I knew there was a lot of nerds in the room, I wanted to include QR codes with links to Amazon and other retailers I use.

QR codes are visual representations of data, a more robust and flexible alternative to the humble barcode. Here's one if you've never seen one before, or you didn't know what they are called.

QR code to this page's URL
QR code to this page's URL

Smartphones can read QR codes using their cameras and a relevant app. Recent versions of iOS and Android cut the need for a separate app, reading them directly in their operating system's stock camera apps. Since typing URLs on smartphone is awful, this is a good thing! The code I included above links to this page, with a URL of 64 characters -- not something anyone wants to thumb type.

For creative types, QR codes are great for sharing URLs or other bits of text on printed materials. You can link to product pages, sites, individual articles, or even digital downloads protected by obfuscated URLs generated by download managers. You can include them on all manner of promo material, like bookmarks, posters, the back page of a paperback -- you get the idea.

Unfortunately, back when I created my poster, I was new to these codes and used one of those dodgy free online generators. It turns out that many of these services hold your links to ransom. Instead of creating a code based on your URL, they use their own link shortener/redirection service. The minute your free trial expires, or you stop paying, and those links go dead.

So, very quickly, I'll show you how to create your unencumbered QR codes for free. Note, this isn't exhaustive by any means; these are just the methods I've come to use. If you know of other free apps for Android or Windows, feel free to share them in the comments.

Shortcuts on iOS

Shortcuts is a free automation tool for iOS that turns your iPhone or iPad into a productivity superhero. It works by stitching together actions blocks, each offering all kinds of functionality. Out of the box, it ships with actions to create and read QR codes.

With only three actions, you can create a QR code generator that takes text into a code and shares it using the Sharesheet. Here's an example.

Simple QR Code Shortcut
Simple QR Code Shortcut

A slightly smarter variation is to avoid typing by adding the workflow to the iOS sharesheet. This change means you can share a URL directly from Safari and generate your code automatically.

For an even nerdier alternative, you could parse your blog's RSS feed (or any curated list of links) and pick which link you'd like to encode.

Creating QR Codes from RSS
Creating QR Codes from RSS

If that looks like too much work, take mine.


Slightly more cumbersome, but with much more control over the finished product, is the free and open-source vector graphics editor, Inkscape. The app is available on Linux, macOS and Windows.

Inkscape features an extension that can generate QR codes. As the resulting graphic is a vector, you can scale the image to any size without losing quality. You are also free to change the colours as you see fit.

To generate the code, go to Extensions -> Render -> Barcode -> QR Code...

Fill in the necessary fields, generate the code, and the plugin will insert the graphic into the document. Once created, the code behaves like any SVG object, and you can edit it in any way you like.

Oh, and as a bonus, the classic barcode extension can generate ISBN barcodes for your paperback books too.


The final, and nerdiest option I use, is the command-line utility, qrencode. Available on Linux and macOS (via Homebrew), it's great if you like working on the command line and regularly pipe data from one utility to the next. With it, you can change the format (PNG, EPS, SVG), colours, the resulting file name, and a lot more besides.

For example, on Mac, you can pipe a URL saved to your clipboard to the utility and open it in Preview as follows:

$ pbpaste | qrencode -o code.png && open code.png

You can do the same thing on Linux, albeit with the Xclip and Display utilities.

Using Shortcut's neglected older uncle, Automator, you could easily add this command line snippet to a macOS service that accepts URLs from Safari -- no need to mess around with the command line.

I generally use this option for transmitting text sneakernet style off a locked-down or air-gapped computer, but it will work just fine for creating codes for use in your printed document.

Concluding thoughts

So there you have it, three (mostly) simple and 100% free methods for creating QR codes. Don't use some scummy online service that suckers you in with free trials — chances are your links will rot within a month.

I'm sure there are options aplenty in this space, but I can't speak for Windows or Android. Feel free to share in the comments below any alternatives you might use.

Cover photo by Mitya Ivanov on Unsplash.

Wow you read this far! This site is archived and no longer maintained. For Chris' main site go to