お客様から「フォームから送ったのに返事がない」と言われた。
受信トレイを見ても、それらしいメールが見当たらない。
こんにちは、三重県でホームページ制作をしているMYコンサルティングです。
当社でも実際にありました。そして原因は、いつも同じ場所にあるわけではありません。
「届かない」には、実は4つの状態が混ざっています。
先に結論
・まず自分でテスト送信する。ここで大半が切り分けられる
・届いているのに気づかない迷惑メールフォルダがいちばん多い
・文字化けして読めないのも「届かない」と同じこと。実装側の問題
・そもそも送信できていない/スパム対策で弾いていることもある。強すぎる設定は本物を巻き込む
まず切り分ける(テスト送信ひとつで済む)
原因を推測する前に、自分のサイトのフォームから、自分宛てにテスト送信してください。
これだけで、原因はほぼ絞り込めます。
| テスト送信の結果 | 疑うもの |
|---|---|
| 受信トレイに届いた | お客様の分だけ迷惑メール/弾かれた |
| 迷惑メールフォルダに入っていた | 送信元の設定 |
| 届いたが読めない | 文字化け(実装側) |
| まったく届かない | 送信先アドレスの設定ミス/サーバー |
テストは「送れたか」で終わらせない
送信完了の画面が出ても、メールが飛んでいるとは限りません。
確認するのは①送信できるか ②受信トレイに届くか ③文字化けしていないかの3点です。
迷惑メールフォルダに入っている
まず疑うべき原因です。
当社でも、ちゃんとした問い合わせが迷惑メールに入っていたことは何度もあります。Gmailで受け取っている場合は特によく起きます。
すぐできる対処
迷惑メールフォルダで該当のメールを見つけたら、「迷惑メールではない」と指定してください。
あわせて、フォームからの送信元アドレスを連絡先に登録しておくと、次回から受信トレイに入りやすくなります。
それでも続く場合
フォームの送信元アドレスが、サイトのドメインと一致しているかを確認してください。
たとえば「example.co.jp」のサイトなのに、フォームからのメールがまったく無関係なアドレスから送られていると、受信側は不審に思います。
送信元をサイトと同じドメインに揃えると、改善することがあります。
ただし、揃えるだけでは足りません。
そのドメインが「このサーバーから送ってよい」と認めている必要があります(SPF、できればDKIMの設定)。サーバー会社の案内に従うか、制作会社に依頼する範囲です。
Gmailで受け取っている場合
2024年2月から要件が厳しくなりました
Googleは2024年2月以降、すべての送信者に対してSPFまたはDKIMのいずれかの設定を求めています(送信数の多い少ないに関わらず)。
「Gmailで受け取っていると特に届きにくい」と感じるのは、これが背景にあります。
差出人をお客様のアドレスにしない
フォームの差出人(From)を「入力されたお客様のメールアドレス」に設定している実装を見かけますが、これは迷惑メール判定される原因になります。
差出人は自社ドメインのアドレスにして、お客様のアドレスは返信先(Reply-To)に入れる。
こうすれば、返信ボタンでそのままお客様に返せますし、迷惑メール扱いも減ります。
届いているが文字化けして読めない
見落とされがちですが、これも「届かない」と同じことです。
当社でも、お客様のフォームからのメールが文字化けしていた例に遭遇しています。
届いてはいるので、サーバーもメールも正常に見えます。それだけに気づくのが遅れます。
原因は実装側の文字コードの指定漏れです。
日本語のメールを送るときに、本文とヘッダーの文字コードを正しく指定していないと、受け取った側で読めない文字の羅列になります。
症状で見分けがつきます
・本文だけ化ける/件名だけ化ける → 文字コードの指定漏れ。本文と件名は別々に指定する必要があり、片方でも抜けると起きます
・特定の文字だけ化ける(「①」「髙」「﨑」など) → 環境依存文字。古い文字コードで送っていると起きます
・全部が「?」になる → 変換そのものに失敗しています
根本的に直せるのは実装側だけです。ただし上2つは、受け取ったメールソフトで文字コードの表示設定を切り替えると読めることがあります。
「?」に潰れている場合は送った時点で情報が失われているので、受信側では復元できません。
そもそも送信できていない
テスト送信がまったく届かない場合です。
送信先アドレスの設定ミス
フォームの設定に書かれた宛先が間違っている、というだけのこともあります。
退職やアドレスの廃止で受け取れなくなっているケースもあるので、まず設定を目で確認してください。
WordPressの場合
WordPressでContact Form 7などのプラグインを使っている場合、サーバーの標準機能でメールを送ろうとして失敗していることがあります。
SMTPを使って送る設定に変えると解決することがあります。
なおこの場合、送信そのものが失敗しているケースと、送れてはいるが受信側に弾かれているケースの両方があります。
SMTPに変えると送信元の認証が通るようになるため、迷惑メール判定の改善にもつながります。
Wixやジンドゥーなど、作成サービスの場合
これらのサービスには、フォームの回答が管理画面(受信箱)に残る仕組みがあります。
まず管理画面を開いて、回答そのものが残っているか確認してください。
回答が残っているなら、フォームは動いています。止まっているのはメール通知のほうです。
通知設定がオフになっていないか、通知先のメールアドレスが古いままになっていないかを確認し、あわせて迷惑メールフォルダも見てください。
この「管理画面に回答が残っているか」という確認は、どの作成サービスでも使える切り分けです。
なお当社はWordPressや作成サービスを使わず、静的HTMLとPHPでフォームを作っています。
仕組みは違っても、届かないときの切り分けの順序は同じです。詳しくはWordPressとは、静的HTMLとはもご覧ください。
スパム対策が本物を弾いている
ここからが、作る側でないと見えない話です。
フォームには必ずスパムが来ます。当社が関わっているサイトでも、日常的に大量に届いています。
だから対策を入れるのですが、ここに難しさがあります。
強くすれば本物も巻き込む
スパム判定を厳しくすれば、迷惑な送信は確かに減ります。
しかし同時に、本物の問い合わせを取りこぼす確率も上がります。
そして厄介なのは、弾いたことに誰も気づかないことです。届かなかった問い合わせは、存在しなかったことになります。
この塩梅は、正直なところ難しいです。
現実的な落としどころは、弾いた記録が残る仕組みにしておき、定期的に中身を見て調整することだと考えています。
当社のフォームは、迷惑対策と使いやすさの両立を前提に組んでいます。考え方はお問い合わせフォームとはにまとめました。
AIが書いた「本物そっくりのスパム」という新しい問題
最近、状況が変わってきました。
AIで文章を作れるようになったことで、日本語として自然で、こちらの事業内容にも触れてくる問い合わせ風の営業が届くようになりました。
実際に受け取っています。
従来のスパムは、機械的な文面や不自然な日本語で見分けがつきました。
いまは、読んでも判断がつかないものがあります。
これが意味すること
キーワードで機械的に弾く方式は、もう効きません。
自然な日本語で、業種に合った内容が書かれているからです。
だからこそ、無理に自動で弾こうとしないほうが安全です。
判定を厳しくするほど、本物の問い合わせを巻き込むリスクが上がります。最後は人が見て判断する前提にしておくほうが、取りこぼしが減ります。
受け取る量は増えます。ただ、失うのは時間だけです。
対策を強めて本物を1件失うほうが、事業には痛い。そう考えています。
気づけない状態にしないために
この問題のいちばん怖いところは、止まっていても誰も教えてくれないことです。
問い合わせが来ない日が続いても、「今週は反応がなかっただけ」と思ってしまいます。
サーバーを移転した、プラグインを更新した、メールアドレスを変えた。そういう作業のあとに静かに止まっていることがあります。
月に一度のテスト送信
いちばん確実で、誰でもできる対策です。
自分のサイトのフォームから、自分宛てに1通送る。送信できるか・受信トレイに届くか・文字化けしていないかを見るだけで済みます。
自動返信を入れておく
送信した人に「受け付けました」というメールが自動で返る仕組みです。
お客様の安心につながるだけでなく、何も返ってこなければ相手側が異変に気づけることがあります。
ただし自動返信が相手の迷惑メールに入ることもありますし、自動返信は届いたのに管理者宛ての通知だけ届いていないこともあります。過信はできません。
受け取り先を1つにしない
通知の宛先を2か所にしておくと、片方が迷惑メールに入っても、もう片方で気づけます。
担当者が変わっても止まらない、という利点もあります。
作業のあとは必ず確認する
サーバー移転・ドメイン変更・フォームの改修・メールアドレスの変更。
この4つのあとは、テスト送信をセットにしてください。作業自体は成功していても、メールだけ止まることがあります。
よくある質問
問い合わせフォームからのメールが届きません。まず何を確認すればいいですか?
自分でテスト送信してください。それが届くなら、フォームもメールも動いています。その場合は迷惑メールフォルダを確認します。テスト送信も届かない場合は、フォームの送信先アドレスの設定ミスか、サーバー側でメールが送れていない可能性が高いです。
迷惑メールフォルダに入ってしまうのを防ぐには?
まず届いた1通を「迷惑メールではない」と指定し、送信元アドレスを連絡先に登録してください。それでも続く場合は、フォームの送信元アドレスがサイトのドメインと一致しているか確認します。あわせて、そのドメインのSPFやDKIMの設定も必要です。Googleは2024年2月以降、すべての送信者にSPFまたはDKIMのいずれかを求めています。
届いたメールが文字化けしています。どうすればいいですか?
フォームの実装側の問題です。日本語のメールは本文と件名で別々に文字コードを指定する必要があり、片方でも抜けると読めない文字の羅列になります。受け取ったメールソフトで文字コードの表示設定を切り替えると読めることもありますが、根本的に直せるのは実装側です。制作を依頼した会社に確認してもらってください。
WordPressのContact Form 7を使っていますが届きません。
WordPressの場合、プラグインがサーバーの標準機能でメールを送ろうとして失敗しているケースが多く見られます。SMTPを使って送る設定に変えると解決することがあります。ただし原因の切り分けは同じで、まずテスト送信と迷惑メールフォルダの確認からです。
スパム対策を強くすると、本物の問い合わせまで弾いてしまいませんか?
そのとおりで、ここが一番難しいところです。対策を強めれば迷惑な送信は減りますが、同時に本物の問い合わせを取りこぼす確率も上がります。弾いた記録が残る仕組みにしておき、定期的に中身を見て調整するのが現実的です。
最近、本物そっくりのスパムが増えている気がします。
実際に増えています。AIで文章を作れるようになったため、日本語として自然で、事業内容にも触れてくる問い合わせ風の営業が届きます。機械的なキーワード除外では止まりません。無理に自動で弾こうとせず、人が見て判断する前提にしたほうが取りこぼしが減ります。
フォームが正しく動いているか、自分で確認する方法はありますか?
月に一度、自分でテスト送信してみてください。サーバーの移転や設定変更のあとに動かなくなることがあり、問い合わせが来ないだけでは気づけません。送信できるか、届くか、文字化けしていないか、この3点を確認します。
まとめ
「届かない」と言われたら、まず自分でテスト送信。ここで大半が切り分けられます。
いちばん多いのは迷惑メールフォルダ。
次に見落とされやすいのが文字化けで、これは届いているぶん気づくのが遅れます。
そして、問い合わせが来ないこと自体に気づけないのが一番怖いです。
サーバーの移転や設定変更のあとに止まっていても、誰も教えてくれません。月に一度のテスト送信を習慣にしてください。