はじめに
こんにちは、ソーシャル経済メディア「NewsPicks」の桐畑です。
この記事は NewsPicks アドベントカレンダー 2023 の18日目の記事です。
昨日は呉さんの『iOSのE2Eテストを並列で動かし、リリースサイクルを高速化した話』でした!
今日は、Brazeでメール配信が改善ができた話をお送りできればと思います。
NewsPicksでは、登録いただいているユーザーの皆様に、新着&おすすめ記事や各種お知らせのメールを送付させていただいております。
一昨年ぐらいに、Brazeというカスタマーエンゲージメントサービスを導入しました。導入当初、プッシュ通知やアプリ内ダイアログという機能を中心に使っていましたが、今回、メール送信の機能を使い始めて、PDCAサイクルが改善できた部分ありましたのでお伝えできればと思います。
Brazeについて
BrazeはSaaSで提供されるサービスです。 アプリケーション側にSDKを埋め込む(orAPIを呼び出す)ことで、任意のタイミングとターゲットユーザーに各種通知を送ることができます。
ユーザーの属性情報や行動情報で細かくセグメンテーションしたり、通知結果の分析用のダッシュボードが用意されたりと、 通知の作成から分析まで、AllInOneで実施できるのが特徴です。
NewsPicksでは、
- プッシュ通知
- ダイアログ表示(InAppMessage)
- アプリ内のカード表示(ContentCard)
の一部で利用しています。
以下のプッシュ通知の開発でも活用しています。是非興味があればご一読ください。
NewsPicksのメール配信について
元々、NewsPicksではメールを送信する仕組みが2つありました。
1.自前のメール送信サービス
アプリケーションからAWSのSESサービスを経由してメール配信しています。
用途としてユーザー登録完了メールや購読開始メールなど、アプリケーションの動作に同期的かつシステム通知的なメールに利用しています。用途の都合上、分析前提としたメールの開封をトラッキングする仕組みはありません。
2.外部のメール配信サービス(Brazeではない)を利用
日次で必要な情報をCSV連携しています。
用途としては、日次のメルマガ送付やキャンペーンのメール送付に利用しています。
Brezeを使うことでメール配信が改善できた点
既存の仕組みの課題点
より良いメールをユーザーの皆様に届けるには、PDCAサイクルが必要です。
Plan:どういうメールを届けるか。 Do:メールの作成 -> メールの送付設定 Check:分析(メールの開封率・クリック率) Action:Checkを経て次のPlanに役立てる。
既存の仕組みでは、特にDoとCheckの部分に課題感がありました。
具体的には、
1.自前のメール送信サービス を使う場合
メールの開封率などが取れていないため送付後の定量的な分析が難しい状態でした。結果として、その他のアプリケーション側のログを駆使して、効果測定のメトリクスを考え、エンジニアが都度作業する必要がありました。
2.外部のメール配信サービス(Brazeではない)を使う場合
自前でできない定量的な指標は画面で確認できるのですが、サービスのAPIに難がありフラグ程度しか連携できず、複雑なユーザーセグメンテーションなどを作るのが難しい状態でした。ABテストの機能もないので、ABテストを実施したい場合は連携するフラグを工夫するなど、複雑な作業が必要でした。
Brazeによる課題解消
今回、Brazeのメール配信を使うことで課題点がどのように改善できたか以下記載します。
1. データの連携が容易 / すでに連携済みのデータが再利用できる
すでに、プッシュ通知やアプリ内ダイアログで使っていたこともあり、ユーザーをセグメンテーションする基本的なデータが連携済みでした。
一部追加で連携する必要がありましたが、データの連携方法が
- REST API
- アプリケーションのSDK経由
- CSV
と複数用意されており、柔軟に対応可能でした。 具体的には、普段はデータウェアハウスからREST APIで日次連携しているが、アプリケーション側から同期的に連携したい項目は、SDKを使って連携するなど。
2. ユーザーのセグメンテーションが簡単に細かく設定できる
有料購読しているユーザーで、7日以内にサービス利用履歴があって、動画を視聴しているユーザー といったセグメントが画面で数回ぽちぽちすると設定できます。 braze側のsdkが自動で登録している項目(ユーザーセッションや初回アプリケーション利用など)もあり、概ね想像できるセグメントは設定できます。
3. ABテストが画面から1ステップで設定できる
設定したユーザーのセグメントに対して、メールを送付する / しないの2パターンテストがワンクリックで設定できます。 2パターン以上の、例えばメールのタイトルだけ少し変えてみるといったパターンを加えて、3パターン/4パターンのテストもできます。
4. 分析ダッシュボードで定量分析
設定したコンバージョンのアクション(サービスの利用開始 or 特定のユーザー行動イベントなど)に応じて自動で作ってくれます。 開封率・クリック率・アプリ起動率など必要な情報が定量的に確認できます。
5. 自前データウェアハウスへの分析データ連携
プラットフォーム上、自動で作られるダッシュボードで事足りない場合は、Rawデータを自前のデータウェアハウスに連携して、その他のログを合わせて分析が行なえます。 画面からクレデンシャルの情報などを設定するだけで以下のサービスにエクスポート可能です。
- Amazon S3
- Google Cloud Storage
- Microsoft Azure Blob Storage
おわりに
ここまで読んでいただきありがとうございました。 サービスの特性や方針によって、メールの配信を外部のサービスで行うか、自前で作り込むかは変わってくると思います。
利用してみて、brazeは使いやすく、初期の導入コストも比較的低く対応できました。また、メール配信、プッシュ通知、アプリ内表示(IAM)など、使えば使うほどコスパが高まっていると感じます。
参考になれば幸いです。
告知
NewsPicks ではエンジニアを募集中です!ご興味のある方はこちらまで。
https://hrmos.co/pages/uzabase/jobs/NP_Eng004
ぜひ NewsPicks アドベントカレンダーの他の記事も併せて見てみてください。