Google Analytics の落とし穴

# 背景
Google Analytics (以下：GA）を使っていて、期間が定まっていても、集計された指標や数字が変動したり、データがなくなったりという事象が起こっています。
検証など行いましたが、やはり不明な部分が残っていたので、直接GAのサポートに問い合わせしました。

いただいている回答を社内で展開して、意外と知らない人が多くおり、社外にも展開しようと思っています。
下記のことはGAのサポートからいただいている回答を加味したものです。



# GAの落とし穴
下記のこと、よく出たりします。

1. **レポートの指定期間を伸ばすと**、データが出たり出てなかったりする
2. GAの**指標の個数によって**、メジャーの数字が変わったりする
3. **期間の長さによって**、特定期間のメジャーの数字が変わったりする
4. 新しく実装されたカスタムディメンションをレポートに含めると、**データが出たり出てなかったりする**

それでは、一つずつ解明していきましょう。

## レポートの指定期間を伸ばすと、データが出たり出てなかったりする？
### 事象
例えば、GA Portalにて、あるユーザーの2019/10のデータを出しました。 ⬇︎
![アナリティクス.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104645/248f7290-8e31-f229-205e-ccab6c12f409.png)
ただし、レポートの条件を全く変えず期間だけ伸ばすと(2019/08〜2019/10)、データが出ませんでした。**「このレポートのデータはありません。」**という謎の文言が現れました。 ⬇︎
![アナリティクス.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104645/8c3a6a53-b9d8-4e9c-7198-841b7f3c9add.png)

### 説明
まず、上記二つのレポート、もう一箇所に細かい変更がありました。気付きましたか？
それは、左上の盾の色です。緑色から黄色になりました。

2019/10のデータを出した時⬇︎
![アナリティクス.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104645/1a4ff94d-b0c3-64d5-d651-5c9a83d168f4.png)

2019/08〜2019/10のデータを出した時 (同じ条件) ⬇︎
![アナリティクス.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104645/93546566-0f3e-2c98-1e4a-b9b991d7cc95.png)

気付きにくいところですね！
更に、マウスをその盾の上に移すを、説明が出ます。

2019/10のデータの場合：「このレポートは 100% のセッションに基づいて作成されています」⬇︎
![貼り付けた画像_2019_11_22_17_08.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104645/c83bf063-115e-5d23-66d5-46adf9fc388d.png)

2019/08〜2019/10のデータの場合：「このレポートは 70.53% のセッションに基づいて作成されています」⬇︎
![貼り付けた画像_2019_11_22_17_07.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104645/8d5f6980-a3d6-7220-3291-bc91ce1e9245.png)

また、下のボタンを押すと、「速度優先」と「精度優先」の選択が現れます。⬇︎
![貼り付けた画像_2019_11_22_17_10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104645/e1f04c93-7c64-dde1-6262-155ff0c5abd2.png)

一体どういうことでしょうか。GAに問い合わせした結果、下記の参考ドキュメントを教えていただきました。[リンク：データのサンプリングについて](https://support.google.com/analytics/answer/2637192?hl=ja&utm_id=ad)
要は、選択した期間でセッション数が一定件数を超えると、**データのサンプリング**が発生します。データのサンプリングが発生した時、「速度優先」か「精度優先」か選ぶことができますけれども、いずれにしても**100%の精度に至りません**。
なので、先ほど2019/10のレポートは全てのデータが使われていましたが、2019/08〜2019/10の期間に設定すると、一部のデータしかサンプリングされていなくて、生憎ちょうど何も結果が出てませんでした(精度優先にしても)。
ここの怖いことは、データのサンプリングを知らないと、「データがないよ」、「UU数が少ないよ」、「訪問者がいなかったよ」というような誤った結論になるので、GAを使った時ちゃんと心掛けましょう。








## GAの指標の個数によって、メジャーの数字が変わったりする？

### 事象
Google DataStudioから、GAに接続して表を出すとします。指標の個数が増えると、指標の数字も変わります。

例えば、日別で「timestamp数」の指標を出します。(timestamp数は、`COUNT(timestamp)`にしています)。 更に「user IDの平均長さ」の指標も出します。(user IDの平均長さは、`AVG(LENGTH(ユーザーID))`にしています)。

下記のキャプチャーと録画を参考してみてください。

* 左の表ト：一つの指標を入れています。(timestamp数)
* 右の表：二つの指標を入れています。(timestamp数、user IDの平均長さ)

右の表では、指標「user IDの平均長さ」が追加されています。ただし、指標「timestamp数」の数字が変わりました。左と右の「timestamp数」が異なっています。

![qiitaにてGAの落とし穴の説明用.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104645/b5a4aea0-8d7b-a68d-3690-8df7658a4da5.png)


![qiitaにてGAの落とし穴の説明用_DS.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104645/ce156087-c754-bd02-ab31-93cf6bf18e0a.gif)



### 説明
ここも先ほど述べた問題と同じく、[データのサンプリング](https://support.google.com/analytics/answer/2637192?hl=ja&utm_id=ad)の問題が発生しています。指標が追加されてセッション数が閾値を超えたため、データのサンプリングが発生しています。従って、それぞれの集計の数字も違います。気を付けないと誤解が生じますね。特に、DataStudio側ではGA管理画面の盾のようなマークが付いていないので、いつからサンプリングされるか予想しかねます。










## 期間の長さによって、特定期間のメジャーの数字が変わったりする？

### 事象
GAデータの集計について、集計期間が長ければ長いほど数字も変わってしまいます。例えば、下記の表を出します。

* ディメンション：「日付」
* 指標：「TimeStamp数」、「UserIDの長さの平均」

また、二つ目の表を作ります。(ディメンションと指標が同じ、期間のみ異なります。下記のキャプチャーを参考に)

* 左：`2019/06/07`〜2019/06/14 (７日間)
* 右：`2019/06/07`〜2019/11/25 (約５ヶ月間)

よく見ればわかりますが、**左の数字を右の数字は、同じ期間の部分は完全に違います。**


![qiitaにてGAの落とし穴の説明用_›_期間による問題.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104645/367e478a-6317-fa13-115b-a4d7916071c9.png)

実際の動きを見てみましょう。最初は、左も右も同じ七日間で数字が同じなんですけど、右の方の期間を伸ばすと、同じ期間の数字が一瞬で変わりました。

![qiitaにてGAの落とし穴の説明用_DS_期間.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104645/dd970563-65dd-8a38-4840-d915120611b2.gif)




### 説明
ここも先ほどと同じ問題で、[データのサンプリング](https://support.google.com/analytics/answer/2637192?hl=ja&utm_id=ad)が発生しています。
期間が長くなると、セッション数が増えていて、GA側が自動でデータのサンプリングを稼働させます。
また、Google Data Studioの場合、サンプリングが発生しているか分からないので、本当に気を付けないといけません。






## 新しく実装されたカスタムディメンションをレポートに含めると、データが出たり出てなかったりする？

### 事象

下記のレポートを、`2019/11/06`の分で出しました。

* ディメンションは二つ：「日付」、「TimeStamp」
* 指標は一つ：「平均セッション時間」
* フィルターは何も入っていません。

こんな感じになります。⬇︎
![アナリティクス.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104645/a9abad71-02ed-b5cb-25fc-0c3f1ce8615c.png)

ただし、実装された「contract_type_session」カスタムディメンションをレポートに入れると、`2019/11/06`の分のレポートには、「このレポートのデータはありません。」という表示になっています。
謎ですね。`2019/11/06`のデータがあるのに、なぜ無いという表示でしょうか。⬇︎
![アナリティクス.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104645/19687815-2db1-8029-9a4d-f01ffeeef1f7.png)

実際の動きはこんな感じです。⬇︎
`2019/11/06`レポートにカスタムディメンションを入れると、「このレポートのデータはありません。」となります。
![qiitaにてGAの落とし穴の説明用_新Dimension.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104645/924a2829-9720-2628-16b6-52b80a53c372.gif)




### 説明

実は、これはヌルの問題です。(ヌル=値が無い。何も入っていない。)
GA側の仕様で、ヌルがある場合「表示しない」とのことです。

今回新しく実装したカスタムディメンションは、2019-11-07から値が入り始めたので、その前は全て**ヌル**です。
下記の感じです。⬇︎

| 日付 | Timestamp | 新実装カスタムディメンション | 平均セッション時間 |
|:--:|:--:|:--:|:--:|
| 201911 **06** | 2019/11/06 00:00:11 | **★(ヌル)** | 00:08:05 |
| 201911 **06** | 2019/11/06 00:00:16 | **★(ヌル)** | 00:03:02 |
| 201911 **06** | 2019/11/06 00:00:30 | **★(ヌル)** | 00:10:45 |
| 201911 **06** | …... | …... | …... |
| 20191107 | 2019/11/07 14:14:16 | (値あり) | 02:32:06 |
| 20191107 | 2019/11/07 14:52:41 | (値あり) | 02:39:32 |
| 20191107 | 2019/11/07 15:04:05 | (値あり) | 02:43:38 |
| 20191107 | …... | …... | …... |

ただし、ヌルが入っていると、表示しない仕組みなので、
GAにて上記のデータを出した時、あるカラムにヌルが入っている部分は自動的に**全て非表示**となりますので、
2019/11/06 のみの期間に設定すると、「このレポートのデータはありません。」となります。

つまり、2019/11/06 他のカラムに値が入っていても、一つのカラムにヌルが入っていれば、**表示されません**。



なお、参考として、2019-11-06 新しく実装したカスタムディメンションとは別に、他のディメンションを入れても、データが問題なく表示できます。

![アナリティクス.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104645/b553e8f2-dc28-096b-2f9e-9a4780ee1e42.png)


もう一つの参考ですが、新しく実装したカスタムディメンションは、予想通り 11/07 以後データがあります。⬇︎
![アナリティクス.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104645/8160d6b1-cb5b-b2d1-3194-7878ccfbce34.png)




# まとめ

今回、Google Analytics の落とし穴を説明しました。
まとめて言うと、下記のことにより**データのサンプリング**が発生します。

1. レポートの指定期間：データが出なかったり、または集計の数字が変わったりする
2. レポートに指標の個数：集計の数字が変わったりする

なお、新実装のカスタムディメンションは、未実装の期間を含めると、他のディメンションや指標を入れても**レポートが出せません**。

レポートを出した時、上記のところに気を付けないと違う結論になるので、心掛けましょう！