Chrome troubleshooting · 8 minute fix
Mailto not working in Chrome? Start with the handler.
A valid mailto link can still do nothing, open the wrong app, or flash a blank tab. Use this checklist to separate a Chrome setting from a broken link, then choose the right fix for visitors or your website.
Fix 1 · Chrome
Allow Chrome to open email handlers
Type chrome://settings/handlersinto Chrome's address bar. Make sure sites are allowed to ask to handle protocols. A protocol handler tells Chrome which app or web service should receive a link such as mailto:.
- 01
Open Chrome handler settings
Use chrome://settings/handlers in the same browser profile where the link failed.
- 02
Allow protocol requests
Turn on the option that lets sites ask to handle protocols. If it is locked, a work or school administrator may control it.
- 03
Remove a wrong saved handler
If an unwanted site is registered for email, remove it and choose again the next time Chrome offers a handler.
- 04
Retry in a normal tab
Private browsing, extensions, and embedded previews can behave differently. Test the original page in a standard tab.
No handler setting?
Chrome labels and policy controls can differ by version, device, and managed account. If the setting is missing or disabled, skip to the system default check and ask your administrator about external protocol handling.
Fix 2 · Gmail
Register Gmail as Chrome's email handler
After protocol requests are allowed, open Gmail in the Chrome profile you use. Look for the handler icon at the right side of the address bar. If Chrome offers the choice, allow Gmail to open email links, then retry the mailto link.
If Chrome never offers Gmail
Confirm protocol requests are enabled, reload Gmail, and check whether Gmail is already listed or blocked in handler settings. A managed Chrome profile can prevent registration. In that case, use the system's default app or open a webmail compose link directly.
Fix 3 · Your device
Choose a default email app in the operating system
When Chrome has no web handler, it normally passes the mailto request to the operating system. If the wrong desktop app opens, or nothing opens, check the default email application on the device.
Windows
Default apps by protocol
Open Settings, choose Apps, then Default apps. Find the email app or the MAILTO protocol and assign the client you want. The exact path varies between Windows versions.
macOS
Default email reader
Open the Mail app, then its General settings, and choose a default email reader. That choice controls which desktop app receives mailto links from browsers.
On ChromeOS, Android, iOS, Linux, or a managed device, the available defaults and policy controls differ. The useful test is the same: confirm that one app or web handler owns the email protocol, then retry in Chrome.
Fix 4 · Your website
Prove the link works before blaming Chrome
If you publish the page, reduce the test to a plain anchor. A correct link starts with mailto:, contains a valid recipient, and percent-encodes subject or body values. It does not need JavaScript.
<a href="mailto:hello@example.com?subject=Website%20question">
Email us
</a>| Symptom | Likely layer | Next test |
|---|---|---|
| Every mailto link fails | Browser or device handler | Check Chrome handlers and the system default |
| Only one link fails | HTML or JavaScript | Paste a plain anchor into a blank page |
| Works in a new tab, not an embed | Iframe or host policy | Test outside the preview or embedded surface |
| Wrong recipient or subject | Mailto syntax | Rebuild and encode the URL |
- Remove click interception. Check whether a script calls
preventDefault()without opening another destination. - Test outside an iframe. Website builders, embedded previews, and sandboxed frames may restrict external protocol launches.
- Encode the message. Use the mailto link generator to catch spaces, line breaks, ampersands, and missing separators.
- Keep a visible address. A copy fallback still works when the visitor cannot or does not want to configure a mail handler.
Fix 5 · Reduce visitor setup
Offer webmail without deleting the mailto fallback
You cannot repair every visitor's Chrome profile from your website. You can avoid making handler setup the only path. smart-mailto upgrades a normal mailto anchor with a provider picker, while the original link remains available if the library fails to load.
Preserve the visitor's choice
Webmail, native mail, and copy-address paths cover more setups than one forced destination. Native mail is included by default on mobile and can be enabled on desktop.
Be clear about the tradeoff
A picker adds a step for someone whose mail handler already works. A remembered provider choice stays in this site's local storage and does not follow the visitor across other websites.
Questions
Chrome and mailto FAQ
Why does nothing happen when I click a mailto link in Chrome?
Chrome may not have permission to ask a registered email handler to open the link, or the operating system may not have a default email app. First allow sites to handle protocols in Chrome, then check the system default email app.
How do I make mailto links open in Gmail from Chrome?
Allow sites to handle protocols in Chrome, open Gmail, and accept Gmail as an email handler if Chrome offers the handler icon in the address bar. Managed profiles may hide or block that choice.
Can a website force every mailto link to open in Gmail?
No. A normal mailto link hands control to the visitor's browser and operating system. A site can offer a webmail picker, but it should preserve native mail and copy-address fallbacks.
Why does a mailto link work for me but not another visitor?
The HTML can be identical while each visitor has a different browser profile, default email app, webmail handler, extension, or device policy. Test the link itself separately from the visitor's mail setup.
Should a contact page use a form instead of a mailto link?
Use a form when you must validate fields, route submissions, measure completion, or guarantee receipt. Use mailto when the sender should compose and send from their own email account.