QR.technology Free · Private · No sign-up
// use case · email

Email QR code

One scan opens a new email, already addressed. An email QR code uses the mailto: scheme to pre-fill the recipient, and optionally the subject and message. Here's the exact format, the URL-encoding rules that matter, and where it's genuinely useful.

Format: mailto:Opens mail appStatic · permanent

The mailto: format

Email QR codes use the same mailto: scheme that email links on web pages use. The simplest form is just an address:

mailto:[email protected]

You can pre-fill the subject and body by appending query parameters:

mailto:[email protected]?subject=Support%20request&body=Hi%20team%2C

The rules:

  • The address comes first, right after mailto:.
  • A ? begins the optional parameters; subject and body are joined with &.
  • Spaces and special characters must be percent-encoded — a space becomes %20, a comma %2C, a line break %0A. The generator does this for you when you type into the subject and body fields.

When to use it

  • Support and feedback — a code that opens an email to your help desk with a subject already set, so messages route correctly.
  • Print campaigns — let readers contact you without copying an address by hand.
  • Forms and submissions — pre-fill a structured subject like Job application: Designer.
  • Events — an RSVP code with a ready-made subject line.

Gotchas worth knowing

It drafts, it doesn't send

Scanning opens a pre-filled draft in the person's email app. They still tap send. That's by design — no email can be sent silently — but set expectations in your call to action ("Scan to email us").

  • Behavior varies by device. The draft opens in whatever email app is set as default. Someone with no mail app configured may see nothing happen.
  • Keep the body short. Long pre-filled messages bloat the payload and make a denser code. A brief greeting or reference line is plenty.
  • Double-check the address. A typo in mailto: sends replies into the void. Scan and verify before printing.
  • Encode, don't paste raw. Typing & or spaces directly into a hand-built URL breaks the parameters. Use the generator fields so encoding is handled.

Adding cc and bcc recipients

The mailto: format supports more than subject and body. You can copy other recipients with cc and bcc parameters, joined like any other query value:

mailto:[email protected][email protected]&subject=Quote%20request

A few practical notes:

  • cc is visible; bcc is hidden. Use bcc when you want a silent copy — for instance routing a copy to a CRM inbox without showing it to the customer.
  • Each address adds length. More recipients mean a denser code, so keep the list short for print.
  • Multiple addresses in one field are separated by commas, which must be percent-encoded as %2C.
  • The draft still opens for review. As always, the person sees and sends the message themselves — cc and bcc just pre-populate the fields.

Make an email QR code

Enter the recipient, and optionally a subject and message, on the Email tab. The generator assembles a correctly encoded mailto: link and renders the code.

Generate an email QR code

Fill in the address, subject, and message — encoding is automatic. Export a print-ready PNG or SVG, all in your browser.

Open the email generator

Frequently asked questions

Does scanning the code send the email automatically?

No. It opens a pre-filled draft in the person's email app; they review and tap send themselves. Email can never be sent silently from a scan.

Can I pre-fill the subject and message?

Yes. The mailto: format supports ?subject= and &body= parameters. Type them into the generator's fields and the special characters are encoded for you.

Why do my spaces show as %20?

That's correct percent-encoding — spaces and punctuation must be encoded inside a URL. The email app decodes them back to normal text when the draft opens.

What if the person has no email app?

Nothing will happen on a device with no default mail app configured. For broad reach, pair the code with a visible plain-text address as a fallback.