ホームページの問い合わせフォームは、送信すると「送信しました」と表示されるのに、管理者にメールが届かない。この事故が厄介なのは、問い合わせが来ていないのか、来ているのに届いていないのかを区別できないことです。気づかないまま半年が過ぎ、失った商談は数えることすらできません。この記事では、届かない原因の切り分け手順と、二度と起こさないための恒久対策を解説します。
届かない原因の大半はレンタルサーバーからの送信が弾かれていること
まず全体像です。フォームからのメールが届かない原因は、大きく4つに分類できます。
| 原因 | 発生頻度 | 症状の特徴 |
|---|---|---|
| 迷惑メール判定・受信側での拒否 | 最も多い | 特定の宛先だけ届かない、Gmail宛だけ届かない |
| フォームプラグインの設定ミス | 多い | 設定変更・プラグイン更新の直後から発生 |
| 送信元アドレスの設定不備 | 多い | 導入当初から一部の宛先で届いていない |
| サーバーの送信制限・障害 | 少ない | ある日を境に全宛先で届かなくなる |
なぜレンタルサーバーからのメールは弾かれやすいのか
フォームからのメールは、WordPressが動いているレンタルサーバーから送信されます。このとき送信元アドレスを自社ドメインに設定していると、本来そのドメインのメールを送るはずのメールサーバーとは異なる場所から送信されることになります。受信側から見ると、なりすましの疑いがある送信に見えるため、迷惑メール扱いや受信拒否の対象になります。
GmailとMicrosoft 365は判定が厳しい
Googleは大量送信者に対して、SPF・DKIM・DMARCといった送信元認証の設定を要件化しています。この流れは受信側全体の厳格化につながっており、認証設定のないメールは届きにくくなっています(出典 Google メール送信者のガイドライン)。
切り分けは3つのテストで完了する
原因を特定するために、順番にテストします。
まず複数の宛先にテスト送信する
自社ドメインのアドレス、Gmail、他社ドメインのアドレスの3種類に、それぞれテスト送信してください。結果によって原因が絞り込めます。
- すべての宛先に届かない場合、フォームプラグインまたはサーバー側の送信機能に問題がある
- Gmailだけ届かない場合、送信元認証(SPF・DKIM)の設定不備が濃厚
- 自社ドメイン宛だけ届かない場合、サーバー内のメール転送設定を確認する
- 迷惑メールフォルダに入っている場合、送信元認証の設定で改善する
迷惑メールフォルダを必ず確認する
「届いていない」と思っていたメールが、数ヶ月分すべて迷惑メールフォルダに入っていたという事例は非常に多いです。テストの前に、まず迷惑メールフォルダとゴミ箱を確認してください。(半年分の問い合わせがそこに眠っていた、というのは実際にあります)
フォームプラグインの設定を確認する
Contact Form 7やWPFormsなどのプラグインでは、送信先アドレス・送信元アドレス・返信先の3つを設定します。よくあるミスは以下です。
| 設定項目 | 正しい設定 | よくある誤り |
|---|---|---|
| 送信先(To) | 実際に受信する自社アドレス | 退職者のアドレスが残っている |
| 送信元(From) | 自社ドメインの実在するアドレス | 入力者のアドレスを設定している |
| 返信先(Reply-To) | 入力者のメールアドレス | 未設定で返信できない |
送信元に入力者のアドレスを設定すると弾かれる
返信しやすいようにと、送信元アドレスにフォーム入力者のアドレスを設定しているケースがあります。これは自社サーバーから他社のアドレスを名乗って送信している状態で、なりすましと判定されます。送信元は必ず自社ドメインのアドレスにし、返信先の項目に入力者のアドレスを設定してください。
退職した担当者のアドレスが送信先に残っていて、誰も受け取っていないケースが頻繁にあります。担当者が変わったタイミングで、フォームの送信先設定を必ず確認してください。
恒久対策はSMTP送信への切り替え
設定を直しても不安定な場合、送信方式そのものを変えるのが確実です。
WordPress標準の送信機能は信頼性が低い
WordPressは標準でPHPのメール送信機能を使っていますが、この方式は送信元認証の仕組みを持たず、受信側から信頼されにくい構造です。中小企業サイトでフォームメールが不安定な原因のほとんどが、この標準機能に依存していることにあります。
SMTPプラグインで正規のメールサーバーを経由させる
WP Mail SMTPなどのプラグインを使うと、フォームからのメールを正規のメールサーバー経由で送信できます。自社のメールアカウントの情報を設定するだけで、通常のメールと同じ扱いになり、到達率が大きく改善します。
- 自社が契約しているメールサーバーのSMTP情報を用意する
- 送信専用のメールアカウントを1つ作成する(個人アカウントを使わない)
- プラグインにサーバー名・ポート番号・アカウント情報を設定する
- 設定後にテスト送信機能で到達を確認する
- パスワードは定期的に見直す
外部のメール配信サービスを使う方法もある
SendGridやBrevoなどのメール配信サービスは、無料枠でも1日数百通まで送信でき、到達率が非常に高いのが特徴です。送信ログも確認できるため、届いたかどうかの検証が可能になります。問い合わせ数が多いサイトや、確実性を重視する場合はこちらが有力です。
送信元認証の設定でドメインの信頼性を上げる
より根本的な対策として、DNSでの認証設定があります。
SPFはどのサーバーから送ってよいかの宣言
SPFは、自社ドメインのメールをどのサーバーから送信してよいかをDNSに記載する仕組みです。レンタルサーバーの管理画面から数クリックで設定できることが多く、まず最初に確認すべき項目です。
DKIMは電子署名による改ざん防止
DKIMは、送信するメールに電子署名を付けて、正当な送信者であることを証明する仕組みです。主要なレンタルサーバーは管理画面から有効化できます。SPFとDKIMの両方を設定しているかどうかで、到達率は明確に変わります。
DMARCで認証失敗時の扱いを指定する
DMARCは、SPFやDKIMの認証に失敗したメールをどう扱うかを宣言する設定です。設定していないドメインは信頼性が低いと判断される傾向が強まっています。これらの設定はDNSの操作を伴うため、不安がある場合は保守担当に依頼してください。
届いていることを継続的に確認する仕組みを作る
一度直しても、プラグイン更新やサーバー移行で再発します。
フォーム送信内容をデータベースにも保存する
Flamingoなどのプラグインを使うと、フォームから送信された内容をWordPress内に保存できます。メールが届かなくても、管理画面から問い合わせ内容を確認できるため、機会損失を防げます。メールだけに依存しない二重化が、最も効果的な保険です。
月1回のテスト送信を運用ルールにする
毎月決まった日に、自分でフォームからテスト送信して受信を確認する運用にしてください。1分で終わる作業で、数ヶ月分の機会損失を防げます。プラグイン更新後は必ず実施してください。
自動返信メールも同時に確認する
問い合わせ者への自動返信メールも、同じ理由で届かなくなります。管理者宛には届いているのに、お客様への自動返信だけ届いていないケースもあります。テスト時は、管理者宛と自動返信の両方を確認してください。
最後に
問い合わせフォームのメール不達は、気づかない限り永遠に続き、その間の機会損失は誰にも見えません。原因の大半は送信元アドレスの設定とサーバーからの送信方式にあり、SMTP送信への切り替えとSPF・DKIMの設定でほぼ解決します。加えて、送信内容をデータベースにも保存しておけば、万一の不達でも問い合わせを取りこぼしません。
Web管理では、月額1万円からホームページの運用保守を代行しています。フォームの到達確認、SMTP設定、SPF・DKIMの設定まで対応可能です。「問い合わせが少ないのは届いていないからではないか」と不安な方は、まず診断だけでもご相談ください。

