【アクセス解析】Googleアナリティクス4について調べてみた

# 概要
Googleアナリティクス4は[ヘルプページ](https://support.google.com/analytics#topic=9143232)や[Google Developers](https://developers.google.com/analytics?hl=ja)を見ても
情報があちこちのページに散らばっていたり詳しい説明が載っていなかったり、イマイチわかりにくい感じがします・・

なので、Googleアナリティクス4についてまとめました。

# Googleアナリティクス4とは？
![12.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/122485/904c407a-ebd0-6d83-19d7-911250ae97a9.png)
Googleアナリティクス4とは、2020年10月にリリースされたGoogleアナリティクスの最新バージョンで利用できるようになった「プロパティ」を指します。

以前は、ウェブサイトを計測する「ユニバーサルアナリティクス」とモバイルアプリを計測する「Firebase向けGoogleアナリティクス」の2種類が存在しました。
Googleアナリティクス4ではWebサイトとモバイルアプリの両方を計測することができます。

（以降はGoogleアナリティクス4をGA4、ユニバーサルアナリティクスを旧GAと略します。）

## プロパティとは？
プロパティとは、ウェブサイトに関してGAが収集したデータをレポートとしてまとめる場所を指します。
1件のウェブサイトに対して、旧GAとGA4の2つのプロパティを作成することができます。

![4.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/122485/09111805-bc46-b83e-1fc0-da23cfd80db1.png)

実際にGAのデモアカウントを参照するとGoogle Merchandise StoreというWebサイトに
・GA4のプロパティ（GA4 - Google Merchandise Store）
・旧GAのプロパティ（UA - Google Merchandise Store）
の2つのプロパティが作成されていることがわかります。

## レポートとは？
レポートとは、GAがデータを集計して作成した表や図を指します。
旧GAとGA4では表示できるレポートの種類が異なります。
![28.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/122485/107bbf7e-816e-1cb8-f696-f3a3973349d5.png)
GA4と旧GAの両方のプロパティを作成することで、両方のレポートを参照することが可能です。
旧GAで収集したデータをGA4で扱うことはできないため、しばらくは併用してある程度データが収集できたらGA4に一本化してしまうのが良いかもしれません。

# GA4の特徴
旧GAと比較すると、GA4には主に以下の特徴があります。

- イベントの計測が可能になった
- デバイスを跨ってもユーザを識別して計測が可能になった
- CV率や離脱率などを予測するようになった

## イベントの計測が可能になった
旧GAではセッション単位でデータを収集・計測していました（セッションベースモデル）
GA4ではセッション単位に加えて「クリック」や「スクロール」といったユーザ操作をイベントとして計測することができます。（イベントベースモデル）

これにより、例えば
- リンクが押下された回数（click）
- ページの最下部までスクロールされた回数（scroll）
- サイト内検索された回数（view_search_results）
などが計測可能になりました。

従来ではサイトを訪れたユーザがどのような操作を行ったか計測するにはコードを埋め込む必要がありましたが、GA4ではある程度は自動で収集できるようになりました。

## デバイスを跨ってもユーザを識別して計測が可能になった
GA4では[Googleシグナル](https://support.google.com/analytics/answer/9445345?hl=ja) という仕組みを利用して、デバイス（PC/SP/Tab）やプラットフォーム（Web/App）を跨ってページにアクセスしたユーザを同一ユーザのアクセスとして計測することができます。
旧GAではデバイスが異なると別々のユーザからのアクセスとして計測しているため、GA4ではより正確なアクセス数の取得・分析が可能となりました。

GoogleシグナルはGoogleアカウントにログインしていて、かつ、広告のカスタマイズ（パーソナライズ）に同意していることを前提にユーザに対して割り当てられるセッションデータです。
GoogleアカウントとGoogleシグナルが1:1で関連付けられるため、異なるデバイスでも同一ユーザとして計測を可能としています。

## CV率や離脱率などを予測するようになった
GA4では機械学習によって、データ（位置情報、端末、ブラウザ、参照URL、セッション継続時間、ページ閲覧深度など）を分析して、ユーザが将来とるであろう行動を予測します。
「今後7日間でCVに至る可能性が高い」といったユーザを導き出してくれるので、マーケティング活動における参考値として利用できます。

なお、どのようなアルゴリズムで予測しているかは未公開ですが、精度は徐々に向上していくと予想されます。

# GA4のレポートについて
GA4で表示できるレポートには以下の種類があります。

- [集客](https://support.google.com/analytics/answer/9143382)
- [エンゲージメント](https://support.google.com/analytics/answer/9355853)
- [収益化](https://support.google.com/analytics/answer/9786881)
- [維持率](https://support.google.com/analytics/answer/9355855)
- [ユーザー属性](https://support.google.com/analytics/answer/9355658)
- [テクノロジー](https://support.google.com/analytics/answer/9353571)
- [コンバージョン](https://support.google.com/analytics/answer/9267568)
- [イベント](https://support.google.com/analytics/answer/9322688)

## 集客
![6.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/122485/47938edc-527a-5d93-3650-fb9b2069dafd.png)

集客はウェブサイトを訪れたユーザの流入元がわかります。
流入元には

- organic : 検索エンジン（自然検索）
- (none) : 直接（ブックマーク、履歴、URL直接入力など）
- referral : 参照サイト
- affiliate : アフィリエイト
- cpc : 有料広告
- email : メール

などがあります。

流入が多い参照サイトに広告を載せたり、メールからの集客効果などを分析するのに役立ちます。

## エンゲージメント
![7.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/122485/a8612111-520b-138f-58f9-3329bb13182e.png)

エンゲージメントはウェブサイトを訪れたユーザが行った行動・操作（＝イベント）の内、参照された平均時間や回数がわかります。

トップページなど必然的に参照回数が伸びるページもありますが、どのページがユーザに最も見られているか傾向を把握する場合に便利です。

## 収益化
![9.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/122485/306f2e3e-a12a-847a-c93c-589f05aba13b.png)

収益化はサイトやアプリ内での購入金額や購入者数など収益を上げているかどうかがわかります。
収益化についてのデータを収集するには、[小売りとeコマース](https://support.google.com/analytics/answer/9268036)に定義されたイベントを収集しておく必要があります。

売れ筋商品だったり逆に売れていないけどアクセス数の多い商品などを知るのに便利です。

## 維持率
![10.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/122485/872b34de-3030-1bf4-1d45-73de91800f13.png)

維持率はウェブサイトでのユーザの定着度合いがわかります。
新しいユーザーに対して、リピーターが少ないほど維持率が低いと捉えることができます。

レポートには「コホート」という見慣れぬワードがあります。
[コホート](https://support.google.com/analytics/answer/9355644)とは共通の特性を持つユーザーのグループを指します。
「同じ日にアプリをダウンロードしたユーザー」のグループや「7日以内にウェブサイトを再訪したユーザー」のグループなどの分類があります。
旧GAではレポートの「ユーザー」→「コホート分析」からコホートを見ることができます（詳しくは[こちら](https://support.google.com/analytics/answer/6158745)）

ウェブサイトを訪れたユーザーに対して、GA4が付与しているCookieとClient-IDが無い場合、新しいユーザーとみなされます。
逆にあれば、リピーターとみなされます。

## ユーザー属性
![13.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/122485/ebb1c965-39ab-72f3-44f0-ec6faf03271d.png)

ユーザー属性はユーザーの国、地域、性別、年齢などがわかります。
仕組み上、国や大体の地域はIPアドレスから取得できますが、
「性別や年齢ってどうしてわかるの？」と、疑問に思うかもしれません。

GA4で計測された性別や年齢は、あくまでもGoogleの予測した性別や年齢です。
「GA4の計測対象のウェブサイトを訪問したユーザ」が過去に閲覧した別のウェブサイトの傾向などからGoogle側で独自に判断しています。

ただし、昨今ではプライバシー保護の観点からSafariやEdge(Chromium版)などはユーザがどういったウェブサイトを閲覧しているか勝手に追跡されないように初期設定されています。
そのため、性別や年齢は判断材料となるデータが取れず計測できないケースもあり、信憑性が低いと考えられます。

ユーザー属性はある意味、興味本位で参照する程度にしましょう（アクセス解析や分析としてのデータにはあまり適さない。）

## テクノロジー
![14.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/122485/263b614e-37cc-b559-de7c-7e2839fb9f13.png)

テクノロジーはユーザーが利用しているデバイスやOS、ブラウザの種類がわかります。
計測対象がアプリであればユーザーが利用しているアプリのバージョンも測定が可能です。

例えば、ブラウザの利用割合からサービス上でのIE11のサポート終了を判断したり、
デバイスの利用割合からデザインや機能改修で優先すべきデバイスを判断したりする場合に参考にできます。

## コンバージョン
![15.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/122485/1fdd0e93-6b73-0d37-b4e0-48f8523de2bb.png)

コンバージョンはウェブサイトでの成果がわかります。
マーケティングの分野において、コンバージョン（conversion:CV）とは商品の販売数、資料の請求数、新規の訪問者数、新規の会員登録数、メルマガの登録数、アプリのダウンロード数、問い合わせ数などが挙げられます。

何をもってコンバージョンとするかはウェブサイトの性質によって異なります。

- ECサイト：商品の販売数
- 製品紹介サイト：資料の請求数、問い合わせ数
- コミュニティサイト：会員の新規登録者数、メルマガの登録数

GA4では次の4種類のイベントが自動的にコンバージョンとして扱われ集計されます（すべてアプリ専用）

- first_open：インストールしたアプリを初めて起動した
- in_app_purchase：課金した
- app_store_subscription_convert：無料期間から有料へ切り替わった
- app_store_subscription_renew：有料の定期購入が継続された

その他のイベントをコンバージョンとして計測するには、後述の「イベント」カテゴリから 「コンバージョンとしてマークを付ける」トグルをONにする必要があります。

ちなみに旧GAでは「目標」というビューを使って計測しています。
![17.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/122485/e556b42c-deee-4218-867a-cb1542af646c.png)

## イベント
![18.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/122485/5d5da74e-2047-5b4d-8d10-3136b890431e.png)

イベントはウェブサイトやアプリでのユーザーの行動を指します。
イベントには

- [自動的に収集されるイベント](https://support.google.com/analytics/answer/9234069)
- [推奨イベント](https://support.google.com/analytics/answer/9267735)
- カスタムイベント

の大きく3種類、存在します。

### 自動的に収集されるイベント
GA4を導入しているウェブサイトであれば自動的に収集されるイベントです。

- click : リンクをクリックした
- file_download : pdf,txt,exe などのファイルをDLした
- first_visit : ウェブサイトに初めてアクセスした、またはアプリを初めて起動した
- page_view : ページを読み込んだ
- scroll : ページの最下部まで初めてスクロールした
- session_start : アプリやウェブサイトを利用開始した
- video_start : 動画を再生した

などがあります。

### 推奨イベント
ウェブサイトの業種によって、Googleが設定を推奨しているイベントです。

- add_to_cart : ユーザーがカートに商品を追加した
- login : ユーザーがログインした
- purchase : ユーザーが購入手続きを完了した
- share : ユーザーがコンテンツを共有した

などがあります。
自動的に収集されないので、イベントを収集するには[実装に組み込む](https://developers.google.com/gtagjs/reference/ga4-events)必要があります。
例えば、add_to_cartであれば

```javascript
gtag('event', 'add_to_cart', {
  currency: 'USD',
  items: [{
    item_id: 'SKU_12345',
    item_name: 'jeggings',
    coupon: 'SUMMER_FUN',
    discount: 2.22,
    index: 5,
    item_list_name: 'Related Products',
    item_list_id: 'related_products',
    affiliation: 'Google Store',
    item_brand: 'Gucci',
    item_category: 'pants',
    item_variant: 'black',
    price: 9.99,
    currency: 'USD',
    quantity: 1
  }],
  value: 7.77
});
```

というような感じでインポートしたgtagを呼び出します。

[小売りとeコマース](https://support.google.com/analytics/answer/9268036)で推奨されるイベントがいくつかあるので、ECサイトなら設定しておくとアクセス解析に役立てられるでしょう。

### カスタムイベント
開発者が独自に設定するイベントです。
こちらも自動的に収集されません。


また、ウェブサイトのみ[一部のイベント](https://support.google.com/analytics/answer/9216061)の収集を無効/有効に切り替えることができます。
切り替えるには、サイドメニューの「管理」→「データストリーム」→「ウェブ」を選択、「拡張計測機能」の歯車アイコンから行うことができます。

![19.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/122485/91774c03-2e4f-397f-0c84-b9ce0021fbca.png)
![20.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/122485/cc203525-968f-9cd7-b5bd-822dee7cd14b.png)

ただし、ページビュー数（page_view）のみ、収集を無効にすることはできません。
イベントを分析することでユーザが思惑通りの操作を行っているか、課題が潜んでいるページなどを把握する材料になります。
例えば、離脱クリック（click）が発生しているページを知ることで、最も離脱を招いているページを見つけ、対策を練ることに役立ちます。

# Googleアナリティクス4を利用するには？

ここではGA4で実際にデータを収集する手順を記載します。

## 1.プロパティを作成する
「管理」→「GA4設定アシスタント」→「ようこそ」を押下。
![22.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/122485/68e54fc0-110f-bf18-b94d-f3344d80e79c.png)

モーダルが表示されるので「プロパティを作成」を押下。
![23.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/122485/dc73542b-d6e7-bc1b-f084-8b47b328f12a.png)

これで9桁のプロパティIDが作成されます。

## 2.測定IDをサイトに仕込む
「GA4プロパティを確認」を押下。
![24.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/122485/57449d4c-9619-9ceb-ff63-ca65e19f819b.png)

アシスタントの設定より、「タグの設定」を選択。
![25.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/122485/c5eca35a-2c18-9901-a505-863a7731a702.png)

測定対象となるデータストリームを選択。
![26.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/122485/3f128357-8179-1bd9-10da-65b6447d22f8.png)

タグの設定手順より「新しいページ上のタグを追加する」→「グローバルサイトタグ(gtag.js)～」を選択。
![27.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/122485/6a7119e3-2749-9d7b-60a0-88228b291406.png)

scriptタグが表示されるのでコピーして、計測したいページのhtmlファイルに貼り付けます。
headタグ内に挿入すれば問題ないでしょう。

```html
<!doctype html>
<html lang="ja">

<head>
  <meta charset="utf-8">
  <!-- Global site tag (gtag.js) - Google Analytics -->
  <script async src="https://www.googletagmanager.com/gtag/js?id=G-XXXXXXXXXX"></script>
  <script>
    window.dataLayer = window.dataLayer || [];
    function gtag(){dataLayer.push(arguments);}
    gtag('js', new Date());

    gtag('config', 'G-XXXXXXXXXX');
  </script>
```

これで測定IDの仕込みが完了しました。
GA4がデータ収集するのを正座して待ちましょう。

## 3.反映を確認する
実際にページにアクセスして、「リアルタイム」を押下。
![29.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/122485/94aaa887-3565-af48-cfb1-d0316389a11d.png)
自分のアクセスが反映されていたら成功です。

# まとめ
GA4は従来と比べてさまざまなイベントを数値化してユーザの操作を確認・分析でき、カスタマイズ性も大きく便利になった反面、使いこなすことがより一層難しくなりました。
中には使い方がよくわからないといった方もいると思います。

ただ、アクセス解析の本来の目的は「ウェブサイトの改善ポイントを見つけ」→「ウェブサイトを改善し」→「成果を上げる」ことです。
なので、そもそもすべての機能を使いこなす必要はありません。

まずは運用しているウェブサイトに対して、「特定のページが見られていないのではないか？」「広告を打ったサイトからの流入が少ないのではないか？」といったような仮説を立て、その仮説を裏付けるためにGA4を使ってみてはいかがでしょうか。

# 参考
- [公式サイト](https://marketingplatform.google.com/about/analytics/)
- [アナリティクス ヘルプ](https://support.google.com/analytics#topic=9143232)
- [次世代の Google アナリティクスのご紹介](https://support.google.com/analytics/answer/10089681)
- [Introducing the new Google Analytics](https://blog.google/products/marketingplatform/analytics/new_google_analytics)