Upgrade to Pro — share decks privately, control downloads, hide ads and more …

エンジニア視点で見たGoogle Analytics

monotalk.xyz
December 03, 2018

エンジニア視点で見たGoogle Analytics

エンジニア視点で Google Analytics についてまとめました。
Google Analytics の存在を知っているが、触ったこと、見たことがないエンジニア向けの説明資料です。

monotalk.xyz

December 03, 2018
Tweet

More Decks by monotalk.xyz

Other Decks in Technology

Transcript

  1. 2019/5/20 reveal.js localhost:8000/2019/GoogleAnalyticsSeenFromAnEngineer'sPointOfView/index.html?print-pdf#/ 2/34   話すこと 話すこと 対象読者 Google

    Analytics について短くまとめる Google Analytics の基本機能の説明 Google Analytics Extention FAQ 参考
  2. 2019/5/20 reveal.js localhost:8000/2019/GoogleAnalyticsSeenFromAnEngineer'sPointOfView/index.html?print-pdf#/ 5/34   一般的な視点 一般的な視点 Google が提供する

    Web アクセス解析ツール。 無料枠でできることが多い。 小規模、中規模サイトであれば、無料枠で問題なく使える。 無料であることがユーザー数にも繋がっていて、Web 上の情報が多く、書籍も多数 出版されている。
  3. 2019/5/20 reveal.js localhost:8000/2019/GoogleAnalyticsSeenFromAnEngineer'sPointOfView/index.html?print-pdf#/ 6/34   エンジニア視点 エンジニア視点 をベースとしたログ収集ツール、ログ Viewer。

    HTTP/HTTPSで Google Anallytics サーバーに POST、GET リクエストを送信す ると、Google Analytics に記録される。 サイト上に埋め込む も内部では Measurement Protocol API を実行している。 Measurement Protocol
  4. 2019/5/20 reveal.js localhost:8000/2019/GoogleAnalyticsSeenFromAnEngineer'sPointOfView/index.html?print-pdf#/ 8/34   WEB アクセス解析ツール ではないのか ?

    WEB アクセス解析ツール ではないのか ? ログ収集ツール、ログ Viewer として捉えたほうが理解しやすい。 Mackerel、DataDog、NewRelic 等のサイト監視ツール類 と ほぼ同様の仕組み。 Google Analytics のデータをサイト監視ツールに連携する場合もあり、その逆もあ る。 ログの Viewer は ツールの成り立ちで使い勝手が異なる。Google Analytics の Viewer は Web サイト指標の可視化に特化している。
  5. 2019/5/20 reveal.js localhost:8000/2019/GoogleAnalyticsSeenFromAnEngineer'sPointOfView/index.html?print-pdf#/ 10/34   3 つののテーブル 3 つののテーブル

    3つの巨大なテーブルがある。RDB では SQL でデータにアクセスするが、Google Analytics では API でデータにアクセスする。
  6. 2019/5/20 reveal.js localhost:8000/2019/GoogleAnalyticsSeenFromAnEngineer'sPointOfView/index.html?print-pdf#/ 11/34   3 つのテーブル 3 つのテーブル

    Google Analytics ログデータ の送信により、記録されるデータ。 と呼ばれる単位で 記録され、Google Analytics 上で集計、表示対象となる。 アフィニティカテゴリ プロパティの設定で広告向け機能をオンにすることで取得できる情報。Google Analytics のヒット データと N 対 N 紐付くが、個人の趣味趣向を特定できるデータ となるため、データの結合に制限が発生する。 Google Search Console etc 広告向け機能以外に、Googleのサービスとの情報を連携する機能がある。これらの 情報は Google Analytics のヒット データと N 対 N 紐付き、データの結合ができ る。
  7. 2019/5/20 reveal.js localhost:8000/2019/GoogleAnalyticsSeenFromAnEngineer'sPointOfView/index.html?print-pdf#/ 12/34   ヒットについて ヒットについて ヒットとは Google

    Analytics の データ記録の最小単位。Google Analytics で データを閲覧す る際は、ヒットの持つ指標 が、 ごとに集計され表示される。
  8. 2019/5/20 reveal.js localhost:8000/2019/GoogleAnalyticsSeenFromAnEngineer'sPointOfView/index.html?print-pdf#/ 13/34   ヒットについて ヒットについて 指標とディメンション 集計対象となる項目は、指標

    と呼ばれ、SQL の場合、SUM、AVG 等の集計関数で 集計対象となる項目。 SQL の GROUP BY に指定する項目は、 と呼ばれる。 Google Analytics ではデータを設定する段階で、指標 、 どちらを指定 するか決める必要がある。
  9. 2019/5/20 reveal.js localhost:8000/2019/GoogleAnalyticsSeenFromAnEngineer'sPointOfView/index.html?print-pdf#/ 14/34   ヒットについて ヒットについて ヒットの種類 ヒットの種類が異なると

    Google Analytics 上で閲覧できるカテゴリが変わる。 Pageview は で閲覧できるが、イベントは では閲覧で きない。 ヒットの種類は8つ。
  10. 2019/5/20 reveal.js localhost:8000/2019/GoogleAnalyticsSeenFromAnEngineer'sPointOfView/index.html?print-pdf#/ 15/34   ヒットについて ヒットについて ヒットの種類 1.

    pageview ページビューを記録するために使用する 2. screenview モバイル向けのスクリーンビューを記録するために使用する。 3. event イベントを記録するために使用する。 4. transaction ネットショップなど決済回数を記録する目的で使用する。 5. item 準備はされているがオフィシャルのドキュメントがなく用途不明。おそらく商品 アイテムのこと。
  11. 2019/5/20 reveal.js localhost:8000/2019/GoogleAnalyticsSeenFromAnEngineer'sPointOfView/index.html?print-pdf#/ 16/34   ヒットについて ヒットについて ヒットの種類 6.

    social SNS の共有ボタンでの共有を記録する目的で使用する。 7. exception 例外を記録する目的で使用する。 Webサイト上で発生した JavaScript エラーを記録する。 8. timing サイトの速度に関する指標を記録するために使用する。
  12. 2019/5/20 reveal.js localhost:8000/2019/GoogleAnalyticsSeenFromAnEngineer'sPointOfView/index.html?print-pdf#/ 17/34   ヒット以外の記録データ ヒット以外の記録データ ヒットの付帯情報として、以下の情報が付与できる。付与した情報は、APIで指定して 取得できる。

    コンテンツグループ ページ URL 等を条件に、ページをグループ化できる。 サイト内検索 (Internal Search) 検索クエリが クエリ文字列 として URLに表示していれば、サイト内の検索ボックス での検索結果を Google Analytics に記録することができる。 キャンペーン プロモーションメール等の URL リンクに 等のキャンペーンパラメー タを付与し、流入経路を記録できる。
  13. 2019/5/20 reveal.js localhost:8000/2019/GoogleAnalyticsSeenFromAnEngineer'sPointOfView/index.html?print-pdf#/ 18/34   項目の追加 項目の追加 ユーザが任意で記録する項目を追加できる。 無料版はそれぞれ20が上限。

    カスタムディメンション 有料会員か、無料会員か等、ユーザに関する属性情報 記事のカテゴリ等、コンテンツの属性情報 カスタム指標 見込みスコア システム使用料
  14. 2019/5/20 reveal.js localhost:8000/2019/GoogleAnalyticsSeenFromAnEngineer'sPointOfView/index.html?print-pdf#/ 19/34   項目の追加 項目の追加 ヒット単位でデータを取得するための設定 以下の項目をカスタムディメンションに追加する。アクセスログと同程度の粒度でデ

    ータ取得が可能になる。 Client ID TimeStamp 設定方法は以下の記事が参考になる。 GTMでGoogleアナリティクスのClient IDを取得する一番確実で楽な方法 (2018年版) ‒ 清水誠メモ
  15. 2019/5/20 reveal.js localhost:8000/2019/GoogleAnalyticsSeenFromAnEngineer'sPointOfView/index.html?print-pdf#/ 21/34   データの可視化 データの可視化 Google Analytics

    上で閲覧する。 デフォルトの指標、ディメンションの可視化は Google Analyticsでできる。デフォ ルトのView以外でデータを閲覧したい場合は、カスタムレポートを使う。 指標、ディメンションは意識する必要があり、指標となる項目をディメンションとし て設定する間違いをおかすとうまく扱えない。 Gooogle Analytics AddOn を使って、データを取得し Google スプレッドシー トで可視化する。 でスプレッドシート上にデ ータを取り出せる。指標、デイメンションの制約はないが、データ取得件数に上限が あり、上限を超えるデータ取得をする場合は工夫が必要。 Google Analytics ‒ Google スプレッドシート アドオン
  16. 2019/5/20 reveal.js localhost:8000/2019/GoogleAnalyticsSeenFromAnEngineer'sPointOfView/index.html?print-pdf#/ 22/34   データの可視化 データの可視化 Google Data

    Portal を使う Google Data Portal には Google Analytics の コネクターがあり直接データを取り 出して可視化できる。 指標、ディメンションの制約はあるが、別のデータソースを 1つのダッシュボードに描画できるため、別のデータソースと組み合わせでデータを 閲覧したい場合は便利。 Big Query を使う 有料版の機能。Google Analytics のデータを Big Query にエクスポートできる。 課金を意識する必要があるが、Big Query 上でデータを加工、集計したり、Google Data Portal で可視化ができるようにななる。
  17. 2019/5/20 reveal.js localhost:8000/2019/GoogleAnalyticsSeenFromAnEngineer'sPointOfView/index.html?print-pdf#/ 23/34   データの可視化 データの可視化 API でデータを取得

    Google Analytics には API があるので、API 経由でデータを取得できる。 取得したデータは加工して、RDB に保存できるので、プログラムの作成工数はかか るが、柔軟な可視化に対応ができる。
  18. 2019/5/20 reveal.js localhost:8000/2019/GoogleAnalyticsSeenFromAnEngineer'sPointOfView/index.html?print-pdf#/ 25/34   TASK TASK Google Analytics

    の send コマンドには、Task と呼ばれる 拡張ポイントが準備され ている。 この拡張ポイントに JavaScript の処理を実装することで、処理を追加、処理 自体を書き換えができる。 タスクは gtag.js では使えない。 analytics.js を使う必要がある。 を拡張は事例として幾つかある。 タスク | ウェブ向けアナリティクス(analytics.js) | Google Developers
  19. 2019/5/20 reveal.js localhost:8000/2019/GoogleAnalyticsSeenFromAnEngineer'sPointOfView/index.html?print-pdf#/ 26/34   プラグイン プラグイン analytics.js の機能を拡張できる。

    追加で JavaScript を読み込んで、 で使用宣言をする。 Event トラッキング等を宣言的に行える。Google Tag Manager を使用していない のであれば、導入を検討してもいい。 CSP report を Google Analytics に記録する plugin autotrack/README.ja.md at master ∙ nebosuker/autotrack azu/csp‒report‒to‒google‒analytics: CSP report to Google Analytics.
  20. 2019/5/20 reveal.js localhost:8000/2019/GoogleAnalyticsSeenFromAnEngineer'sPointOfView/index.html?print-pdf#/ 28/34   HTTP サーバのアクセスログと何が違うのか ? HTTP

    サーバのアクセスログと何が違うのか ? Bot のアクセスが除外されている 除外 チェックを ON にしている場合、アクセスログ上 は記録される Bot、クローラのアクセスが除外される。これは人間のアクセスに限定 して取得したいための機能。 Client 側の情報も記録されている ページ滞在時間、直帰率 等、Client 側の情報がないと取得が難しい情報も記録され る。 JavaScript による記録が加わる。 無料版だとサンプリングが行われる Google Analytics のデメリット。Google Analytics の無料版の場合、ある程度ア クセス数が多くなると、情報がサンプリングされ、正確な情報が取得できなくなる。
  21. 2019/5/20 reveal.js localhost:8000/2019/GoogleAnalyticsSeenFromAnEngineer'sPointOfView/index.html?print-pdf#/ 29/34   HTTP サーバのアクセスログと何が違うのか ? HTTP

    サーバのアクセスログと何が違うのか ? データ取得回数に制約がある アクセスログだと、取得するのに制約はないが、無料版の Google Analytics の場 合、API を使用して取得する場合、1日 5万回の制約がある。API の実行の仕方によ っては、達しそうな回数。プログラムでAPI を実行する際は意識する。 記録データを Google 広告との連携に使える 記録したデータを元にユーザーリストを作ると、そのリストを Google 広告のリマー ケティングリスト として使用できます。
  22. 2019/5/20 reveal.js localhost:8000/2019/GoogleAnalyticsSeenFromAnEngineer'sPointOfView/index.html?print-pdf#/ 30/34   MEASUREMENT PROTOCOL の事例はあるか ?

    MEASUREMENT PROTOCOL の事例はあるか ? メールの受診の開封率の測定に使用するケース。 サーバーの指標を Google Analytics に送信するケース Google スプレッドシート の AddOn があり、リストを作成して送付ができる。 htmlメール配信で開封率を測定する方法 | All in One Media is Good. How to use Google Analytics to Monitor Your Servers (or anything else!) | mojocode.com 手軽にMeasurement Protocolを利用するスプレッドシート・アドオン | SEM Technology
  23. 2019/5/20 reveal.js localhost:8000/2019/GoogleAnalyticsSeenFromAnEngineer'sPointOfView/index.html?print-pdf#/ 32/34   リンク集 リンク集 参考にしたWeb上の情報 Googleアナリティクス「コンテンツグループ」の設定方法・使い方を解説!|アクセ

    ス解析ツール「人工知能AIアナリスト」ブログ Googleアナリティクスでサイト内検索のデータを取得する設定 | 株式会社マイティ ーエース‒ MightyAce Inc. キャンペーンパラメータをマスターして流入経路分析の精度を上げる|デジタルマー ケティング専門コンサルティングのパワー・インタラクティブ キャンペーンパラメータをマスターして流入経路分析の精度を上げる|デジタルマー ケティング専門コンサルティングのパワー・インタラクティブ
  24. 2019/5/20 reveal.js localhost:8000/2019/GoogleAnalyticsSeenFromAnEngineer'sPointOfView/index.html?print-pdf#/ 33/34   リンク集 リンク集 【今さら聞けない】Googleアナリティクスとは?導入手順から使い方まで5分で理 解!|アクセス解析ツール「人工知能AIアナリスト」ブログ

    Google Analyticsに基づくスタートアップの危険性 | POSTD エンジニアもGoogle Analyticsを使ってデータに向きあうべき理由 ‒ Bowyer Tech Blog Google Analyticsでアフィニティカテゴリを理解してユーザーの興味関心をチェッ ク | SiTest (サイテスト) ブログ WebパフォーマンスとプロダクトKPIの相関を可視化する話