ユニバーサル アナリティクスのデータをBigQueryにエクスポートする

Greenlap合同会社 代表

楠本 輝也

2024年7月1日より、ユニバーサル アナリティクス(以下、UA)が停止されますね。

先日、「GA4に移行済みだが、UAのデータも継続利用したい」というご相談を受けました。

そこで弊社の対応として、UAのデータをBigQueryにエクスポートすることで、UA停止後もデータを活用できるようにしました。

本記事では、その作業内容を共有します。

UAのデータのエクスポート方法の選択肢

UAのデータを逃す手段として、下記の選択肢が考えられます。

  1. UAの各種レポート画面の右上の「エクスポート」ボタンから、CSVやGoogleスプレッドシートなどのフォーマットでダウンロードする
  2. Reporting APIを使ったプログラムを書いて、任意のデータベースやストレージにデータを出力する
  3. アドオンを使ってGoogleスプレッドシートにデータを出力する
  4. BigQueryにエクスポートする

今回は、お客様がBigQueryを導入するきっかけ作りの側面もあったので、BigQueryにエクスポートすることにしました。

Fivetranを使って、UAとBigQueryを接続する

BigQueryへエクスポートする方法もいくつか選択肢がありますが、今回はFivetranというサービスを利用することにしました。

Fivetranは、UAやGA4、その他あらゆるソースのデータを、BigQueryなどのデータベースにエクスポートできるサービスです。

UAやGA4の他にも、Facebook広告、Google Search Console、Intercom、AppStoreなど、2024年2月現在で500以上のソースからデータをエクスポートできるようです。

なお、Fivetranは料金体系が複雑なので、導入の際はご注意ください。今回は無料枠で収まりそうだったので、それほど悩まずに導入しました。

1. 出力先のBigQueryを登録する

BigQueryはGoogle Cloud Platform(以下、GCP)のサービスです。まだGCPのアカウント登録がお済みでなければ、登録しておきましょう。

Fivetranへの会員登録が済んだら、左メニューの「Destinations」をクリックし、次に画面右上の「Add destination」をクリックします。

Destinationはデータの出力先です。今回であればBigQueryですね。名前を付けて次に進みましょう。

出力先のサービスを選択するページです。BigQueryを選択します。

BigQueryの接続情報を入力する画面です。

「Project ID」の入力欄には、GCPで「プロジェクトID」として表示されているテキストを貼り付けます。

BigQueryへのアクセス権をFivetranに付与する

Project IDの入力欄の下に、「Grant the BigQuery User role in your project to the following Fivetran service account: xxxx@fivetran-production.iam.gserviceaccount.com」と書いてあると思います。

このメールアドレスのような部分をコピーしておきましょう。

次に、GCPを開いて、左メニューで「IAMと管理」→「IAM」を開き、「アクセス権を付与」というボタンをクリックします。

入力欄「新しいプリンシパル」に、先ほどFivetranの画面でコピーした、メールアドレスのようなテキストを貼り付けます。

選択式「ロールを選択」で、「BigQuery ユーザー」を選択して、「保存」ボタンをクリックします。

Fivetranの画面に戻り、一番下の「Save & Test」ボタンをクリックします。

すると、FivetranがBigQueryへの接続テストを開始します。

「All connection tests passed!」と表示されたら、Destination登録完了です。

エラーが表示された場合は、Project IDやIAMの入力内容に誤りがないことを確認しましょう。

2. Connectorを作成する

出力先のBigQueryを登録できたら、Connector作成ページを開きます。左メニューの「Connector」をクリックし、次に画面右上の「Add Connector」をクリックします。

「Google Analytics」を選択して「Set up」ボタンをクリックし、設定に進みましょう。

BigQueryの同期内容を設定するページです。入力が必要な項目について説明します。

Destination schema

BigQueryのデータセットの名前を入力します。

データセットが未作成でも、Fivetranが自動で作成してくれます。

「Authorize with Google」ボタン

クリックすると、おそらく見たことのあるGoogleの認可画面が表示されると思います。

ここで、FivetranがUAにアクセスすることを許可します。対象のUAにアクセスできるGoogleアカウントを選択して、認可フローを進めましょう。

Sync Mode

「Sync All Accounts(UAの全アカウントを同期)」と、「Sync Specific Accounts(指定したアカウントのみの同期)」のどちらかを選択します。

今回は、他に同期したいUAがなく、課金額も抑えたかったので、「Sync Specific Accounts」を選択しました。

Add report

同期するレポートの内容を設定するビューが開きます。

入力欄「Destination table」は、BigQueryに作成するテーブルの名前です。

選択式「Configuration Type」は、レポートの形式です。今回は、細かい設定を自前で組むのではなく、すでにFivetranが用意しているテンプレートを使うということで「Use Pre-build Report」を選択しました。

ここで「Use Custom Report」を選択すると、Google Analyticsでカスタムレポートを作成する時と同様、ディメンションと指標を組み合わせて、レポートの形式を自分で設定することになります。

「Pre-built Report」は、PV数、セッション数、ユニークユーザー数などを出力してくれるテンプレート「AUDIENCE_OVERVIEW」を選択しました。

ここまで入力できたら、画面下部の「Save & Test」をクリックします。

入力忘れがなければ、「All connection tests passed!」と表示され、UAからBigQueryへの同期が開始するはずです。

同期の所要時間は数分から数時間など、データの量によって変わります。

同期が完了したらメールで知らせてくれるので、気長に待ちましょう。

BigQueryにエクスポートされたデータを確認してみる

同期が完了したら、BigQueryの画面を開いてみましょう。GCPの左メニュー「BigQuery」をクリックします。

下の画像のように、画面左側の一覧に、FivetranのConnector作成時に入力したデータセット名やテーブル名が表示されていると思います。そこにデータがエクスポートされています。

該当のデータセット名、テーブル名をクリックし、右側の「プレビュー」タブを選択しましょう。

次のような形式で、テーブルにデータが投入されていることが分かります。(列の一部を省略)

date

pageviews

sessions

users

2024-02-01

100

30

20

2024-02-02

120

40

30

このように、Connectorで「AUDIENCE_OVERVIEW」テンプレートを選択すると、日別のPV数、セッション数、ユーザー数をBigQueryにエクスポートしてくれます。

なお、デフォルトでは6時間ごとに同期が実行される設定になっています。

BigQueryへエクスポートしたデータの使い道

Looker Studioがおすすめです。

最近は、Google Analytics × Looker Studio × BigQueryを組み合わせた分析が多くの会社で採用されています。

以下の画像のように、Looker Studioの設定で先ほどのBigQueryのデータセットとテーブルを選択することで、レポートを作成できます。

まとめ

今回はUAの廃止が迫っていたので、必要に駆られてBigQueryにエクスポートしました。

しかし本来は、GA4やSearch Console、Google広告やFacebook広告など、利用しているサービスのデータは積極的にBigQueryへエクスポートしてみるのが良いと思います。

データをBigQueryに集約することで、GA4などの仕様・制約から解放され、分析の自由度が高まり、よりデータに基づいた意思決定へと変わっていくでしょう。

もしも、UAからのエクスポートや、BigQueryの導入で悩まれているようでしたら、ぜひお気軽にご相談くださいませ。