mailtoスキームは、Simple Mail Transfer Protocol (SMTP) による電子メールのアドレスを示すものとしてInternet Assigned Numbers Authority (IANA) へ登録されたスキームである。用途が厳密に決まっているわけではないが、mailtoのURLは、そのURLを適用すると、メールクライアントを開き、URL中のアドレスが「To:」欄に入力される、というような動作が想定されている section 3 : by Paul Hoffman in 1998 discusses operation of the "mailto" URL.。

例 HTML中でmailtoを使って、メールを送るためのリンクを設置するには、以下のようになる。 <a href="mailto:[email protected]">メール送信</a>

SubjectやCCといったヘッダや、本文の初期値を与えることもできるが、改行やスペースについては直接入れることはできず、エンコードする必要がある。

<a href="mailto:[email protected][email protected]&subject=This%20is%20the%20subject&body=This%20is%20the%20body">メール送信</a>

アドレスを複数指定することも可能である。 <a href="mailto:[email protected],[email protected]">Send email</a>

厳密な文法や指定できる値の完全な一覧については、で規定されている。

動作の問題点 mailtoのリンクはどんな環境でも正しく動くとは限らない。リンクをクリックして正しく動作するためには、メールクライアントがローカルにインストールしてあり、デフォルトとして設定されている必要がある。Webメールの普及により、メールクライアントのない環境、またメールクライアントはプリインストールしてあるものの、設定すらされず放置されている環境も増えてきている。そのような環境でmailtoのリンクをクリックしても、メールクライアントが設定されていないとエラーを出すか、未設定のメールクライアントが開いてしまうという、どちらにしても望まない結果となってしまう。OperaやGoogle Chromeなど、ブラウザによってはmailtoのリンクでウェブメールを呼び出せるようにする設定も可能なほか、同様なことを実現するサードパーティのソフトウェアも存在する。

セキュリティ上の問題 でセキュリティ問題が何点か指摘されているが、最大の問題はBotによるメールアドレスの収集である。HTML中のmailtoは、DOMや正規表現などで機械的に読み取ることができ、スパマーからの迷惑メールを招くこととなってしまう。

Botによる読み取りを「困難」にする手法も存在はするが、Botの方の性能が上がれば破られてしまいうる。

脚注