Illustration of a QR code being scanned by a phone, with a check mark badge.

How to Make a QR Code That Opens an Email Draft

Typing an email address from a poster is a small task with a predictable failure: one wrong character and the message goes nowhere. A code that opens a draft to the right address removes the typing, and with it a share of the bounces.

The Email QR Generator builds that code in the browser. It does not send anything; it gives the person holding the phone a head start on writing.

Quick answer

The code holds a mailto link with the address and, optionally, a subject line and a short body. Scanning hands the link to the phone’s mail app, which opens a compose window with those fields filled in. Keep the subject short, leave the body empty unless it is essential, and test the code on both an iPhone and an Android phone before printing.

What the code contains

The payload is a single URI, roughly like this: mailto:[email protected]?subject=Hello&body=Message. The address follows the scheme, and the subject and body are separate parameters. Spaces and punctuation are percent-encoded so the link survives the trip through the scanner.

That encoding is also the weak point. Some mail apps decode it correctly, some show the encoded characters in the draft, and some ignore the body entirely. The address is the part most likely to arrive intact, which is why it deserves the most care.

Build it in the right order

Enter an address you actually monitor, spelled exactly as it appears in your mail settings. Add a subject that tells you what the message is about, such as the event name or the product. If you include a body, keep it to one short sentence in plain text; long prefilled paragraphs are the first thing to break.

Generate the code, download the image, and scan it with a phone that has a mail app configured. Check three things: the address, the subject and whether the body appears as intended. Repeat on the other phone platform if your audience uses both. A code that works on one device is not yet a tested code.

Where it works, and where it does not

Email QR codes suit posters, receipts, table cards, event slides and shop windows, where the next step is to write to a person or an inbox. They are less reliable for people who use webmail in a browser, because the phone may have no default mail app to hand the link to. Corporate devices can also block mailto links or open them in an unexpected client.

There is a trust issue too. A code that opens a compose window can look like a trick if the address is unfamiliar. Print the address in plain text beside the code and label the action clearly: “Scan to email us”. That gives people a way to check the destination without scanning.

Test before it goes to print

Scan the final image at the size it will appear, not just on screen. Check the quiet zone, the contrast and the smallest modules. Then send one real message from the draft to confirm the address reaches the inbox you expect.

Open the Email QR Generator, add the address and subject, and scan the result before you print. For the wider guide, read How Email QR Codes Work and When to Use One. If the code is going on a business card, see QR Codes for Business Cards: What to Include.

Common questions

What happens when someone scans an email QR code?

The phone reads a mailto link and passes it to the default mail app, which opens a compose window with the address and any subject or body you included. Nothing is sent automatically; the person still has to write and send the message.

Why is the body text missing or garbled in my email QR code?

The body is percent-encoded inside the mailto link, and mail apps differ in how they decode it. Some show the encoding, some drop the body entirely, and some handle only the address and subject. Keep the body short or leave it out for reliability.

Can I attach a file to an email QR code?

No. A mailto link carries text fields, not attachments. If the recipient needs a document, send them to a web page where they can download it, or use a normal email after the draft opens.