VOL. I · NO. 1
PACKAGE v0.3.0
✦ TECHNOLOGY SPECIAL

The Internet Times

All the protocols that are fit to fix.

HTML guide · RFC 6068

Mailto links with multiple recipients

Separate To, CC, and BCC addresses with commas. Keep the URI compact, encode the message fields, and test the finished link because email-client behavior still varies.

Build the mailto link

Copy this

The correct multiple-recipient format

Put every primary recipient directly after mailto:, separated by commas. This follows the recipient-list syntax in RFC 6068.

HTML
<a href="mailto:alex@example.com,dev@example.com">Email the team</a>

Use a comma, not a semicolon, and do not add spaces between addresses. The email app opens a draft addressed to both recipients. The visitor can still edit the list or close the draft without sending.

Address roles

Add CC and BCC once

Start query fields with ?, then join each extra field with &. Keep all CC addresses in one cc field and all hidden copies in one bcc field. Repeating a field can produce different results across clients.

HTML with To, CC, BCC, and subject
<a href="mailto:alex@example.com,dev@example.com?cc=manager@example.com&amp;bcc=archive@example.com&amp;subject=Project%20update">Send the update</a>
FieldUse it forVisibility
ToPrimary recipients expected to actVisible in the draft
CCPeople who should be kept informedVisible in the draft
BCCA hidden copy after the visitor sendsStill exposed in your page source

Two encoding layers

Encode the message, then escape the HTML

Percent-encode subject and body values. Spaces become %20, while body line breaks use %0D%0A. In HTML source, write separators between query fields as &amp; so the markup stays valid.

HTML with an encoded body
<a href="mailto:alex@example.com,dev@example.com?subject=Project%20update&amp;body=Hello%20team%2C%0D%0AHere%20is%20the%20latest.">Email the team</a>

The mailto link generator handles both layers and gives you ready-to-paste HTML.

Standards are the baseline

Test the clients your visitors actually use

What the standard defines

Comma-separated recipients, one query string, and percent-encoded values.

What the standard cannot promise

That every browser-handler and email-client combination interprets every field the same way.

Run the finished URL through the mailto link tester, then open it in the browser and email clients that matter to your audience. A valid URI can still hand off to the wrong app or to no configured handler.

Keep the list small

A mailto link is not private routing

Every To, CC, and BCC address in a mailto link is visible in the page source. Do not place a private address or a large distribution list in public HTML. Use a contact form or server-side mail flow when you must hide recipients, validate a submission, choose a recipient dynamically, or confirm delivery.

smart-mailto preserves the same recipient fields

The library parses comma-separated To, CC, and BCC addresses and carries them into the chosen provider's composer. It improves provider choice, but it does not make a public recipient list private.

Add the webmail picker →

FAQ

Multiple-recipient mailto questions

How do I add multiple recipients to a mailto link?

Put the recipient addresses after mailto: and separate them with commas. Do not put spaces between addresses. Add subject, cc, bcc, or body after a question mark.

Should mailto recipients use commas or semicolons?

RFC 6068 defines a comma-separated recipient list. Some email clients apply their own address-list rules, so use commas in the URI and test the finished link in the clients that matter to your audience.

Can a mailto link include multiple CC or BCC addresses?

Yes. Put one cc or bcc parameter in the query string and separate its addresses with commas. Avoid repeating the same parameter because mail clients handle repeated fields inconsistently.

Is mailto suitable for a large recipient list?

No. Every address is exposed in the page source, and the visitor still has to send the message from their own email client. Use a contact form or server-side mail flow when recipients must stay private or routing must be reliable.