MailPoet→Brevo(旧Sendinblue)移行手順|CSVインポートとリスト設計(ブロックリスト持ち越し+自動化の入口)

MailPoetからBrevoへ。同意・停止状態・自動化を確認

MailPoetは「WordPress内で完結して最短スタート」には強い。

ただ、運用が伸びると「自動化・セグメント・到達率・マルチチャネル」の都合で、外部ESPに逃がしたくなる場面が出る。

Brevo(旧Sendinblue)は、メール配信だけでなくMA(マーケティングオートメーション)・CRM・SMSまで一本化できる設計。だから「移行して終わり」じゃなく、移行した先で自動化まで繋げられるのが選ぶ理由になる。

このページは、MailPoet → Brevo の移行を 状態を確認しながら進める順番 でまとめた手順書。

関連: MailPoetから乗り換える手順(全体像) / MailPoetの代替5サービス|必要機能と移行条件から比較する / メール到達率の基本|SPF・DKIM・DMARCと送信経路の確認


この手順は公開資料を基にした移行チェックリストです。移行を実施した所要時間・成功率の実測ではありません。データ件数、既存フォーム、自動配信、認証の反映待ちによって時間は変わります。送信予約や自動配信を一時停止し、変更前の設定とデータを残してから進めてください。

CSVに出る項目は現在の画面で確認します。購読状態を示す列を出せない場合は、管理画面の状態別件数と照合できる方法で分けて書き出します。日時項目の出力可否は、公式資料のURLによって説明が異なります。日時項目を含むエクスポートの公式説明ではSubscription time・Confirmation time等を選べる一方、下記の旧URLには出力不可の記載が残っています。利用中の版の選択項目と実際のCSVで確かめ、出せない同意日時・取得元・証跡は別途保全してください。複数リストを一緒に出す場合は同一宛先が複数行になることもあるため、CSVの行数だけでなく重複を除いた宛先数でも照合します。MailPoet公式のエクスポート範囲を確認してください。

Brevoへの取り込みでは、同じファイルの全連絡先に選んだブロック対象チャネルが適用されます。メールだけ止める人とSMSだけ止める人を同じファイルに混ぜず、停止するチャネルごとに分けます。完了後のインポートレポートで、新規・既存・無効アドレスの内訳を確認してください。

公式資料(2026年9月28日確認):Brevoのブロックリスト取り込み。

目次

先に結論(迷うならここだけ)

  • 移行は 「データ(CSV)」 と 「入口(フォーム)」 の2つ
  • 解除・バウンス情報を持ち越さずに送ると、誤配信や苦情につながる
  • Brevoは、利用中の自動化エディタと配信チャネルに合った停止状態を確認します。
  • 送信を止めて状態を点検したうえで、基本の確認順:MailPoetエクスポート → CSV整形 → ブロック状態の引き継ぎ → 同意済み購読者のBrevoインポート → フォーム切替 → 差分取り込み

このページのゴール(この手順で確認する範囲)

  • MailPoetから購読者をCSVで出せる
  • Brevoにリスト+属性設計でCSVを入れられる
  • 解除/バウンスはブロックリストに退避できる
  • フォーム切替で登録漏れと解除情報の持ち越しを確認する
  • 移行後に「自動化ワークフロー」を始める入口が見える

0) 先に決めること(ここが雑だと後で詰む)

リスト設計

Brevoはリスト+フォルダで管理する。Mailchimpの「Audience+タグ」とは考え方が違う。

  • リストは最小限から。まずは1リスト(例:newsletter-main)で十分
  • フォルダで分類(例:marketing フォルダの中に newsletter-main)
  • リストを増やすのは「配信頻度やコンテンツが完全に別」のときだけ
  • 同じコンタクトが複数リストにいても、同一キャンペーンで重複送信されない(Brevoがインポート時・配信時に自動で重複除去する)。だからリスト分けを恐れなくていい

属性(コンタクト属性)設計

Brevoはコンタクトに「属性(attribute)」を持たせる。デフォルトで EMAIL / FIRSTNAME / LASTNAME がある。

  • 必要なら移行時にカスタム属性を追加できる(例:SOURCE、SIGNUP_DATE)
  • 同意の取得元など必要な属性は最初から保全し、不要な分析項目は増やしすぎないようにします。

フォーム設置場所

  • 記事末+固定ページくらいに絞る
  • Brevoのフォームか、WordPress側のプラグイン(Brevo公式プラグイン)かを決める

1) MailPoetから購読者をエクスポートする

手順:MailPoet → Subscribers → Export

  • 対象:使ってるリスト(or セグメント)
  • 最低限出す列:email / first_name / last_name(あるなら)
  • できれば出す列:Global status(subscribed / unconfirmed / unsubscribed / bounced)

2) CSV整形:送れる人 / 送らない人を分ける(事故防止)

MailPoetのGlobal statusを使って、CSVを2つに分ける。

MailPoetの状態 扱い Brevo側
subscribed 同意を確認した配信対象 通常インポート(リストに追加)
unsubscribed 配信停止・保留 ブロックリストとしてインポート
bounced 配信停止・保留 ブロックリストとしてインポート
unconfirmed 配信停止・保留(原則) まずは送らない(必要なら再オプトイン設計)
  • 重複(同一メール)はこのタイミングで潰す
  • 文字化け対策:UTF-8 で保存(Brevoは UTF-8 と Windows-1252 に対応)
  • ファイル形式:.csv / .xlsx / .txt のいずれか

3) Brevo用CSVの列(列と状態を照合する)

Brevoのインポートは CSVをアップロード → 属性にマッピング の流れ。

おすすめの列(例):

  • EMAIL(必須)
  • FIRSTNAME(任意)
  • LASTNAME(任意)

ヘッダー行にBrevoの属性名をそのまま使うと、マッピングが自動で走る。

EMAIL,FIRSTNAME,LASTNAME
taro@example.com,太郎,山田
hanako@example.com,花子,鈴木

Mailchimpのように「Tags列」でタグを持ち込む仕組みはない。Brevoではインポート先のリストを選ぶことでグルーピングする。


4) ブロックリストを作る:解除/バウンスを持ち越す(到達率の守り)

停止状態の名前と適用範囲はサービスで異なります。Brevoには ブロックリスト(blocklist) の仕組みがある。

手順

  1. MailPoetで unsubscribed / bounced をまとめたCSVを用意
  2. Brevo → CRM → Contacts → Import contacts で同じようにアップロード
  3. 属性マッピング後、リスト選択を行う
  4. インポート確認画面で、停止する配信チャネルのブロック設定を選ぶ
  5. 画面の確認ボタンで取り込みを確定する

これで対象のコンタクトはメールキャンペーンからブロックリスト扱いになり、配信対象から自動除外される。

完了後はインポートレポートの新規・既存・無効アドレスの件数を元CSVと照合し、Contactsのブロック表示が予定したチャネルに付いていることを確認します。件数の差が残ったら、理由を解消してから配信対象の取り込みへ進みます。

自動化のエディタと、配信チャネルを確認する

Brevoの「Campaigns and automations」とトランザクションメールでは、購読・ブロック状態を確認する場所や対象が異なります。さらに旧Classic editorには、キャンペーン解除者がワークフロー経由のメールを受け取る可能性を説明した個別の公式手順があります。この旧エディタ向け仕様を、現在のすべての自動化へ一律に当てはめません。

利用中のエディタと、各メールがマーケティングかトランザクションかを確認します。旧エディタの対象構成なら、公式が示す除外セグメントとIf/Else条件を適用します。新規移行では、インポートをきっかけに既存のウェルカムメール等が発火しないよう、先に自動化を停止・点検してください。

ブロックリストに含めた自分の確認用アドレスが、通常配信と実際に使う自動化のどちらからも意図せず送られないことを確かめ、必要な設定が整ってから有効化します。すべての取引通知を機械的に停止するという意味でもありません。

公式資料(2026年9月28日確認):Brevoのチャネル別購読状態、旧Classic editorの除外手順、ブロックリストのインポート。

5) Brevoにインポートする(同意を確認した配信対象側)

手順4のブロック状態と件数を確認してから進みます。停止対象と重なる宛先や同意を確認できない宛先は、この配信用CSVへ混ぜません。取り込みが終わるまで、送信予約と既存の自動化は停止したままにします。

  1. CRM → Contacts → Import contacts を開く
  2. 「Upload a file」でCSVをアップロード
  3. プレビューで区切り文字が正しいか確認
  4. 属性マッピング:各列をBrevoの属性に紐づける(EMAILは必須)
  5. リスト選択:インポート先のリストを指定(なければここで新規作成できる)
  6. インポート設定を確認して画面の確認ボタンで取り込みを確定する

注意点:

  • Brevoは重複を自動で除去する。同じメールアドレスが複数リストにいても、配信時に1通しか送られない
  • 「Update existing contacts」を有効にすると、既存コンタクトの属性を上書きできる。移行先に既存データがあるなら上書き範囲を確認する

6) フォームを切り替える(登録・解除の差分を照合する手順)

  1. 切替直前に、もう一度MailPoetから最新CSVを出す(差分対策)
  2. 差分も停止・解除の更新を先に反映し、そのあと同意済みの配信対象を取り込む。重複・既存状態・属性更新の結果を照合する
  3. WordPress上のフォームを差し替える
    • 方法A:Brevo公式WordPressプラグインを使ってフォーム設置
    • 方法B:Brevoのフォームビルダーで作成 → 埋め込みコードをWordPressに貼る
  4. 差し替え後にMailPoetをエクスポートし、同じく停止・解除の差分→配信対象の差分の順で反映する。切替中の登録と解除が両方引き継がれたことを確認する

7) 最初の配信は小さく始める

  • まず少数にテスト(自分が管理する確認用アドレス)
  • 同意を確認でき、移行先で配信対象となった宛先から段階的に送る(いきなり全員に投げない)
  • From固定・認証(SPF/DKIM/DMARC)を先に固める

Brevoはドメイン認証のガイドが管理画面内にあるので、未設定ならこのタイミングで済ませる。


8) 自動化は移行を確認してから、有効化する

ウェルカムメール等を使う場合は、誰がどの操作で参加するかを書き出します。CSVから追加した既存購読者と、新しくフォームから申し込んだ人を同じトリガーへ入れてよいかを確認してください。

自分の確認用アドレスで「登録→参加→送信→解除」を通し、解除済み・ブロック済みの宛先が意図せず再参加しないかを確かめます。必要なトラッキングや連携は選ぶトリガーで変わるため、すべての自動化に一律に追加するのではなく、対象機能の案内に従います。

不要な自動化を移行の完了条件にはしません。リスト・フォーム・停止状態の照合を終え、使う理由のある機能から有効化してください。

配信を再開してよい状態(移行の完了条件)

  • MailPoetとBrevoの送信予約・既存自動化を停止し、再開する配信を決めた。
  • 解除・バウンス等の停止状態を先に引き継ぎ、インポートレポートと元CSVの件数差を説明できる。
  • 同意済みの配信対象を取り込み、停止対象が混ざっていないこと、属性とリストが想定どおりであることを確認した。
  • フォーム切替中に増えた登録・解除の差分を照合した。
  • 自分の確認用アドレスで、登録から解除までを確認した。停止状態にした確認用アドレスが、通常配信と実際に使うマーケティング自動化の対象に入らないことも確認した。

ここまで確認してから、使う配信と自動化を個別に再開します。これは実施すべき確認の一覧で、Opsoryが読者の環境で検証を済ませたという意味ではありません。ブロック取り込みとチャネル別状態の公式資料は2026年10月14日に再確認しました。

よくある詰まりポイント(速攻で回避)

  • リストを増やしすぎて管理できない:最初は1リスト。セグメントで絞る方がBrevoの設計に合ってる
  • 解除済みへ送ってしまう:ブロックリストインポートを先にやる。自動化エディタと配信チャネルの対象範囲にも注意
  • CSVが文字化け:UTF-8で保存。ヘッダー行は英語(EMAIL, FIRSTNAME等)に寄せると楽
  • unconfirmedをどうする?:原則は送らない。再オプトイン設計が必要なら別で段取りを作る
  • Mailchimpのタグ設計を引き継げない:Brevoはリスト+属性設計。タグの代わりにカスタム属性かリスト分離で対応する
  • ブロックリストのコンタクトを消したくなる:消さない方が安全。Brevo公式も「削除すると再インポート時にブロック情報が消えて事故る」と明言している

まとめ

  • 移行ではCSV・フォーム・配信状態を照合する(Mailchimp版と同じ)
  • Brevo固有のポイントは リスト設計(タグではなくリスト+属性) と 配信チャネル・自動化エディタごとの停止状態の確認
  • 解除・バウンスをブロックリストへ持ち越し、誤配信を防ぐ
  • 必要な自動化がある場合だけ、対象と停止状態を確認して有効化する

移行前後の件数と配信状態を照合する

次は確認表の例です。架空の件数で、実際の移行結果ではありません。CSVの行数だけでなく、メールアドレスを重複除去した件数、配信状態、取り込みエラーを照合してください。

確認対象 移行元の例 移行先で確認するもの
配信に同意した購読者 80件 同意の範囲内で配信対象になった件数
解除済み 10件 送信対象へ含まれないこと
バウンス・未確認 5件・5件 送信を停止・保留すること
取り込みエラー・重複 別に集計 成功件数との差を説明できること

合計100件でも、80件全員が配信できるとは限りません。移行先に以前からある解除状態、同意の範囲、エラーを優先します。新規登録と解除は移行中にも発生するため、切り替え時刻を記録し、最後に「登録者」だけでなく「解除・変更」も照合します。

自分の確認用アドレスで登録→確認→受信→解除まで通し、旧フォームと旧自動配信を止めたことも確認します。必要な記録を保全するまでは、移行元を消さず戻せる状態を残してください。

次に読む(おすすめ)

Opsoryの更新情報をメールで受け取る

メール配信の設定・比較・トラブル対処など、Opsoryで公開した記事の更新情報をお届けします。配信はメール内のリンクから解除できます。

スパムはしません!詳細については、プライバシーポリシーをご覧ください。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

コメント

コメントする

目次