MailPoetでメールを送ったはずなのに、届かない。
「テストは届くのに本番が届かない」「送信済みなのに相手にない」——この状態、かなり多い。
MailPoetの配信トラブルは原因が1つじゃないことが多い。送信方法の設定ミス、ホスティングの制限、ドメイン認証の不備、Cronの停止——これらが複合して「なんとなく届かない」状態を作る。
このページは、原因を1つずつ切り分けて、潰す順番を固定するための手順書。上から順番にチェックすれば、大半のケースは解決する。
関連: メール到達率の基本(SPF/DKIM/DMARC) / MailPoet初期設定|最初に詰まらない手順 / MailPoet代替ツール5選
先に結論(急いでるならここだけ)
「届かない」の原因は、大きく 5つのレイヤー に分かれる。
| レイヤー | 典型的な症状 | 確認場所 |
|---|---|---|
| ① 送信方法の設定ミス | そもそも送信されない・0%で止まる | MailPoet → Settings → Send With |
| ② ホスティングの制限 | 途中で止まる・一部だけ届く | ホスト側の送信上限・ポートブロック |
| ③ ドメイン認証の不備 | 送信はされるが迷惑メール行き | DNS(SPF/DKIM/DMARC) |
| ④ Cron(タスクスケジューラ)の停止 | 予約配信が動かない・遅延する | MailPoet → Help → System Status |
| ⑤ コンテンツ・送信者設定の問題 | 特定の宛先だけ届かない | From設定・スパムスコア |
潰す順番はこの通り。上から順にやる。 ①が壊れてるのに③を直しても意味がないから。
① 送信方法の設定ミス(最初に見るところ)
MailPoet → Settings → 「Send With」タブ。ここが全ての起点。
送信方法は3つある
| 送信方法 | 仕組み | 注意点 |
|---|---|---|
| MailPoet Sending Service | MailPoetのAPI経由で送信 | キーの認証が必要。無料プランあり(500購読者まで) |
| Your web host / web server | サーバーのPHP mail()で送信 | ホストの送信上限に直撃する。共有サーバーだと非推奨 |
| Third-party(SMTP) | 外部SMTPサーバー経由で送信 | 設定項目が多い。ポートブロックに注意 |
MailPoet Sending Serviceを使っている場合
- 「Key Activation」タブでキーを再検証する。キーの入力ミス、プランの期限切れ、未承認(新規プランはレビュー待ちの場合がある)が原因でpaused状態になることがある
- Free planの送信上限に達していないか確認。上限に達すると送信が一時停止する
- バウンスやスパム苦情が多いとアカウント停止になる。MailPoetのAnti-Spam Policyに基づいて一時停止された場合、MailPoet側と連絡を取って解除する必要がある
SMTPを使っている場合
- SMTPのハードエラー(接続エラー)が発生すると、MailPoetは送信を自動停止する。System Statusの「Sending Queue」にエラーが出ていないか確認
- From設定がSMTPのユーザー名と一致しているか。不一致だとSMTPサーバーに拒否される
- SMTPポート(25/465/587)がホスト側でブロックされていないか。共有ホスティングでは587や465がブロックされていることがある。ホストに確認するか、API接続(MailPoet Sending ServiceやSendGrid)に切り替える
ウェブホスト送信を使っている場合
- 正直、これが原因の可能性が一番高い。共有サーバーのPHP mail()は、同居サイトのスパム送信によるIP汚染、送信上限の厳しさ、認証の弱さの三重苦
- テスト送信(MailPoet → Settings → Send Withの「Send a test email」)を試して、そもそも1通が届くか確認
- 届かないなら、MailPoet Sending ServiceかSMTPに切り替えるのが最短ルート
実際、「届かない」のほとんどはこの①送信方法か、次の②ホスト制限で止まっている。ここが通れば残りは微調整の話になる。
② ホスティングの送信制限
送信方法が正しくても、ホスト側の制限で止まることがある。
よくある制限パターン
- 日次・時間あたりの送信上限:共有ホスティングだと1日50〜500通が一般的。MailPoetが上限を超えるとキューが詰まる
- MailPoet以外のメール(コメント通知、WooCommerce注文確認等)も上限にカウントされる。MailPoetだけの送信数で計算してると上限に引っかかる
- ホストが上限超過を「成功」として返す場合がある。MailPoet側では送信済みになっているのに、実際には届いていない——という最悪のパターン
対処法
- MailPoet → Settings → Send With で「送信頻度」をホストの上限以下に設定する
- 根本的に解決するなら、MailPoet Sending Serviceに切り替える(ホスト制限を完全にバイパスできる。API接続のためポートブロックも関係ない)
- それが難しいなら、SendGridやAmazon SES等の外部送信サービスをSMTPで繋ぐ
③ ドメイン認証の不備(SPF/DKIM/DMARC)
送信はされているが、受信側で迷惑メールに分類される場合。
2024年以降の必須要件
Google、Yahoo、Microsoft等の主要メールプロバイダが認証要件を厳格化した。MailPoet Sending Serviceを使う場合も、ドメイン認証は必須。
- SPF:送信元IPを許可するDNSレコード
- DKIM:メールに電子署名を付与するDNSレコード
- DMARC:SPF/DKIMの検証結果に基づくポリシーを定義するDNSレコード
確認方法
- MailPoet → Settings → 「Key Activation」タブで、ドメイン認証のステータスを確認できる
- 「Domain not verified」や「DMARC policy violation」が出ている場合は、DNSレコードの追加が必要
- 具体的な設定方法は → メール到達率の基本(SPF/DKIM/DMARC)
Fromアドレスの罠
- Gmail/Yahoo/OutlookなどのフリーメールアドレスをFromに使うのはNG。自分のドメインのアドレスを使う
- role-based address(info@、admin@、support@等)も避ける。迷惑メール判定されやすい
- FromとReply-toは同じアドレスにする(MailPoet → Settings → Basicsタブ)
④ Cron(タスクスケジューラ)の停止
MailPoetのメール送信はWordPressのCron(バックグラウンドタスク)で処理される。Cronが動いていないと、送信キューが進まない。
症状
- 配信が0%のまま動かない
- 予約配信(Post Notification等)が時間通りに送られない
- Automationが発火しない
確認場所
MailPoet → Help → System Status
- Task Schedulerの項目を見る。「Connection unsuccessful」が出ていたら、Cronが動いていない
- Task Schedulerの下に表示されるURLをクリックして、「pong」と返ってくれば正常。サイトのホームページが表示される場合は接続失敗
よくある原因と対処
| 原因 | 対処 |
|---|---|
| ホストがHTTPループバック接続をブロック | MailPoet → Settings → Advanced → Newsletter Task Schedulerを「Linux Cron」に切り替え、サーバー側でCronジョブを設定 |
| セキュリティプラグインがブロック | WordFence、iThemes Security、Ninja Firewall等がMailPoetのCron URLをブロックしていないか確認。一時的に無効化してテスト |
| wp-cron.php自体が無効化されている | wp-config.phpで DISABLE_WP_CRON が true になっていないか確認。trueの場合はサーバーCronでwp-cron.phpを定期実行する設定が必要 |
| cURLのタイムアウト | ホストに連絡して、cURLのタイムアウト制限の引き上げとPHP/cURLのバージョン更新を依頼 |
⑤ コンテンツ・送信者設定の問題
①〜④が全部正常なのに届かない場合、メールの中身に問題がある可能性。
スパムスコアのチェック
- Mail-Tester にテストメールを送って、スパムスコアを確認する。10点満点で7点以下なら改善が必要
- MailPoetのテスト送信機能(Settings → Send With → Send a test email)で、Mail-Testerに送ればOK
ありがちなコンテンツ問題
- ブラックリスト登録されたドメインやURLを本文に含んでいる。短縮URLサービス(bit.ly等)も要注意
- 画像だけのメール。テキスト比率が低すぎるとスパム判定されやすい
- 件名が煽りすぎ。「【緊急】」「今すぐ」「無料」の乱用はフィルターに引っかかる
特定の宛先だけ届かない場合
- その宛先がバウンス(hard bounce)済みの可能性。MailPoet → Subscribers で該当アドレスのステータスを確認
- 受信側の企業メールサーバーが特定のIPレンジをブロックしている場合は、送信者側では対処が難しい。MailPoet Sending Serviceに切り替えることで改善する場合がある
ここまでやっても安定しないなら、MailPoetの送信基盤自体が環境に合っていない可能性がある。外部ESPへの切り替えを検討した方が早い → MailPoet代替ツール5選
それでも解決しない場合の判断基準
ここまで全部チェックしても解決しない場合、MailPoetの問題ではなく環境の問題か規模の限界の可能性がある。
乗り換えを検討すべきサイン
- 共有ホスティングの送信制限に何度もぶつかる
- 購読者が増えて、MailPoet Sending Serviceの無料枠では足りない
- 自動化(ステップメール、カゴ落ちメール等)をもっとやりたい
- 到達率を根本的に上げたい(専用IPが必要なレベル)
こうなったら、MailPoetに固執するより外部ESPへの移行を検討した方が早い。
→ MailPoet代替ツール5選 → MailPoetから乗り換える手順(全体像)
よくある詰まりポイント(速攻で回避)
- 「送信済み」なのに届かない:ホストが上限超過を成功扱いで返している可能性大。Mail-Testerで実際に受信できるか確認
- テスト送信は届くのに本番が届かない:Cronが動いていないパターン。System Statusを確認
- 急に届かなくなった:MailPoet Sending Serviceのキー期限切れ、ホスト側のIP変更、セキュリティプラグインの更新による誤ブロック——最近変わったものから疑う
- 迷惑メールフォルダに入る:ドメイン認証(SPF/DKIM/DMARC)→ From設定 → スパムスコアの順で確認
- SMTPで送信が一時停止される:ハードエラー(接続拒否)が発生するとMailPoetは自動停止する。エラーログを確認してSMTPプロバイダ側に問い合わせる
まとめ
- 「届かない」の原因は5レイヤー。送信方法 → ホスト制限 → ドメイン認証 → Cron → コンテンツの順に潰す
- 共有ホスティング+PHP mail()の組み合わせが原因の大半。MailPoet Sending Serviceか外部SMTPに切り替えるだけで解決するケースが多い
- ドメイン認証(SPF/DKIM/DMARC)は2024年以降の必須要件。未設定なら最優先で対応
- 全部やっても改善しないなら、MailPoet自体の限界。外部ESPへの移行を検討する
次に読む(おすすめ)
- メール到達率の基本(SPF/DKIM/DMARC)
- MailPoet初期設定|最初に詰まらない手順
- MailPoet代替ツール5選
- MailPoetから乗り換える手順(全体像)
- MailPoetレビュー|実務で使える?メリット・弱点・代替を結論から
- ニュースレター運用テンプレ:週1で回す設計図

コメント