Mailto Link Generator
Make a mailto: link with To, CC, BCC, subject and body. Body line breaks become %0D%0A as RFC 6068 requires, and the link copies as HTML too. How it works
Use the Mailto Link Generator
Separate several addresses with commas or semicolons. Spaces around them are removed.
A bare mailto: link is valid: it opens a new message with no recipient, which suits a share-by-email link once you add a subject and body.
Test Link (Open Mail App)About the Mailto Link Generator
In a mailto link a space is written %20 and a line break in the body %0D%0A, as RFC 6068 requires, so a subject of Order 1234 and a two-line body give mailto:[email protected]?subject=Order%201234&body=Hello,%0D%0AMy%20order%20has%20not%20arrived. The generator builds that from the To, CC, BCC, subject and body you type, and copies it as a plain link or as an HTML <a> tag.
How characters are written in the subject and the body
| Character | In the subject | In the body |
|---|---|---|
| space | %20 | %20 |
| line break | %20 | %0D%0A |
| & | %26 | %26 |
| ? | %3F | %3F |
| # | %23 | %23 |
| = | %3D | %3D |
| % | %25 | %25 |
| + | %2B | %2B |
| / | %2F | %2F |
| : | %3A | %3A |
| ; | %3B | %3B |
| @ | @ | @ |
| , | , | , |
| é | %C3%A9 | %C3%A9 |
A line break in the subject is replaced by a space, because RFC 6068 says fields other than the body should not contain one. The RFC allows @ and the comma unencoded, so addresses stay readable.
Example links
| Fields filled in | Link |
|---|---|
| To [email protected], subject Order 1234, body Hello, then My order has not arrived. on the next line | mailto:[email protected]?subject=Order%201234&body=Hello,%0D%0AMy%20order%20has%20not%20arrived. |
| To [email protected]; [email protected], CC [email protected], BCC [email protected] | mailto:[email protected],[email protected][email protected]&[email protected] |
| Subject Read this, body https://example.com/a?b=1&c=2 | mailto:?subject=Read%20this&body=https%3A%2F%2Fexample.com%2Fa%3Fb%3D1%26c%3D2 |
| Nothing | mailto: |
Frequently asked questions
- How do I add a line break in a mailto body?
- Press Enter in the Body box. Each line break is written %0D%0A, a carriage return plus a line feed, which section 5 of RFC 6068 requires. A bare %0A is not what the RFC specifies.
- How do I add CC and BCC to a mailto link?
- Fill in the CC and BCC fields. They follow the To address as ?cc= and &bcc=, so To [email protected]; [email protected], CC [email protected] and BCC [email protected] give mailto:[email protected],[email protected][email protected]&[email protected]. In any field you can separate addresses with commas or semicolons; the link always uses commas.
- Why does & or # break a mailto link?
- & starts the next field and # starts a fragment, so inside a subject or body they must be encoded, & as %26 and # as %23. The generator does it for you: the subject Q&A becomes subject=Q%26A.
- How do I put a mailto link in HTML?
- Press Copy as HTML Link. With To [email protected], subject Hi and body Thanks it copies <a href="mailto:[email protected]?subject=Hi&body=Thanks">Email us</a>, with each & between fields written & for HTML. Replace Email us with your own link text.
- Is there a length limit for mailto links?
- RFC 6068 sets none. Some mail apps and browsers are reported to cut very long links, and 2,000 characters is the figure often quoted, so the generator shows a warning above it. That figure is not a standard.
- Can a mailto link have no email address?
- Yes. In the RFC 6068 syntax the address is optional, so mailto:?subject=Read%20this&body=... is valid. It suits a share-by-email link, where the visitor picks the recipient. With every field empty the generator shows mailto: alone.
Related Tools
View all toolsWhatsApp Link Generator
Build a wa.me click-to-chat link and its QR code from a phone number in international format and an optional message, percent-encoded after ?text=.
URL Parser
Split a URL into protocol, user name, password, host, port, path, query and hash, see each query parameter decoded, and whether the port was written.
UTM Builder
Build a campaign URL with utm_source, utm_medium, utm_campaign, utm_id, utm_term and utm_content. Source, medium and campaign are required.
Twitter Card Generator
Make twitter:card, site, creator, title, description and image meta tags for a summary or large-image card on X, with checks on @handles and the image URL.
Robots.txt Generator
Build a robots.txt from a preset such as Block AI crawlers or WordPress, or block and allow folders for named bots, with Sitemap lines and every path checked.
Slug Generator
Turn a title into a lowercase URL slug joined by hyphens or underscores. Accents go, ß, æ and ø are spelled out, and letters with no Latin form are listed.