メモ > 技術 > サービス: Google > Google Analytics(ユニバーサルアナリティクス)
■Google Analytics(ユニバーサルアナリティクス)
■ユニバーサルアナリティクスの終了
・2023年7月1日に、計測が停止される
・2023年7月1日以降は、新しいデータ収集はできないものの、以前に収集されたデータに少なくとも6か月間はアクセス可能
ユニバーサル アナリティクスのサポートは終了します - アナリティクス ヘルプ
https://support.google.com/analytics/answer/11583528?hl=ja
2023年7月1日にGA(ユニバーサルアナリティクス)が計測終了とのアナウンスと所感 - Real Analytics (リアルアナリティクス)
https://analytics.hatenadiary.com/entry/end-of-ga
Googleアナリティクスが2023年に旧バージョンを廃止すると発表、「GA4」への移行方法はこんな感じ - GIGAZINE
https://gigazine.net/news/20220317-prepare-with-google-analytics-4/
Googleアナリティクス終了のアナウンス…阿鼻叫喚の嵐「あぁ、また学び直しかぁ…」 | Web担当者Forum
https://webtan.impress.co.jp/e/2022/03/22/42509
Google Analytics(UA)が使えなくなるのはどのくらいヤバくて、いつまでに何をしたら良いのかの話。 - フジイユウジ::ドットネット
https://fujii-yuji.net/2022/04/18/153533
■Google Analytics を導入する
※アナリティクスの解析タグをそのまま導入してもいいが、GTMを使うと管理がしやすくなる
詳細は後述の「Google Tag Manager」を参照
Googleアナリティクス導入時の設定方法について|SEOラボ
https://seolaboratory.jp/59695/
Googleアナリティクスで分析するサイトを追加する方法【簡単4ステップ】|アクセス解析ツール「AIアナリスト」ブログ
https://wacul-ai.com/blog/access-analysis/google-analytics-setting/googleanalytics-add-newsite/
【初心者必見!】覚えておくと便利なGoogleアナリティクスの基本機能5選 | 生産性向上のためのお役立ちブログ|株式会社プロフェッサ
https://www.pro-s.co.jp/blog/webmarketing/googleanalytics/1198
エンジニアも知っておくと便利なGoogle Analyticsの設定ポイント | さくらのナレッジ
https://knowledge.sakura.ad.jp/22729/
■解析されないとき
Googleアナリティクス基礎:設定してるのに動かない時の対応
http://www.kagua.biz/help/config/dousakakunin.html
その他、導入直後に「解析期間が7日だと何も表示されないが、1日にすると表示された」ということがある
翌日から、解析期間が7日のままでも表示されたが、前日のデータは正しく表示されなかった
期間にかかわらず、完全に反映されるまで数日かかる可能性があるかも
以下の Tag Assistant をChromeにインストールすれば、アナリティクスを設置できているかどうかを確認できる
Tag Assistant (by Google) - Chrome ウェブストア
https://chrome.google.com/webstore/detail/tag-assistant-by-google/kejbdjndbnbjgmefkgdddjlbokphdefk
ただし、例えば以下の部分を外部jsファイル化していると、ツールが正しく認識できないようなので注意
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
■アカウント・プロパティ・ビュー
アカウント・プロパティ・ビューは、以下のような関係となっている
アカウント ... 企業・会社・事業部・組織単位
プロパティ ... 計測対象サイトのデータの収集単位
ビュー ... レポートとその設定
Googleアナリティクスのビューの作り方・基本設定(前編) | Analytics Times
https://analytics-times.com/google-analytics-view_01
■IP除外
設定 → (設定対象) → ファイル他を追加
から、自身のIPアドレスを設定しておくといい
ただし、リアルタイム解析も含めて反応は無くなるので注意
(4G回線経由などなら動作確認はできる)
GoogleアナリティクスのIP除外設定|自分のアクセスを取得しないために必須 | PINTO! by PLAN-B
https://service.plan-b.co.jp/blog/seo/11504/
■目標の設定
設定 → (対象のアカウント) → (対象のプロパティ) → (対象のビュー) → 目標
「問い合わせ完了画面が表示された」など、特定のページに到達したことを判断基準に目標設定をするといい
詳細は要勉強
■複数のトラッキングコードを埋め込む
Google アナリティクス のタグを複数(2つ以上)設置する方法 | プライマリーテキスト
https://primarytext.jp/blog/1412
2019年5月31日現在、トラッキングコードの取得画面には以下のように表示されている
グローバル サイトタグ(gtag.js)
このプロパティで使用できる Global Site Tag(gtag.js)トラッキング コードです。
このコードをコピーして、トラッキングするすべてのウェブページの <HEAD> 内の最初の要素として貼り付けてください。
ページにすでに Global Site Tag が配置されている場合は、以下のスニペットの config 行のみを既存の Global Site Tag に追加してください。
取得できるコードは以下のようになっているので、「gtag('config', 'UA-12345667-2');」部分を並べれば良さそう
<!-- Global site tag (gtag.js) - Google Analytics -->
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-12345667-2"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'UA-12345667-2');
</script>
https://refirio.org/ 用に UA-47874057-2 を取得し、後から https://refirio.org/wordpress/ 用に UA-47874057-3 を取得し、
以下のように設定するとどちらのアナリティクスにも反映された
「js?id=UA-47874057-2」部分のIDはこのままに、gtagを追加すれば大丈夫みたい
<!-- Global site tag (gtag.js) - Google Analytics -->
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-47874057-2"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'UA-47874057-2');
gtag('config', 'UA-47874057-3');
</script>
まったく違うアカウントで同じサイトを解析したい場合、単純に以下のように解析タグを並べれば両方に反映された
(同一アカウントでこの方法をとると、二重に計測されたりするみたい?要検証)
サイト内の特定のページのみ解析したい場合でも、サイト全体用に解析タグを発行して、特定のページのみに解析タグが埋め込まれるようにすると良さそう
<!-- Global site tag (gtag.js) - Google Analytics -->
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-47874057-2"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'UA-47874057-2');
</script>
<!-- Global site tag (gtag.js) - Google Analytics -->
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-142156179-1"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'UA-142156179-1');
</script>
具体的にはアナリティクスのまったく別々のアカウントで、以下のように設定してトラッキングIDを取得している
アカウント名: refirio.org
ウェブサイトの名前: refirio.org
ウェブサイトの URL: http://refirio.org/
業種: コンピュータ、電化製品
レポートのタイムゾーン: 日本
■イベントトラッキング
イベントトラッキングが反応しないので色々試したときのメモ
以下の形式で記述するとあるので設定したが、反映されなかった
onClick="ga('send', 'event', 'カテゴリ', 'アクション', 'ラベル', 値);"
結論を書くと、以下のように「ラベルと値」だと反映されなくて「ラベルに直接値を設定」だと反映されるようになった
「ラベルと値」が反映されない理由は、「値は数値しか受け付けない」という仕様を見落としていたためだった(イベントの価値を数値で指定するらしい)
よって数値なら値も反映された
ga('send', 'event', 'link', 'click', 'shop', 'M001');
↓
ga('send', 'event', 'link', 'click', 'M001');
イベント測定 | ウェブ向けアナリティクス(analytics.js) | Google Developers
https://developers.google.com/analytics/devguides/collection/analyticsjs/events?hl=ja
Google アナリティクスのイベントを測定する | ウェブ向けユニバーサル アナリティクス(gtag.js)
https://developers.google.com/analytics/devguides/collection/gtagjs/events?hl=ja
analytics.js なのか gtag.js なのかによって、設定すべき形式が変わるようなので注意
また、ページ遷移を伴っていいのならクエリに文字列を指定する方法もある
Googleアナリティクスで「ページ内でどのリンクがクリックされたか」を計測するための主要手法まとめ|パワー・インタラクティブ
https://www.powerweb.co.jp/column/ga-linkclick.html
以下参考
GoogleアナリティクスのイベントトラッキングはonclickよりonMouseDownとonTouchStartで計測 | ウェブマスターがウェブのことを書いたら
https://tuono034s.com/web-entry/1526/
ユニバーサルアナリティクスと従来のGoogleアナリティクスの見分け方 | コスモブレインズ
https://www.webplus-listing.com/blog-webplus/2347/
Google Analyticsイベントトラッキングの設定から確認方法まで | モリアツ.com
https://moriatsu.com/ga-event-tracking
Googleアナリティクス(Google Analytics) イベントトラッキングの設定方法について | デジ研
https://digital-marketing.jp/seo/how-to-setvup-event-tracking/
GoogleAnalytics イベントトラッキングの設定 (ユニバーサルアナリティクス向け) - Qiita
https://qiita.com/miupink/items/6e7ed490b2fb93effb0c
【Googleアナリティクス】10分で出来るイベントトラッキングの設定 | 株式会社バズったー
https://buzztter.co.jp/bazzlog/event-tracking-set-up/
GoogleAnalyticsでのイベント トラッキングを実装する方法と取得できない場合の対処 | MY@web
http://www.myweb.jp.net/post-198/
■カスタムレポート
【保存版】GoogleAnalyticsの見やすいカスタムレポートをまとめてみたよ! - SEOカフェ
http://seo-cafe.hatenadiary.com/entry/google-analytics-reports
上記本文中の
ブログ向けの全体レポートを入手する
https://analytics.google.com/analytics/web/template?uid=OFQ-hZDEQpKY4tga8T7Jfw
をクリック
マイレポートの設定が共有されました。
この設定をインポートするには、Google アナリティクスのアカウントからビューを選択してください。
という画面が表示される
今回は「ビューを選択」から「refirio → refirio.org → すべてのウェブサイトのデータ」を選択して「作成」ボタンをクリック
レポートが表示される
(このときにレポート名を任意のものに変更できるが、後からアナリティクス側で変更することもできる)
次回表示したければ、Googleアナリティクスにアクセスして
カスタム → マイレポート一覧 → ソーシャル&検索&その他
を選択すると表示できる
同様に
ページパフォーマンスレポートを入手する
http://bit.ly/customreport02
時系列レポート(月別)を入手する
https://www.google.com/analytics/web/template?uid=LueMKEQ9TpeGPDA1YXOtzA
時系列レポート(日別)を入手する
http://bit.ly/customreport04
時間別分析レポートを入手する
https://www.google.com/analytics/web/template?uid=YNxOikQOTBqv1vC13Q7sZw
曜日別分析レポートを入手する
https://www.google.com/analytics/web/template?uid=VvTuS7uaQk-280wiz-jUJw
地域別分析レポートを入手する
https://www.google.com/analytics/web/template?uid=4W5d1ZCKR2eLDpnPotnjKA
もインポートしておく
最後にある「企業向けの全体レポートを入手する」は以下にリンクされていて、
定点観測に便利なGoogle Analyticsのおすすめマイレポート設定 | 6666666
https://www.6666666.jp/conversion/20150623/
以下からインポートできる
https://www.google.com/analytics/web/template?uid=yCiKrEAwSXCE-yDO4XqMgQ
■特定のサブドメインのみの解析内容を取得(ビューの作成)
実際に設定した時のメモ
設定 → (対象のアカウント) → (対象のプロパティ)
と選択するとビューの選択が表示されるが、ここで「ビューを作成」をクリックする
遷移した画面で以下を入力
レポートビューの名前: (サイト名など)
レポートのタイムゾーン: 日本
「ビューを作成」をクリック
ビューが作成されたので、さらにフィルタを設定する
フィルタ → フィルタを追加
遷移した画面で以下のように入力
ビューにフィルタを適用する方法を選択: 新しいフィルタを作成
フィルタ名: taskサブドメインのみ(判りやすい名前)
フィルタの種類: 定義済み > 右のみを含む > ホスト名へのトラフィック > 等しい
ホスト名: task.refirio.net(解析したいサブドメインのホスト)
「フィルタの確認」で、必要なアクセスのみ表示されることを確認する
「保存」をクリックして完了
「ビューのアクセス管理」でアカウントを追加すると、特定サブドメインのみ表示できるようになっている
なお、このビューに対してGoogleアカウントを追加して「表示と分析」の権限を付与すると、
特定のサブドメイン内のデータのみ閲覧させることができる
ただしアナリティクスの仕様上、ビューを作成した時点以降のデータしか確認できないので注意が必要
Googleアナリティクスのビューの作り方・基本設定(前編) | Analytics Times
https://analytics-times.com/google-analytics-view_01
ビューの設定を工夫して、Googleアナリティクスの複雑なデータをシンプルに! - faro-biz
https://faro-biz.com/archives/gatips_view01/
サブドメインサイトはどうするべき?Google Analyticsのプロパティ設定方法 | Good Things, Inc. - Web development,web production company
https://good-things.jp/note/google-analytics-subdomain/
ユニバーサルアナリティクスで複数のサブドメインを一括で管理する方法
https://hep.eiz.jp/analytics-cross-domain-tracking/#i-5
特定のビューで過去のデータが見れない原因 | Googleアナリティクス | アナトミーBLOG
https://blog.siteanatomy.com/new-view-does-not-preserve-history-data/
■Search Console 連携
集客 → Search Console → 検索クエリ
「Search Console のデータ共有を設定」ボタンをクリックすると、「プロパティの設定」画面になる
「Search Console」の項目にある「Search Console を調整」をクリック
「追加」をクリックし、追加したいプロパティを選択する
■別アカウントにデータを移行
Analyticsデータを別Gmailアカウントに移行する方法 - HPcode(えいちぴーこーど)
https://haniwaman.com/move-analytics/
大まかに、以下の手順となる
1. 新しいユーザをアカウントに招待する
2. 新しいユーザが所持しているアカウントにプロパティを移行する
3. 新しいユーザをアカウントから削除する(新アカウントのプロパティに移行済みなので、削除しても問題ない)
■その他メモ
成果を出す人がGoogleアナリティクスで使う機能は10個だけ。アクセス解析の実態調査|WACUL TECHNOLOGY & MARKETING LAB | 株式会社WACUL
https://wacul.co.jp/lab/google-analytics-important-10-points/
■Google Analytics(ユニバーサルアナリティクス)
■Google Analytics API を使う(2019年)
サンプル
https://refirio.net/google/analytics/
https://refirio.net/google/analytics/referer.php
https://refirio.net/google/analytics/duration.php
Google Analytics APIをphpで使ってみる - Qiita
https://qiita.com/_hmsk_/items/0dff43424614eeb1e705
【2019年版】Google Analytics API v4 の使い方(PHP) | あぱーブログ
https://blog.apar.jp/web/11573/
はじめてのアナリティクス Reporting API v4: サービス アカウント向け PHP クイックスタート | アナリティクス Reporting API v4 | Google Developers
https://developers.google.com/analytics/devguides/reporting/core/v4/quickstart/service-php
これらを参考に、データを取得できた
ただし最初実行したときは以下のようなエラーになった
# php test.php
PHP Fatal error: Uncaught Google_Service_Exception: {
"error": {
"code": 403,
"message": "Analytics Reporting API has not been used in project 361661326884 before or it is disabled. Enable it by visiting https://console.developers.google.com/apis/api/analyticsreporting.googleapis.com/overview?project=36... then retry. If you enabled this API recently, wait a few minutes for the action to propagate to our systems and retry.",
"errors": [
{
"message": "Analytics Reporting API has not been used in project 361661326884 before or it is disabled. Enable it by visiting https://console.developers.google.com/apis/api/analyticsreporting.googleapis.com/overview?project=36... then retry. If you enabled this API recently, wait a few minutes for the action to propagate to our systems and retry.",
"domain": "usageLimits",
"reason": "accessNotConfigured",
"extendedHelp": "https://console.developers.google.com"
}
],
"status": "PERMISSION_DENIED"
}
}
in /var/www in /var/www/html/google/analytics/vendor/google/apiclient/src/Google/Http/REST.php on line 118
エラーメッセージに従ってURLにアクセスすると「Google Analytics Reporting API」の有効化を促されたので有効にした
そうするとデータを取得できるようになった
データ取得の際に以下は参考になりそう
グーグルアナリティクスの解析データを利用したアクセスランキングを表示する :: ホームページ集客支援ならレスキューワーク株式会社
https://rescuework.nagoya/blog/accessranking
高度な分析に役立つ! GoogleアナリティクスAPIでよく使う軸・指標、セグメントを紹介(第2回) | Web担当者Forum
https://webtan.impress.co.jp/e/2015/12/15/21593
アナリティクスAPIのマトリクスとディメンションの項目を試してみる | cly7796.net
http://cly7796.net/wp/seo/try-out-analytics-api-metrics-and-dimensions/
どのような処理ができるか、以下で検証中
https://refirio.net/google/analytics/
■Google Analytics API を使う(2015年)
初心者でも分かる!なGoogle Analytics APIの使い方
https://syncer.jp/google-analytics-api-tutorial
[PHP]Google Analytics API v3.0 使い方〜データ取得編 - Qiita
https://qiita.com/ichikawa_0829/items/74a6f1e62816cf3bf900
Google APIメモ | refirio.org
http://refirio.org/page/memo/google
spl_autoload_registerで無名関数を使うため、PHP5.3以降でないと動かないみたい
キーをjsonにすると駄目だったけど、素直にp12にすると大丈夫だった
refirio.orgにも置いておく
同じアカウントでrefirio.orgも解析しておく
■クライアント ID の作成(Embed API を使う準備 / 2019年)
はじめてのアナリティクス API: ウェブ アプリケーション向け JavaScript クイックスタート
https://developers.google.com/analytics/devguides/reporting/core/v3/quickstart/web-js?hl=ja
上記ページの「ステップ 1: アナリティクス API を有効にする」の「クライアント ID の作成」を参考に作業
https://console.developers.google.com/
にアクセスして「認証情報」をクリック
「認証情報を作成」をクリック
表示された選択肢から「OAuth クライアント ID」をクリック
「OAuth クライアント ID を作成するには、まず同意画面でサービス名を設定する必要があります。」
と表示されたら「同意画面を設定」をクリック
アプリケーション名: refirio.org
「保存」をクリックすると前の画面へ戻る
以下のように入力する「承認済みの JavaScript 生成元」と「承認済みのリダイレクト URI」はこの時点で正式なURLが判っていればそれを入力する
アプリケーションの種類: ウェブ アプリケーション
名前: アナリティクスAPIテスト
承認済みの JavaScript 生成元: http://localhost:8080
承認済みのリダイレクト URI: http://localhost:8080/oauth2callback
「作成」をクリックすると、以下が表示された
クライアント ID: 361661326884-q2piflpm64cfplcrd79d6ugqj2er27ma.apps.googleusercontent.com
クライアント シークレット: IxoAJ3bJFqg-RQLIzToeXvhU
■Embed API を使う(2019年)
はじめに | アナリティクス Embed API | Google Developers
https://developers.google.com/analytics/devguides/reporting/embed/v1/getting-started?hl=ja
上記ページのコードを貼り付け、「Insert your client ID here」部分を取得した「クライアント ID」に変更した
ブラウザからアクセス https://refirio.net/google/embed/ すると、JavaScriptのコンソールに
details: "Not a valid origin for the client: https://refirio.net has not been whitelisted for client ID 361661326884-q2piflpm64cfplcrd79d6ugqj2er27ma.apps.googleusercontent.com. Please go to https://console.developers.google.com/ and whitelist this origin for your project's client ID."
error: "idpiframe_initialization_failed"
と表示された
エラーメッセージに従って https://console.developers.google.com/ にアクセス
「OAuth同意画面」タブで「承認済みドメイン」に「refirio.net」を登録
承認済みドメイン: refirio.net
さらに「認証情報」タブの「OAuth 2.0 クライアント ID」から、対象のIDに「refirio.net」を登録
今回に関しては「承認済みのリダイレクト URI」は適当なパスで問題なかった
承認済みの JavaScript 生成元: https://refirio.net
承認済みのリダイレクト URI: https://refirio.net/google/embed/oauth2callback
コードを貼り付けたページを表示すると「Access Google Analytics」というボタンが表示されている
クリックすると、サブウインドウで認証画面が表示される
「このアプリは確認されていません
このアプリは、Google による確認が済んでいません。よく知っている信頼できるデベロッパーの場合に限り続行してください。」
と表示される
「詳細」をクリックして「refirio.net(安全ではないページ)に移動」をクリック
refirio.net への権限の付与
Google アナリティクス データの表示
と表示されるので「許可」をクリック
さらに、下の方に「refirio.net を信頼できることを確認」と表示されているので「許可」をクリック
https://refirio.net/google/embed/ にグラフが表示される
ただしグラフの表示を確認するには、対象のGoogleアカウントでログインしておく必要がある
プログラムをサイト内の別ディレクトリに移動させるのは大丈夫と思われるが、
別ドメインのサイトに設置する場合は新規に認証作業が必要になると思われる
コード内の
'metrics': 'ga:sessions',
を以下のように変更すると、セッションではなくページビューが表示される
他グラフの表示方法については要調査
'metrics': 'ga:pageviews',