GmailMessage.starでGmailをマーケティング活用!顧客管理を自動化
GmailMessage.starを使うことで、Gmailのメッセージを効率的にマーケティングに活用し、顧客管理を自動化できます。この記事では、GmailMessage.starの基本的な使い方から、マーケティングにおける応用例、よくある問題とその解決策までを詳しく解説します。
GmailMessage.starとは?
GmailMessage.starは、Google Apps Script (GAS) でGmailのメッセージを操作するためのクラスです。このクラスを使うことで、Gmailのメッセージの内容、送信者、受信者、添付ファイルなどの情報を取得したり、メッセージに対して様々な操作を行ったりすることができます。
GmailMessage.starの主な機能
- メッセージのID、スレッドIDの取得
- 送信者、受信者、CC、BCCのアドレス取得
- 件名、本文の取得
- 添付ファイルの取得
- メッセージの日付、時間情報の取得
- 既読/未読状態の確認
マーケティングにおけるGmailMessage.starの活用
GmailMessage.starは、顧客管理、キャンペーン管理、効果測定など、マーケティングの様々な場面で活用できます。
具体的な活用例
- 顧客からの問い合わせ管理: 顧客からのメールを自動的に特定のGoogleスプレッドシートに記録し、対応状況を管理する。
- キャンペーンの効果測定: キャンペーンメールの開封率やクリック率を自動的に集計し、効果測定レポートを作成する。
- 顧客セグメントの自動化: 特定のキーワードを含むメールを送信した顧客を自動的に特定のグループに分類する。
- パーソナライズされたメールの送信: 顧客の属性情報に基づいて、パーソナライズされたメールを自動的に送信する。
GmailMessage.starを使った実装例
例1: 顧客からの問い合わせ内容をスプレッドシートに記録する
顧客からの問い合わせメールを受信したら、その内容を自動的にGoogleスプレッドシートに記録するスクリプトです。
function recordCustomerInquiry() {
// スプレッドシートのID
const spreadsheetId = "YOUR_SPREADSHEET_ID";
// シート名
const sheetName = "お問い合わせ";
// Gmailの検索クエリ(未読のお問い合わせメール)
const searchQuery = "is:unread from:customer@example.com subject:お問い合わせ";
// 検索結果を取得
const threads = GmailApp.search(searchQuery);
// スレッドを処理
threads.forEach(thread => {
const messages = thread.getMessages();
messages.forEach(message => {
// スプレッドシートに書き込むデータ
const rowData = [
message.getDate(),
message.getFrom(),
message.getSubject(),
message.getPlainBody()
];
// スプレッドシートに書き込む
const ss = SpreadsheetApp.openById(spreadsheetId);
const sheet = ss.getSheetByName(sheetName);
sheet.appendRow(rowData);
// メールを既読にする
message.markRead();
});
});
}
カスタマイズ方法:
YOUR_SPREADSHEET_IDを実際のスプレッドシートIDに置き換えてください。searchQueryを調整して、特定の送信者や件名のメールのみを処理するように変更できます。rowDataに追加する情報をカスタマイズできます (例: 添付ファイルのURL)。
例2: キャンペーンメールの開封率を追跡する
送信したキャンペーンメールの開封率を自動的に追跡するスクリプトです。Google Analyticsと連携することで、より詳細な分析も可能です。
function trackEmailOpenRate() {
// スプレッドシートのID
const spreadsheetId = "YOUR_SPREADSHEET_ID";
// シート名
const sheetName = "開封率追跡";
// キャンペーンメールの件名
const campaignSubject = "【重要】夏のキャンペーンのお知らせ";
// Gmailの検索クエリ
const searchQuery = "subject:'" + campaignSubject + "'";
// 検索結果を取得
const threads = GmailApp.search(searchQuery);
// 開封数をカウント
let openCount = 0;
threads.forEach(thread => {
const messages = thread.getMessages();
messages.forEach(message => {
// 既読かどうかをチェック
if (message.isRead()) {
openCount++;
}
});
});
// スプレッドシートに書き込む
const ss = SpreadsheetApp.openById(spreadsheetId);
const sheet = ss.getSheetByName(sheetName);
sheet.appendRow([new Date(), campaignSubject, openCount, threads.length, (openCount / threads.length * 100) + "%" ]);
}
カスタマイズ方法:
YOUR_SPREADSHEET_IDを実際のスプレッドシートIDに置き換えてください。campaignSubjectを追跡したいキャンペーンメールの件名に置き換えてください。- Google Analyticsと連携して、メール内のリンクのクリック数を追跡することも可能です。
例3: 特定のキーワードを含むメールを送信した顧客をセグメント化する
特定のキーワードを含むメールを送信した顧客を自動的に特定のGoogleグループに追加するスクリプトです。顧客セグメントを自動化することで、より効果的なマーケティングキャンペーンを実施できます。
function segmentCustomersByKeyword() {
// グループのメールアドレス
const groupEmail = "your-group@googlegroups.com";
// 検索キーワード
const keyword = "資料請求";
// Gmailの検索クエリ
const searchQuery = "subject:'" + keyword + "'";
// 検索結果を取得
const threads = GmailApp.search(searchQuery);
// 顧客をグループに追加
threads.forEach(thread => {
const messages = thread.getMessages();
messages.forEach(message => {
const sender = message.getFrom();
// グループに顧客を追加
GroupsApp.getGroupByEmail(groupEmail).addUser(sender);
Logger.log("顧客 " + sender + " をグループ " + groupEmail + " に追加しました。");
});
});
}
カスタマイズ方法:
your-group@googlegroups.comを実際のGoogleグループのメールアドレスに置き換えてください。keywordをセグメント化したいキーワードに置き換えてください。- 複数のキーワードに基づいてセグメント化する場合は、
searchQueryを調整してください。
よくある問題とトラブルシューティング
- スクリプトの実行権限エラー: GASのスクリプトを実行するには、適切な権限が必要です。スクリプトの実行時に権限を求められた場合は、許可してください。
- Gmail APIの有効化: Gmail APIが有効になっていることを確認してください。Google Cloud PlatformでGmail APIを有効にする必要があります。
- 検索クエリが正しくない: 検索クエリが正しくないと、意図したメールを検索できません。Gmailの検索演算子を理解し、正しく使用してください。
- スプレッドシートへの書き込みエラー: スプレッドシートのIDやシート名が正しいことを確認してください。また、スクリプトにスプレッドシートへの書き込み権限があることを確認してください。
カスタマイズ方法と応用例
- 定期的な実行: GASのトリガー機能を使って、スクリプトを定期的に実行することができます。例えば、毎日午前9時に顧客からの問い合わせをスプレッドシートに記録するスクリプトを実行することができます。
- エラー処理の追加: スクリプトにエラー処理を追加することで、予期せぬエラーが発生した場合でも、スクリプトが停止するのを防ぐことができます。
- 外部APIとの連携: GmailMessage.starで取得した情報を、他のAPIと連携して活用することができます。例えば、顧客のメールアドレスをCRMシステムに登録したり、顧客の問い合わせ内容を自然言語処理APIで分析したりすることができます。
まとめ
GmailMessage.starは、Gmailのメッセージをマーケティングに活用するための強力なツールです。この記事で紹介した例を参考に、GmailMessage.starを使いこなして、顧客管理を自動化し、マーケティングの効果を最大化してください。

CodeCampは、現役エンジニアからマンツーマンで学べるオンラインプログラミングスクールです。WebデザインやWebサービス開発、転職支援など、目的に合わせた多様なコースが選べます。
朝7時〜夜23時40分まで、365日レッスンが受けられるため、忙しい方でも自分のペースで学習を進めることが可能です。通過率8%の厳しい選考を通過した質の高い講師陣が、あなたのキャリアチェンジを強力にサポートします。
さらに、未経験者向けのカリキュラムや、学習開始から20日以内の全額返金保証制度もあるため、プログラミング学習に不安を感じている方でも安心して始めることができます。
CodeCampで理想の働き方を実現しよう