Skip to content
Generate Online

Email QR Code Generator

Open a prefilled draft instead of making someone copy an address by hand.

Optional. Useful for labelling where the scan came from.

Optional. Prefilled in the draft — the sender still presses send.

QR code options

Generated on your device. Nothing you type is sent anywhere.

What a Email QR code does

An email QR code opens a new message with the recipient already set, and optionally a subject line and opening text already written. It uses the mailto scheme that email links on web pages have used for decades, so support is broad and predictable. The subject line is the part worth thinking about: because it arrives already filled in, it can label where the scan happened. Different codes on a window, an invoice and a product manual can produce visibly different subjects, turning an undifferentiated inbox into something that sorts itself.

When to use one

  • Shop windows and closed premises where enquiries should arrive as a written record
  • Invoices and statements that need a direct route back to the accounts inbox
  • Trade stands and printed brochures aimed at people who prefer writing to calling
  • Product manuals and warranty cards where support requests should be documented
  • Recruitment posters and notice boards where applications arrive with attachments

Why it works well

  • No transcription of the address

    Email addresses are error-prone to copy — a missed letter or a wrong domain produces a bounce the sender may never notice. Encoding removes that step and the whole class of failure with it.

  • The subject line does the sorting

    Because the subject arrives prefilled, distinct codes in distinct places produce distinct subjects. Filtering and triage become possible with no tracking, no redirect service and no analytics — the attribution arrives inside a message the sender chose to write.

  • Written record by default

    Unlike a call, an emailed enquiry arrives with a timestamp and a thread. For anything that may need referring back to later, that is a meaningful advantage over a phone number.

  • Attachments come free

    Opening the mail app means the sender can attach a photograph of the fault, the receipt or the damaged part without any additional step from you.

Worked examples

Address only

The simplest form. Opens a blank draft to the right recipient, leaving the sender to write whatever they want.

Encoded as

mailto:hello@example.com

Subject that labels the location

A code on a specific noticeboard, with a subject naming that board so replies arrive already identified.

Encoded as

mailto:lettings@example.com?subject=Enquiry%20%E2%80%94%20Riverside%20board%2C%20unit%204

Support request with an opening line

Printed on a warranty card. The prefilled body prompts the sender for the information you would otherwise have to ask for.

Encoded as

mailto:support@example.com?subject=Warranty%20claim&body=Model%20number%3A%20%0APurchase%20date%3A%20%0AProblem%3A

How to create a Email QR code

  1. Enter the receiving address

    Put the destination in the Email address field. This is the only required input — a code with just an address still saves the person from transcribing it, which is where most email typos come from.

  2. Write a subject that identifies the source

    Use the Subject line to record where the code is placed rather than what the message is about. A subject reading "Enquiry from the shop window" tells you more on arrival than "Enquiry" ever will.

  3. Add opening text if it helps

    The Message field prefills the body. Keep it to an opening line the sender would plausibly have written themselves, since they will see it as their own words and can edit or delete it.

  4. Check it opens in a real mail app

    Scan the finished code on a phone where email is actually configured. Testing on a device with no mail account set up produces a failure that has nothing to do with the code.

What goes wrong, and how to avoid it

  • Spaces encoded as plus signs

    The mailto scheme requires spaces in the subject and body to be percent-encoded as %20. Encoders that treat it like a form submission use a plus sign instead, and standards-compliant mail clients then display literal plus signs throughout the subject line. This generator always uses %20, so pasted text arrives reading correctly.

  • Long prefilled bodies producing a dense code

    Both subject and body are percent-encoded into the payload, so every space costs three characters and punctuation often more. A prefilled message of a few sentences can double the pattern's density. Keep the body to a prompt rather than a paragraph.

  • No mail app configured on the device

    A mailto link needs a mail client that knows an account. On a phone where the built-in mail app has never been set up, the link opens a setup screen instead of a draft, which reads as a broken code to the person scanning. Nothing about the code can prevent this.

  • Assuming the message sends itself

    The draft opens and waits. The sender must press send, and can edit anything you prefilled first. Write the body as a prompt for them to complete, never as a statement you are making on their behalf.

  • Line breaks in the body

    Newlines in the prefilled message are encoded, but a few mail clients collapse them into one paragraph. A body built as a form with labelled blank lines mostly survives, but check it in your own client before printing anything that depends on the layout.

Device and app compatibility

mailto is one of the oldest and most widely supported URI schemes, so scanners hand it to the system mail handler without special support. On iOS the built-in Mail app opens with the draft prepared; Gmail and Outlook can be set as the default handler and behave the same way. Android routes it through the default mail app, with the same result. The failure mode is not a scanner problem but a device one: on a phone with no mail account configured the link opens an account setup screen. Desktop behaviour depends on whether a mail client is registered — webmail-only users sometimes see nothing happen at all, which is worth knowing if the code will be scanned from a screen.

The subject and body are query parameters on the mailto URI, percent-encoded per RFC 6068. The address itself keeps its @ unescaped, since encoding it breaks parsing in several clients — one of the small inconsistencies that makes hand-building these payloads unreliable.

Common questions

Does the email send automatically when scanned?

No. A draft opens with your address, subject and any prefilled text already in place, and the sender presses send themselves. No link format can send mail on someone's behalf, which is a deliberate protection rather than a limitation of this tool.

Why do plus signs appear in my subject line?

That is a generator encoding spaces the way a web form does rather than the way the mailto specification requires. Spaces must be %20; a plus sign is rendered literally by standards-compliant clients. Codes made here always use the correct encoding.

What if the person has no email app set up?

The link opens whatever the device considers its mail handler, which on an unconfigured phone is an account setup screen. There is no way for the code to detect this in advance. If your audience may not have mail configured, a phone number or messaging code is a safer choice.

Can I prefill the subject and message?

Yes, both, and the subject in particular is worth using. Distinct codes in distinct places with distinct subject lines mean incoming mail sorts itself by origin without any filtering rules or tracking on your part. The body is most useful as a short template — a few labelled blank lines that collect the details you would otherwise have to ask for in a reply.

Does a long prefilled message make the code harder to scan?

Yes. Both fields are percent-encoded into the payload, so a space becomes three characters and punctuation often more. A few sentences of prefilled body can noticeably densify the pattern. Use it as a short prompt rather than a full message.

Is my email address stored by this site?

No. The mailto link is assembled in your browser and the pattern is drawn on your device. Nothing is sent anywhere, which you can verify by watching the Network tab in developer tools stay empty while you type. That applies to the subject and body as well — a prefilled support template containing internal reference numbers never leaves the machine you typed it on.

Read before you print

Other QR code generators

This generator is part of contact QR codes — see the whole group, and what to decide before you generate one.