データ出力はBig Queryに比べて限られるものの、スプレッドシートへ出力するのは無料で整理すれば非常に便利です。
その連携先のLooker Studioも無料で、図表を作成して見やすくするのに便利ではあるものの、これもまたカスタマイズ性には限界があります。
そこで、今回はスプレッドシート→Tableau Cloudへ連携して、合体かつ自動化された状態で毎日更新される結果を見れる方法を考えました。
一旦完成させて異常が起きなければ、データの集計時間はほぼ0(正確に言うと最低1年に1回はバックアップを取る)で済みます。

Google/Yahooなど異なる媒体のデータ結合
そもそも「GoogleとYahooのデータを結合するなんてどのようにするのか」という疑問が出てきます。エクセルであれば、1行目の指標名を変えて統一して列がずれないように調整しないといけません。
結論から言うと、Tableauの「ユニオン結合」を使ってデータソース側で一度調整すれば合体できます。
片方だけでは「NULL」になるところが、コードによってGoogle側の項目がない場合にもう片方のYahooの項目を拾うように指定すれば良いのです。
例えば、「デバイス別の表示回数」でGoogleとYahooを合体したイメージは下記のとおりです。

これをディメンション、メジャーでそれぞれ突合した指標を作成すれば、容量が増える問題だけで基本的には対応できます。
しかも、一度設定すれば、その後はいつでも合体したデータからをすぐに合計や一部の結果を算出できます。
ただ作業時の難点としては、媒体が増えるごとにコードの設定が複雑になります。
きちんと中身を理解していないとその後の変更やエラー時の対応ができないという点です。
また、スプレッドシートにはセル数の上限(20万個かその手前でフリーズ)があるので、データ量があまり膨大になる場合は素直にBig Queryや有料の保存システムを使うのが良いでしょう。
この方法は、広告がGoogle、Yahooの2つだけ(Meta広告も加えて3つでもまだOK)で配信範囲も広くないサイトや、簡易的にデータを見たい場合にお勧めです。
スプレッドシートの準備
Google広告、Yahoo広告を出力するためのスプレッドシートを用意します。2つ以上に分けず、1つのシート内にタブを複数用意します。
レポートの種類は「広告グループ(ADG)」「キーワード(KW)」など必要なものを用意して、区別できるように名前を付けましょう。

広告運用画面でのスクリプト出力設定
Google広告、Yahoo広告でそれぞれスクリプトの出力設定を行います。この方法は過去に別の記事に載せていますので、そちらで確認できます。
・Google広告のスクリプト出力設定
・Yahoo!広告スクリプト出力設定

Tableauデスクトップでの編集操作
Tableauデスクトップで、上記のデータソースを「ユニオン結合」という機能で、1箇所にまとめます。
Tableauクラウドでの可視化
Google、Yahoo広告側でスクリプトによって、毎朝に最新データを更新するように設定しているので、自動的に昨日までの結果が見れるようになります。
月別と日別の違い
日別に細分化すると、データ量が多くなってあっと言う間にスプレッドシートの上限セル数を超えてしまいます。もしくは、スクリプト側で出力上限に達してエラーが出るようになります。

その場合は、「週別」「月別」に変えてデータ量を減らすことで解消されるでしょう。

バックアップの保存について
Yahooディスプレイなど、データによっては「今月」「先月」など1年で期間指定ができない場合もあります。その場合はバックアップ用のスプレッドシートも用意して、出力された内容を月ごとにダウンロードして保存するようにしています。
こうすることで、いつか過去にさかのぼってデータを確認する場合でもすぐに取り出すことができます。

まとめ
このようにして、Google広告、Yahoo広告のデータをほぼ自動化して、昨日までの最新結果を可視化することができるようになりました。今までもできていたことではありますが、コストとデータ量と使いやすさのバランスを見て自社にあった仕組みで運用していくことが大事なポイントです。
特に規模があまり大きくないサイトや、立上直後で自動化したい事業にお勧めです。


