Yahoo! 広告レポートをGoogleスプレッドシートに自動出力したい…
Yahoo! 広告レポートをダウンロードしてエクセルに貼り付けて集計する工数を削減したい…
お悩みの方も多いでしょう。JavaScriptを用いてYahoo! 広告レポートを自動化することができます。
今回の記事はYahoo! 広告スクリプトを使うことで、Googleスプレッドシートにレポートを出力する方法を解説します。

Yahoo! 広告スクリプトとは

Yahoo! 広告 スクリプトは、Yahoo! 広告の入稿や配信設定変更、レポート作成を自動化できる、JavaScript ベースの自動化支援ツールです。

JavaScript に関する知識がなくても、案件ごとに自由にカスタマイズできるのが大きな特徴と言えます。
Yahoo! 広告 を運用する際によく使うツール「広告管理ツール」「キャンペーン エディター」「Yahoo! 広告 スクリプト」3つあります。それぞれの特徴を以下の表にまとめました。
運用の場面に応じて、柔軟に組み合わせたほうがいいでしょう。

広告管理ツール キャンペーン エディター Yahoo! 広告 スクリプト
メリット ブラウザから利用でき、入金からレポートまでYahoo!広告の運用相談ができる アプリケーションとして起動し、大量入稿データの一括操作を行うことができる スクリプトを登録することで、業務自動化や広告レポートのカスタマイズができる
デメリット ・大量のキャンペーンや広告を入稿する場合は時間がかかる

・詳細のデータが確認する場合は、レポートをダウンロードすることが必要

・ Macでは利用できない

・ 管理画面/レポートでしかできない部分の分析がおろそかになるかもしれない

・ 全くJavaScriptの基礎的な知識がない人にはハードルが高いかもしれない

・ 自由なカスタマイズができず、独自性を出すことが難しい

参考サイト:
Yahoo!広告 API
Yahoo!広告 スクリプト

Google スプレッドシートにレポートを出力する簡単5STEP

早速ですが、本番に入ります。
「事例」を出します:

今月(昨日まで)のYahoo! 検索広告のdailyレポート(広告費、表示回数、クリック数、クリック率、クリック単価、コンバージョン数、コンバージョン率、コンバージョン単価)をGoogleスプレッドシートに自動出力してください。

手順 1)Yahoo!広告アカウントとGoogleアカウントを連携する

➊ 広告管理画面右上「ツール」>「運用支援 → Yahoo!広告スクリプト」をクリックします。

➋ 「外部ツール連携」をクリックしから、「Sign in with Google」ボタンをクリックします。

➌ Googleのログイン画面が表示されますので、ご自身のGoogleアカウントでログインします。
➍「Yahoo!広告スクリプトがGoogle アカウントへの追加アクセスを求めています」と表示されるので「続行」ボタンをクリックします。
➎ Yahoo!広告スクリプト画面に自動で戻ります。
画面内の「ステータス」列にチェックアイコンが表示されていれば、連携完了です。

手順 2)Googleスプレッドシートを準備してスプレッドシートのIDを確認する

レポートを出力したいGoogleスプレッドシートの ID を確認する方法を紹介します。
GoogleスプレッドシートのID は【d/と次の/】の間に挟まれている英数字で、下図の赤色部分です。

手順 3)DeveloperCenterの基本のレポートのサンプルをコピーする

Googleアカウントの認証が完了しましたら、実装していきましょう。

まず、Yahoo!広告 スクリプトの 基本のレポートをアクセスします。
今回は「Yahoo!検索広告のdailyレポート」を出力したいので、【検索広告のキャンペーンレポート(今月、フィルタ指定なし)のサンプル スクリプト】をコピーしてください。

手順 4)サンプルコードのカスタマイズを行う

今月(昨日まで)Yahoo! 検索広告のdailyレポートをGoogleスプレッドシートに自動出力するため、「サンプルコード」を自分の出力したい内容にカスタマイズして修正することが必要です。

上記画像の緑の部分(スプレッドシートID、シート1、レポートタイプ、フィールド、出力期間)などを変更します。
※指定できる値の詳細は必ずリファレンスをご覧ください。
「スプレッドシートID」「シート1」は実際に使うスプレッドシートに合わせて変更します。

⦿ reportType(レポートタイプ)
→ACCOUNT
※よく使われる reportType は以下のとおりです。

reportType 説明
CAMPAIGN キャンペーンレポート
ADGROUP 広告グループレポート
AD 広告レポート
KEYWORDS キーワードレポート
SEARCH_QUERY 検索クエリーレポート
RESPONSIVE_ADS_FOR_SEARCH_ASSET レスポンシブ検索広告アセットレポート

⦿ fields(フィールド)
→‘DAY’,’COST’,’IMPS’,’CLICKS’,’CLICK_RATE’,’AVG_CPC’,’CONVERSIONS’,’CONV_RATE’,’COST_PER_CONV‘
※注意
レポートごとに使える項目が異なります。それぞれのレポートでどの項目が使えるかは各レポート定義をご確認ください。

⦿ reportDateRangeType(出力期間)
→THIS_MONTH_EXCEPT_TODAY
※よく使われるreportDateRangeTypeは以下のとおりです。

項目 内容
TODAY 本日
YESTERDAY 昨日
LAST_MONTH 前月
THIS_MONTH 本日を含む、当月
THIS_MONTH_EXCEPT_TODAY 本日を除く、当月
ALL_TIME 取得可能な全期間
CUSTOM_DATE 指定される期間(集計対象期間)

サンプル スクリプトを下記のように変更しました。

カスタマイズス クリプト
function main() {
const spreadsheetId = ‘スプレッドシートID‘;//…(1)
const sheetName = ‘シート1‘;//…(2)
const ss = SpreadsheetApp.openById(spreadsheetId);
let sh = ss.getSheetByName(sheetName);
sh.clear();
const reportData = AdsUtilities.getSearchReport({
accountId: AdsUtilities.getCurrentAccountId(),// 実行中のアカウントを取得します
reportType: ‘ACCOUNT‘, //…(3)
fields: [
DAY’,’COST’,’IMPS’,’CLICKS’,’CLICK_RATE’,’AVG_CPC’,’CONVERSIONS’,’CONV_RATE’,’COST_PER_CONV‘//…(4)
],
reportDateRangeType: ‘THIS_MONTH_EXCEPT_TODAY‘,//…(5)

参考:Yahoo!広告 スクリプト | Developer Center ご利用ガイド

手順 5)カスタマイズス クリプトをYahoo!広告 スクリプトの管理画面に貼り付けて設定する

➊ Yahoo!広告 スクリプトの管理画面の「新規作成」をクリックします。

➋「スクリプト名」と修正した「スクリプト」を記入した上で、「保存」ボタンをクリックします。

➌ 保存してから、「認証」をクリックして認証を行います。
次は「承認」ボタンを押すと、スクリプトが保存されます。
最後に「実行」ボタンを押すと、40秒ほどでレポートがGoogleスプレッドシートに反映されるはずです。

★ 補足1:管理画面の「実行履歴」をクリックすると、設定したスクリプトのステータスを把握することができます。
ステータスが「成功」になったら、連携のスプレッドシートにレポートが正しく出力されたかどうかを確認しましょう。
「エラー」の場合、エラーの詳細を確認することができますので、そのメッセージに沿って修正してください。

★ 補足2:「レポート実行頻度」や「コスト超過通知」などの機能の設定も可能です。
ぜひ下記のページまでご参照ください。
⦿ Yahoo!広告 スクリプトの実行頻度の設定
⦿ Yahoo!広告 スクリプト コスト超過通知
⦿ Yahoo!広告 スクリプト レポートのフィルター・並べ替え

最後に:Google スプレッドシートとLooker Studioとの連携をぜひお試しください

Yahoo!広告 スクリプトは様々な作業を自動化してくれる非常に便利なツールです。

出力したスプレッドシートをLooker Studioと連携させると、
Yahoo!広告レポートを可視化したり、他媒体のレポートと比較したりすることができます。
Looker Studioとの連携も、ぜひお試しください!

メルマガ登録