Mailto Link Generator
Create HTML mailto links with recipients, CC, BCC, subject, and body text.
Mailto links allow visitors to open their default email client with pre-filled information. Here's what each parameter does:
• Email Address: The main recipient of the email (required).
• Subject: Pre-fills the subject line of the email.
• Body: Pre-fills the content of the email.
• CC and BCC: Add carbon copy and blind carbon copy recipients.
Note that mailto links can behave differently depending on the email client and browser used.
How to use Mailto Link Generator
- 1
Enter the recipients
Fill in the To address and optionally add CC and BCC recipients, separating multiple emails with commas.
- 2
Add subject and body
Type a pre-filled subject line and message body so the visitor's email opens ready to send.
- 3
Set link and advanced options
Customize the link text, CSS class, or ID, and toggle options like open in new window or URL-encode parameters.
- 4
Generate and copy
Click Generate Mailto Link, then copy the ready-made HTML anchor or the raw mailto URL for your site.
The mailto Link: Syntax, Parameters, and Gotchas
What the mailto scheme is
A mailto link is a URL that uses the mailto scheme instead of http, and clicking one opens the visitor's default email program with a new message already addressed and, optionally, pre-filled. It is the standard, built-in way to turn a contact email into a clickable link on a web page, written as an ordinary anchor whose href starts with mailto: followed by the recipient address. No server, form, or script is required; the browser hands the request off to whatever email client the user has configured.
The simplest form is just mailto: plus one address, which opens a blank email to that recipient. Everything beyond that, such as subject lines, message bodies, and extra recipients, is layered on through query parameters appended to the link, exactly as you would add parameters to a normal URL.
The parameters: to, cc, bcc, subject, and body
After the main recipient, you append a question mark and then name-and-value parameters joined by ampersands, just like a web query string. The supported fields are cc and bcc for carbon-copy and blind-carbon-copy recipients, subject to pre-fill the subject line, and body to pre-fill the message text. A complete link might address one person, copy another, set a subject, and seed the first line of the message, all in a single href. The main recipient can also be supplied as a to parameter rather than directly after the colon.
Order does not matter among the parameters, and any of them can be omitted. This generator assembles them for you from the fields you fill in, so you do not have to remember the exact punctuation, but understanding the structure helps you read and tweak the output by hand when needed.
Multiple recipients
You can address several people at once by separating their addresses. To put more than one person in the main To line, list the addresses separated by commas after the mailto colon. The same comma-separated approach works inside the cc and bcc parameters, so a single link can open a message pre-addressed to a whole distribution of recipients across the To, CC, and BCC fields.
Be aware that while comma separation is the documented standard, a few older or unusual email clients have historically expected semicolons instead, which is a long-standing source of inconsistency. For broad compatibility, commas are the right choice, and this tool lets you enter multiple addresses separated by commas in each field.
URL encoding is mandatory, not optional
This is the detail that breaks more mailto links than anything else: the subject and body values must be URL-encoded. A space becomes %20, a line break becomes %0A (and a full carriage-return-plus-line-feed becomes %0D%0A), and characters that have special meaning in a URL, such as the ampersand, question mark, and number sign, must be percent-encoded or they will be misread as link structure rather than as text. An unencoded ampersand in your body, for example, will be interpreted as the start of a new parameter and silently truncate your message.
Because hand-encoding is tedious and error-prone, this generator offers URL encoding as a recommended, default-on option that converts your subject and body into the safe percent-encoded form automatically. Leave it enabled unless you have a specific reason not to; turning it off is the fastest way to produce a link that works in your test but mangles spaces and punctuation for real users.
Line breaks in the body
Pre-filling a multi-line message requires encoding the line breaks as well. A newline is represented by %0A, so a body that should appear as two paragraphs needs that sequence wherever a line break belongs. Without it, your carefully formatted message collapses into one run-on line in the recipient's compose window. This tool provides an option to preserve line breaks in the body precisely so multi-line content keeps its formatting when the email client opens.
Even with correct encoding, rendering of line breaks varies slightly between email clients, and a few render them imperfectly. For short messages this is rarely an issue, but for anything longer it is worth previewing the result in the actual client your audience is likely to use.
Real limitations to keep in mind
mailto links depend entirely on the user's setup. They open whatever email client is configured as the default, which on a desktop might be Outlook or Apple Mail and on mobile is usually the device's mail app. If a visitor has no email client configured, or uses webmail in a browser that is not registered to handle mailto, clicking the link can do nothing or produce an error, which frustrates users who expected a contact form. There is also a practical length ceiling: browsers and clients limit how long a URL can be, so very long pre-filled bodies may be truncated.
Critically, mailto is not a sending mechanism and not for bulk email. It merely opens a draft; the user still has to press send, and you have no way to know whether they did. It is perfect for a contact link or a pre-filled support request, but for collecting submissions reliably, capturing data, or sending to many recipients, a proper server-side form or email service is the right tool instead.
Where mailto links are used, and a privacy note
The natural home for a mailto link is anywhere you want to invite a person to email you with minimal friction: a contact page, a footer email address, a support link, or a feedback button that opens a message with a relevant subject already filled in, such as a pre-tagged support category. Pre-filling the subject is especially useful because it routes and labels incoming mail consistently without asking the sender to do anything.
One caution worth knowing: publishing a raw email address inside a mailto link also exposes it to spam-harvesting bots that scrape pages for addresses. If spam is a concern, people often obfuscate the address or fall back to a contact form. This generator builds the link and the surrounding HTML anchor entirely in your browser, with no data uploaded, so the only exposure is whatever you choose to publish on your page.
Frequently asked questions
What is a mailto link?
Can I add CC, BCC, subject, and body?
Should I keep URL encoding turned on?
Do I get HTML code or just the URL?
Will the link work in every email client?
Related tools
Keep going with these handy tools