Ttooleras
📧

Mailto Link Generator

Web Tools

Generate mailto links with subject, body, CC, BCC, and pre-filled content, plus ready-to-use HTML anchor tags for contact buttons, footers, and documentation.. Free, private — all processing in your browser.

This tool is coming soon. Check back later!

Advertisement

A mailto link is simple on the surface and surprisingly fiddly in practice. You start with mailto:hello@example.com, then want to add a subject, then a body, then maybe CC and BCC. Each piece has to be URL-encoded, spaces become %20 (or + in some interpretations), line breaks become %0D%0A, and suddenly your clean email link looks like alphabet soup. This generator handles all of it, producing clean, standards-compliant mailto URLs you can drop straight into an href or a command-line script.

The generator follows RFC 6068 — the actual standard for mailto. It properly percent-encodes every field, handles multiple recipients separated by commas, and supports the to, cc, bcc, subject, and body parameters. Modern email clients (Apple Mail, Outlook, Gmail webmail, Thunderbird, and most mobile apps) parse these correctly and pre-populate every field when the user clicks the link.

Beyond the raw URL, the tool outputs a ready-to-paste HTML anchor tag. You can customize the visible link text (default is the email address), add attributes like rel="noopener" or a class, and copy as HTML for websites, markdown link syntax for documentation, or plain text URL for emails and scripts. A preview shows what the user sees on click, and a test button opens the mailto directly to verify it works in your default email client before you ship it.

Mailto Link Generator — key features

All mailto parameters

To, CC, BCC, subject, and body with proper encoding.

Multiple recipients

Comma-separated lists in any field validated for basic email syntax.

HTML anchor output

Ready-to-paste <a href> tag with customizable link text, class, and attributes.

Markdown link output

Markdown link syntax for READMEs, docs, and blog posts.

Live preview

See the pre-filled message as the user will see it when they click.

Test button

Opens the mailto in your default email client to verify it works before shipping.

Character count

Warns if your URL approaches the 2000-character safe limit.

How to use the Mailto Link Generator

  1. 1

    Enter recipients

    Add the primary To address, and optional CC and BCC recipients (comma-separated for multiple).

  2. 2

    Add subject and body

    Fill in the subject and body text. Line breaks in the body work naturally.

  3. 3

    Customize link text

    Pick what the user sees: the email address, 'Contact us', 'Send feedback', or any text.

  4. 4

    Copy the output

    Grab the HTML anchor, markdown link, or raw URL — whichever fits your use case.

  5. 5

    Test before shipping

    Click test to open the mailto in your email client. Verify every field is pre-filled correctly.

Common use cases for the Mailto Link Generator

Website and app

  • :
  • :
  • :

Documentation

  • :
  • :
  • :

Marketing

  • :
  • :
  • :

Internal tools

  • :
  • :
  • :

Mailto Link Generator — examples

Simple contact

Just to address

Input
hello@example.com
Output
mailto:hello@example.com

With subject

Common support link

Input
support@example.com + subject
Output
mailto:support@example.com?subject=Support%20Request

Full pre-filled

Subject and body

Input
all fields
Output
mailto:hello@example.com?subject=Hi&body=I%20want%20to%20ask...

CC multiple

Adds CC list

Input
to + cc1,cc2
Output
mailto:a@x.com?cc=b@x.com,c@x.com

HTML anchor

Ready-to-paste link

Input
generate HTML
Output
<a href=\"mailto:hi@x.com?subject=...\">Contact</a>

Technical details

Mailto is defined by RFC 6068 and supersedes the older RFC 2368. It allows a URL scheme that email clients recognize as an instruction to compose a new message. The format is mailto:to-addresses?key1=value1&key2=value2, where the query string uses standard URL-encoding.

Accepted keys include:
- to: comma-separated list of primary recipients; can also be embedded in the path
- cc: comma-separated copy recipients
- bcc: blind-copy recipients
- subject: the message subject
- body: the message body (text only; HTML is not supported via mailto)

Every value must be percent-encoded. Newlines in the body use %0D%0A (CRLF) per RFC 6068. Special URL characters (&, ?, #, =, +, spaces) must be encoded, otherwise the parser may cut the value short or misinterpret it. This generator performs proper encoding so you never have to remember the exact rules.

Practical limits: most email clients truncate mailto URLs around 2000 characters, some as short as 1000. If you have a lot of pre-filled body content, test on Gmail and Outlook which are the least forgiving. Mobile clients also vary — iOS Mail handles most cases gracefully, Android clients differ by vendor. Attachments are not supported by the mailto spec (and security reasons prevent browsers from even trying), so for workflows involving attachments you need a form-based solution. For everything else — contact buttons, support links, pre-filled feedback forms — mailto is the fastest path from a click to a composed email.

Common problems and solutions

URL length limits

Long bodies exceed client limits. Keep mailto URLs under 2000 characters for broad compatibility.

Line breaks encoding

Use %0D%0A (CRLF), not %0A alone. Some clients parse only CRLF correctly.

HTML in body

Mailto body is plain text. HTML tags appear as literal text in most clients.

Attachments unsupported

You cannot attach files via mailto. Use a web form or the user's email client directly.

Special characters in subject

Unencoded special characters can truncate the subject. This tool encodes them, but if you hand-edit, be careful.

Client behavior differences

Gmail webmail, Outlook, and mobile clients handle mailto differently. Test on your target audience's likely client.

Mailto Link Generator — comparisons and alternatives

Writing mailto URLs by hand is error-prone because of URL encoding. Typo the subject or skip encoding a space and the resulting link breaks in random ways across email clients. Embedding long bodies with line breaks is especially tedious. This generator encodes every field correctly, outputs ready-to-paste HTML or markdown, supports all mailto parameters, and includes a test button so you verify in your actual email client before shipping. It is the fastest way to add pre-filled email links to a site or doc without risking encoding bugs.

Frequently asked questions about the Mailto Link Generator

Why should I use mailto vs a contact form?

Mailto is fast for simple contact points. Use a form when you need to validate input, store submissions, or prevent spam.

Does mailto expose my email to spammers?

Yes. Mailto links are plain text and scrapers find them easily. Consider a contact form or obfuscate with JavaScript if spam is a concern.

Can I send to a distribution list?

Yes. Comma-separate multiple addresses in the To field. Some clients cap this at a few addresses.

How do I include an emoji in the subject?

Emoji work; they are encoded as UTF-8 percent bytes in the URL. The generator handles this automatically.

What if the user has no default email client?

Browsers prompt to pick one or show an error. Offer a fallback web form link for users without an email client.

Can I track mailto clicks?

Yes with analytics event tracking on the click handler. Once the mailto opens, the email is composed in the client and further tracking is not possible.

Do mailto links work on mobile?

Yes. Mobile browsers hand off to the default mail app. Some chat-focused devices may not have a default mail client.

Is mailto blocked by corporate firewalls?

The protocol itself is client-side. The user's machine handles it. Firewalls may restrict outgoing SMTP from the client but not the link itself.

Additional resources

Advertisement

Related tools

All Web Tools

Learn more

Explore more tools

200+ free tools that run in your browser.

Browse all tools →