mailto: Link Builder
The mailto: URI scheme (RFC 6068) is the standard way to make a clickable link that opens the user's default mail client with a pre-filled draft. This tool lets you compose multiple recipients, copy/blind-copy lists, a subject line, and a multi-line body, then assembles the URL with proper percent-encoding for spaces (%20), newlines (%0A), and special characters. You can copy the raw URL, copy a ready-made HTML <a href=…> anchor, or open it directly to see how your default mail client renders the draft. Useful for contact pages, support links, newsletter signup CTAs, structured bug-report templates, and any 'mailto first, web form second' pattern.
mailto:hello%40example.com?subject=Hello&body=Hi%20there%2C%0A%0AI%20wanted%20to%20reach%20out%20about%E2%80%A6%0A%0ABest%2C%0A<a href="mailto:hello%40example.com?subject=Hello&body=Hi%20there%2C%0A%0AI%20wanted%20to%20reach%20out%20about%E2%80%A6%0A%0ABest%2C%0A">hello@example.com</a>Notes
Follows RFC 6068. Multiple recipients are joined with commas. Spaces, line breaks, and special characters in subject/body are percent-encoded (space → %20, newline → %0A). Some mail clients impose URL length limits (Outlook on Windows ≈ 2,083 chars); keep the body short for compatibility.
How to use
- Enter one or more To addresses (use Add to add more rows).
- Optionally add Cc and Bcc recipients.
- Type a subject and a body — newlines and special characters are encoded automatically.
- Copy the mailto: URL, the HTML anchor snippet, or click Open in mail client to test.
- Try the presets (Support, Feedback, Newsletter, Bug Report, Cold Intro) for common templates.
Frequently asked questions
- What's the difference between mailto: and a webmail compose URL?
- mailto: is a standard URI scheme (RFC 6068) that opens whichever mail client the user has set as default — native (Apple Mail, Outlook desktop), Gmail through a browser handler, or anything else. Webmail compose URLs (https://mail.google.com/mail/?view=cm&to=…) are vendor-specific and only work in browsers logged into that service. mailto: is more portable; webmail URLs give you control over which inbox opens.
- Why are line breaks in the body so long in the URL?
- Newlines must be encoded as %0A (3 characters). Each blank line adds 3 chars, and non-ASCII letters/spaces also get percent-encoded (up to 9 chars each in UTF-8). That's why long pre-filled bodies bloat URL length quickly. Some clients (notably Outlook on Windows) cap URLs at ~2,083 characters.
- Can I include HTML in the body?
- No — mailto: bodies are plain text only. Some clients strip HTML tags, others show them literally. Use plain-text formatting (newlines, asterisks, dashes) and let the user enrich the message after their client opens. If you need real HTML, generate an email server-side and send it; mailto: is for kicking off a draft, not formatting it.
- Do all mail clients support cc/bcc/subject/body parameters?
- All four are in RFC 6068 and supported by every major client (Gmail, Apple Mail, Outlook, Thunderbird, mobile). Older corporate clients sometimes ignore bcc, and some mobile clients ignore body if you pass it through certain in-app browsers. Test on the platforms your users actually use.
Related tools
OAuth 2.0 PKCE Generator
Generate code_verifier + S256/plain code_challenge for OAuth 2.0 PKCE (RFC 7636). Also builds the authorization URL and a ready-to-paste curl for the token exchange.
Email & URL Extractor
Pull every email address or URL out of a block of text, in your browser.
URI Template Expander (RFC 6570)
Expand RFC 6570 URI templates with your own variables — supports all four levels: path, query, fragment, label, and path-style operators with explode and prefix modifiers, entirely in your browser.
String Escape Converter
Escape a string for 10 contexts at once — JavaScript, JSON, HTML entities, URL, SQL, regex, Bash (single/double quote), C string, Unicode \u escapes. Copy whichever you need.
DKIM Record Builder & Parser
Build or parse a DKIM (DomainKeys Identified Mail) DNS TXT record — paste your public key, pick selector, key type (RSA/Ed25519), hash and flags, get the full record plus the selector._domainkey hostname and a DNS-chunked version for records over 255 chars.
URL Query Builder
Build URLs by combining a base address with editable key-value query parameters — each pair toggleable, properly percent-encoded.