Blog
How to Send a QR Code via Text
On this page
To send a QR code by text, attach the code’s image to the message the way you send a photo, and type the link it opens in the same message. The picture lets someone scan it from another screen. The link is for whoever reads the text on the phone that got it, since a phone cannot point its own camera at its own screen.
A picture can arrive smaller or recompressed, so we tested how much of that a code takes. JPEG compression barely mattered: a code saved at quality 5, the lowest setting we tried, still read on 2 QR readers at 150 pixels wide. Size mattered: codes started to fail at about 2.5 pixels per module on OpenCV, the stricter of the 2 readers, while Apple Vision read most of them down to 1.8. A module is one of the small squares a code is made of.
The test: 2 codes, 7 JPEG settings, 7 sizes
We made 2 codes with the Python qrcode library, error correction level M, with a quiet zone 4 modules wide:
- Short link:
https://qrplify.com, 25 by 25 modules. - Long link:
https://qrplify.com/blog/how-to-send-qr-code-via-text/, 33 by 33 modules. A longer link needs more modules.
Each code started as a PNG about 1,000 pixels wide. We shrank it to 600, 300, 200, 150, 100 and 75 pixels and saved each size as a PNG and as a JPEG at quality 95, 75, 50, 30, 20, 10 and 5, once, then again 3 times in a row, like a picture forwarded twice. That is 182 images. No phone and no messaging app were used: the resizing and the JPEG saves were done with Pillow on a Mac, so the test shows what the file can take, not what any one app does to it.
Each image was read by 2 QR readers: Apple Vision, the barcode detector in Apple’s Vision framework, and the QR detector in OpenCV 4.14. A pass means the reader returned exactly the link.
Both codes above passed every read in the test, the blocky JPEG included. Each one opens qrplify.com.
Results
| Short link, 25 modules | Long link, 33 modules | |
|---|---|---|
| 600, 300 and 200 pixels | Every JPEG setting read on both readers | Every JPEG setting read on both readers |
| 150 pixels | Every setting read on both | Every setting saved once read on both. OpenCV missed quality 5 saved 3 times. |
| 100 pixels | Every setting read on both | Mixed: Vision missed quality 5 saved once, and OpenCV missed 3 of the 7 settings each time, quality 95 among them |
| 75 pixels | Vision missed quality 5. OpenCV missed quality 10 and 5. | OpenCV read none, the PNG included. Vision missed quality 10 and 5. |
What the results say, in short:
- From 150 pixels up, 1 read out of 224 failed: OpenCV on the long link at quality 5, saved 3 times. Every other JPEG read on both readers.
- The failures came with size. The short link read everywhere down to 100 pixels, 3 pixels per module. The long link started to fail at 100 pixels, 2.4 pixels per module.
- A longer link packs in more modules, so it needs a bigger picture to read.
How to send the code, step by step
- Make the code in the free QR code generator and download it as a PNG. No account, no card.
- Keep the link short. A shorter link makes a simpler code, and in the test the simpler code read at sizes where the longer one failed.
- Attach the image to a new text, the way you attach a photo. It goes as MMS, the media message, or over RCS or a chat app. On MMS it can be resized on the way: Twilio, a business texting platform, says it resizes PNG, GIF and JPG images to the size each carrier needs.
- Type the link too, with 1 line on who you are and what the code opens: “This is Sam from the clinic. The code opens our check in page:” followed by the link itself.
- Send it to yourself first. Open the picture from the message and scan it with a second phone, or take a screenshot and open it in the free QR code decoder, which reads the code in your browser and shows the link.
- If it reads badly, send a bigger image, shorten the link, or send the link alone.
Scanning a code that arrived on your own phone
A code in a text sits on the screen of the phone that would scan it. Tap the link if the message has one. If it has only the picture, save it or take a screenshot and read it from the image: our guide on how to scan a QR code covers reading a screenshot or a saved image, and the free QR code decoder reads it in the browser. A screenshot cropped too close can stop a code from reading: see do screenshots of QR codes work.
A QR code that opens a text message
Some searches for texting a QR code mean the reverse: a code that starts a text. An SMS QR code holds a phone number and a message, and scanning it opens a new text with both filled in, ready to send. The free generator writes it as SMSTO:number:message. It is a static code, so the number and the message cannot change after you print it.
Send codes people can trust
The person you text cannot see where a code goes until they scan it. The FBI’s public notice on tampered QR codes tells people who receive a code from someone they know to check with that person through a known number or address, and to check the link after scanning. Make that easy:
- Say who you are and what the code opens, in the same message.
- Type the link, so they can read the domain before they open anything.
- Text only people who expect to hear from you.
If the link may change after you send the code, use a dynamic QR code: a free account adds a dynamic code you can edit after you send it, so an old message still opens the right page. More in can you update a QR code link after printing? and static and dynamic codes compared.
FAQ: sending QR codes by text
How do I send a message in a QR code?
Use a text QR code: it stores your message, and the phone that scans it shows the text on screen. To have the scan start a text message to you instead, use an SMS QR code.
What is the FBI warning about QR codes?
In a public notice from January 2022, the FBI warned that criminals tamper with QR codes to send people to sites that steal login and financial details. Its advice includes checking the link after you scan, looking for a sticker over a printed code, and never downloading an app from a QR code. More on what a scan can and cannot do: can scanning a QR code infect your phone?
Can I use a QR code for Wi-Fi?
Yes. A WiFi QR code lets guests join your network without typing the password. You can text the code’s picture like any other, and the guest scans it from a second screen or opens it with a screenshot reader.
Do I need MMS to send a QR code?
To send the picture as a carrier text, yes. Twilio calls MMS media messages, and where a carrier cannot take MMS, it can send an SMS with a short link to the picture instead, if the sender turns on its MMS Converter. RCS and chat apps carry pictures too. Without any of them, send the link alone: it opens the same page.