Email QR Code Generator

Scanning opens a blank email addressed to you, with the subject and body already filled in if you want them. Useful for support cards and feedback forms.

Anything after the address is a query string, so a subject or a body has to be percent-encoded. A raw space or ampersand truncates the message silently, and the code still scans perfectly. Test the whole thing on a real phone rather than trusting how it looks in the editor.

Used for
  • Support and warranty cards
  • Feedback and complaint boxes
  • Product registration inserts
  • Recruitment posters
  • Press and enquiry signage
Content categories

Preview

Enter content to generate QR code

How email QR codes work

The code holds a mailto: address, optionally with a subject and body attached as parameters. The phone hands it to whichever mail app is set as the default, which opens a new draft with those fields populated. Nothing sends by itself and nothing is transmitted when the code is scanned. The draft simply sits there until the person decides to send it.

What the code actually contains

Address, subject and a one-line prompt, and the code holds:

mailto:support@example.com?subject=Warranty%20claim&body=Model%20and%20serial%3A

A standard mailto with the subject and body as URL parameters, percent-encoded. Every space and colon costs three characters rather than one, which is why a long template makes a noticeably denser code.

A fixed subject line is the point

The address alone saves someone typing; a fixed subject saves you sorting. "Warranty claim — model X" or "Feedback: Baker Street" arrives already labeled, which means a filter can route it and you can tell at a glance which sign or which product the message came from. Different codes with different subjects on different materials is the cheapest campaign tracking there is.

Keep the pre-filled body short

The body text is encoded character for character and URL-escaped, so spaces and punctuation each cost a few characters more than they look. A long template makes a dense pattern for text most people will delete anyway. A prompt of one line — "Please describe the problem:" — does the work without the bulk.

Which mail app opens is not yours to choose

The draft opens in whatever the person has set as their default: Mail, Gmail, Outlook or something else. All of them honor the address and subject; a few older clients ignore the pre-filled body. Because of that, never put essential information only in the body. Anything the recipient must have should also be in the subject or printed beside the code.

Troubleshooting

The pre-filled message is missing but the address is right
Some mail clients honor the address and subject and ignore the body. Never put anything essential only in the body: put it in the subject, or in text beside the code.
The draft opens in the wrong app
It opens in whatever the person has set as their default mail client. There is nothing in the code that can override that, and nothing that should.

Email QR code FAQs

Yes, and both are optional. A fixed subject is the more valuable of the two: it makes incoming mail filterable and tells you which code the sender scanned.

No. The draft opens in the phone’s mail app and the sender chooses whether to send it. Scanning the code sends nothing on its own.

Whichever is set as the default on that phone. Address and subject are honored everywhere; a small number of clients ignore a pre-filled body, so do not rely on the body alone for anything important.

A printed code is only readable by someone holding it, so it is not exposed the way an address on a web page is. Publishing the same code image online is a different matter, because a bot that scans images can read it exactly as a phone does.

An email code is instant and works offline, but you get whatever the sender types. A form gives you structured fields and validation. On print, an email code with a fixed subject is usually the better trade; for anything you need to process automatically, point a URL code at the form.

Not on this code. A mailto: instruction goes to the mail app rather than through a web page, so there is nothing to redirect. If the address may change, encode a dynamic code pointing at a contact page on your site and let that page carry the mailto link.