前回のポストでは、総訪問数、平均ページビュー数、トラフィックソースの分布といった基本的なユーザー行動の指標について紹介した。
これらの指標はサイト全体のパフォーマンスを理解するために重要だが、より高度なエンゲージメント分析を行うことで、ユーザーがサイトとどのようにインタラクションしているかについてのより深い洞察が得られる。
この記事では、Google AnalyticsのサンプルデータセットをBigQueryで使用し、エンゲージメントの深さ、コンテンツエンゲージメント、ユーザーフロー、イベントベースのエンゲージメント、購入までの時間を分析する。
- 以下のコードはGitHubに全部載せています。
1. エンゲージメントの深さ
サイトにユーザーがどれだけ深く関わっているかを理解することで、エンゲージメントとコンバージョン率の関係を特定できる。
- エンゲージメントの深さ: セッションあたりのページビュー数とセッション時間、コンバージョン率の関係を調べる。
- インサイト: ページビュー数が多いセッションほど、セッション時間が長く、顧客獲得率が高い傾向にある。これは、より関与度の高いユーザーほど、顧客になる可能性が高いことを示している。
SELECT
CASE
WHEN totals.pageviews = 1 THEN '1 page'
WHEN totals.pageviews BETWEEN 2 AND 5 THEN '2-5 pages'
WHEN totals.pageviews BETWEEN 6 AND 10 THEN '6-10 pages'
ELSE '10+ pages'
END AS pageview_bucket,
COUNT(*) AS sessions,
AVG(totals.timeOnSite) AS avg_session_duration,
ROUND(100 * COUNTIF(totals.transactions > 0) / COUNT(*), 2) AS conversion_rate
FROM
`bigquery-public-data.google_analytics_sample.ga_sessions_*`
WHERE
_TABLE_SUFFIX BETWEEN '20170101' AND '20170331'
GROUP BY
pageview_bucket
ORDER BY
sessions DESC;
説明
- pageview_bucket: セッションごとのページビュー数に基づいてカテゴリ分け。
- sessions: 各ページビューカテゴリにおけるセッション数。
- avg_session_duration: 各カテゴリのセッションの平均持続時間。
- conversion_rate: 各ページビューカテゴリのコンバージョン率を、取引数をセッション数で割り100を掛けて計算。
2. コンテンツエンゲージメント分析
高パフォーマンスと低パフォーマンスのコンテンツを特定することで、サイトの最適化が可能となる。
- 高パフォーマンスコンテンツ: ページビュー数が最も多く、平均滞在時間が長いページを特定する。
- 低パフォーマンスコンテンツ: 離脱率の高いページを検出し、改善が必要な領域を見つける。
SELECT
hits.page.pagePath,
COUNT(*) AS pageviews,
AVG(hits.time) AS avg_time_on_page,
SUM(CAST(hits.isExit AS INT64)) AS exits,
ROUND(100 * SUM(CAST(hits.isExit AS INT64)) / COUNT(*), 2) AS exit_rate
FROM
`bigquery-public-data.google_analytics_sample.ga_sessions_*`,
UNNEST(hits) AS hits
WHERE
_TABLE_SUFFIX BETWEEN '20170101' AND '20170331'
AND hits.type = 'PAGE'
GROUP BY
hits.page.pagePath
ORDER BY
pageviews DESC
LIMIT 20;
説明
- pagePath: ページのURLパス。
- pageviews: 各ページのページビュー数。
- avg_time_on_page: ユーザーが各ページに費やした平均時間を計算。
- exits: 各ページからユーザーが退出した回数(離脱数)。
- exit_rate: ページビュー数に対する離脱率の割合を計算し、100を掛けて離脱率を算出。
この分析を通じて、
- ユーザーがサイト内でどのコンテンツに最も興味を持っているかわかる。
- 離脱率の高いコンテンツを特定し、改善することでユーザーエンゲージメントを高めることができる。
3. ユーザーフロー分析
サイト内のよく使われるユーザーパスを理解することで、ナビゲーションの最適化が可能となる。
- 一般的なユーザーパス: 最も頻繁に使用されるページ順序を特定し、ユーザーのナビゲーション傾向を把握する。
- 最適化の機会: ナビゲーションの改善や関連コンテンツのリンク強化によってユーザーフローを向上させる。
WITH page_sequence AS (
SELECT
fullVisitorId,
visitId,
hits.page.pagePath,
hits.hitNumber,
LEAD(hits.page.pagePath) OVER (PARTITION BY fullVisitorId, visitId ORDER BY hits.hitNumber) AS next_page
FROM
`bigquery-public-data.google_analytics_sample.ga_sessions_*`,
UNNEST(hits) AS hits
WHERE
_TABLE_SUFFIX BETWEEN '20170101' AND '20170331'
AND hits.type = 'PAGE'
)
SELECT
pagePath AS current_page,
next_page,
COUNT(*) AS frequency
FROM
page_sequence
WHERE
next_page IS NOT NULL
GROUP BY
current_page, next_page
ORDER BY
frequency DESC
LIMIT 20;
説明
- page_sequence: 各セッション内で訪問されたページの順序を作成。
- current_page: 現在のページ。
- next_page: 現在のページの後に続くページ。
- frequency: 現在のページから次のページへユーザーが遷移した回数をカウント。
この分析により、ユーザーのナビゲーションパターンを把握し、サイトの使いやすさやコンテンツの関連性を強化するための最適化の機会を見つけることができる。
4. ユーザー行動の詳細分析
サイト上の特定の要素に対して、ユーザーがどのように操作しているかを調べる。
- よく使われる機能:どの機能が最もよく使われているかを調べることで、ユーザーの行動パターンを把握する。
- 改善が必要な機能:あまり使われていない機能を見つけ出し、改善の余地がある領域を特定する。
この分析により、サイトの使いやすさを向上させ、ユーザー体験を改善するための具体的な方策を見出すことができる。
SELECT
hits.eventInfo.eventCategory,
hits.eventInfo.eventAction,
COUNT(*) AS event_count
FROM
`bigquery-public-data.google_analytics_sample.ga_sessions_*`,
UNNEST(hits) AS hits
WHERE
_TABLE_SUFFIX BETWEEN '20170101' AND '20170331'
AND hits.type = 'EVENT'
GROUP BY
hits.eventInfo.eventCategory,
hits.eventInfo.eventAction
ORDER BY
event_count DESC
LIMIT 20;
説明
- eventCategory: イベントのカテゴリー。
- eventAction: イベントのアクション。
- event_count: 各イベントが発生した回数をカウント
5. 購入までの時間分析
ユーザーが購入に至るまでにかかる時間を分析する。
- 購入までの時間: ユーザーが購入に至るまでの時間の分布を把握する。
- 最適化: 購入までのプロセスを短縮し、購入までの時間を減らす戦略を立てる。
WITH purchase_sessions AS (
SELECT
fullVisitorId,
visitId,
MAX(hits.time) / 1000 AS time_to_purchase
FROM
`bigquery-public-data.google_analytics_sample.ga_sessions_*`,
UNNEST(hits) AS hits
WHERE
_TABLE_SUFFIX BETWEEN '20170101' AND '20170331'
AND totals.transactions > 0
GROUP BY
fullVisitorId, visitId
)
SELECT
CASE
WHEN time_to_purchase < 60 THEN '< 1 min'
WHEN time_to_purchase < 300 THEN '1-5 mins'
WHEN time_to_purchase < 900 THEN '5-15 mins'
ELSE '15+ mins'
END AS time_bucket,
COUNT(*) AS purchase_count,
AVG(time_to_purchase) AS avg_time_to_purchase
FROM
purchase_sessions
GROUP BY
time_bucket
ORDER BY
purchase_count DESC;
説明
- purchase_sessions: トランザクションが発生したセッションを特定し、各セッションの購入までの時間を計算。
- time_bucket: 購入に至るまでの時間に基づいてセッションを分類
- purchase_count: 各時間区分における購入回数をカウント
- avg_time_to_purchase: 各時間区分での平均購入時間を計算
この分析を通じて、ユーザーが購入に至るまでにかかる時間を把握し、購入フローの短縮や最適化のための戦略を導き出すことができる。
分析結果
1. エンゲージメントの深さ
エンゲージメントの深さに関する分析では、セッションごとのページビュー数に基づいてセッションを分類し、各カテゴリーのセッション時間とコンバージョン率に関する洞察を行った。
データ分析の結果、エンゲージメントの深さとセッション時間、およびコンバージョン率との間に明確な相関関係があることが明らかになった。より多くのページを閲覧したユーザーは、セッション時間が大幅に長く、コンバージョン率も高い。
特に、10ページ以上を閲覧したセッションでは、平均セッション時間が13分を超え、コンバージョン率が14.19%に達しており、深くエンゲージしたユーザーほどコンバージョンに至りやすいことが示されている。
ページビュー数 | セッション数 | 平均セッション時間 (秒) | コンバージョン率 (%) |
1 ページ | 98,842 | 62.10 | 0.00 |
2-5 ページ | 63,785 | 127.58 | 0.01 |
6-10 ページ | 18,794 | 320.01 | 0.53 |
10+ ページ | 15,396 | 804.08 | 14.19 |
2. コンテンツエンゲージメント分析
この分析は、ページビュー、平均ページ滞在時間、退出率を評価し、パフォーマンスの高いコンテンツと低いコンテンツを特定することを目的とする。
ホームページ(/home)は、最も多くのページビューを記録しているが、退出率も42.32%と高く、多くのユーザーがホームページにアクセスした後、さらなる操作をせずに離脱していることが示されている。
「google+redesign」に関連するページは、ページ滞在時間が長く高いエンゲージメントを示しているが、いくつかのページでは退出率も高く、コンテンツの改善やユーザーフローの最適化が求められる。
例えば、「shop+by+brand/youtube」ページは退出率が43.74%と高く、ユーザーが期待する内容を見つけられていない可能性や、ページの最適化が必要であることを示している。
ページパス | ページビュー数 | 平均ページ滞在時間(秒) | 退出回数 | 退出率(%) |
/home | 201,478 | 78,501 | 85,267 | 42.3 |
/basket.html | 49,173 | 571,742 | 5,860 | 11.9 |
/google+redesign/shop+by+brand/youtube | 39,801 | 92,584 | 17,408 | 43.7 |
/signin.html | 22,229 | 272,627 | 4,232 | 19.0 |
/store.html | 15,669 | 423,165 | 2,079 | 13.3 |
/google+redesign/apparel/men++s/men++s+t+shirts | 15,127 | 182,574 | 4,796 | 31.7 |
/asearch.html | 14,770 | 238,278 | 4,928 | 33.4 |
/google+redesign/apparel/men++s/men++s+outerwear | 13,688 | 183,383 | 3,146 | 23.0 |
/google+redesign/shop+by+brand/google | 12,453 | 221,810 | 3,476 | 27.9 |
/google+redesign/apparel | 10,672 | 247,376 | 2,192 | 20.5 |
/google+redesign/bags/backpacks/home | 10,139 | 252,731 | 1,436 | 14.2 |
/google+redesign/electronics | 8,986 | 260,675 | 2,306 | 25.7 |
/google+redesign/bags | 8,923 | 264,973 | 1,992 | 22.3 |
/google+redesign/accessories | 8,549 | 311,126 | 1,449 | 17.0 |
/google+redesign/accessories/fun | 8,215 | 341,145 | 989 | 12.0 |
/yourinfo.html | 8,176 | 812,068 | 920 | 11.3 |
/google+redesign/drinkware | 7,633 | 248,357 | 2,219 | 29.1 |
/google+redesign/accessories/stickers/home | 7,273 | 283,394 | 1,198 | 16.5 |
/google+redesign/shop+by+brand/youtube/quickview | 6,856 | 205,615 | 892 | 13.0 |
/payment.html | 6,774 | 1,006,741 | 531 | 7.8 |
3. ユーザーフロー分析
ユーザーフロー分析は、サイト上でユーザーがたどる最も一般的なパスを示しており、サイトのナビゲーションやユーザーエクスペリエンスの改善に役立つ。
例えば、多くのユーザーがホームページから再びホームページに戻ったり、「shop+by+brand/youtube」や「shop+by+brand/google」といった商品カテゴリを探索していることがわかる。
「basket.html」から「signin.html」、そして「yourinfo.html」への頻繁な移動は、ユーザーが積極的にチェックアウトプロセスを進めていることを示唆している。
これらの頻繁に利用されるパスを改善することで、ユーザーの移動をスムーズにし、全体的なサイトの使いやすさを向上させることができる。
こうした一般的なパスを理解することで、ユーザーのエンゲージメントを維持し、離脱率を低減するためのターゲットを絞った改善が可能になる。例えば、多くのユーザーがホームページから再びホームページに戻ったり、「shop+by+brand/youtube」や「shop+by+brand/google」といった商品カテゴリを探索していることがわかる。
「basket.html」から「signin.html」、そして「yourinfo.html」への頻繁な移動は、ユーザーが積極的にチェックアウトプロセスを進めていることを示唆している。
これらの頻繁に利用されるパスを改善することで、ユーザーの移動をスムーズにし、全体的なサイトの使いやすさを向上させることができる。
こうした一般的なパスを理解することで、ユーザーのエンゲージメントを維持し、離脱率を低減するためのターゲットを絞った改善が可能になる。
現在のページ | 次のページ | 頻度 |
/home | /home | 45,199 |
/basket.html | /basket.html | 9,407 |
/home | /google+redesign/shop+by+brand/youtube | 7,700 |
/basket.html | /signin.html | 6,648 |
/google+redesign/shop+by+brand/youtube | /home | 6,227 |
/home | /google+redesign/shop+by+brand/google | 6,174 |
/basket.html | /yourinfo.html | 5,322 |
/home | /google+redesign/apparel/men++s/men++s+outerwear | 5,164 |
/signin.html | /signin.html | 4,582 |
/yourinfo.html | /payment.html | 4,440 |
/myaccount.html?mode=vieworder | /myaccount.html?mode=vieworderdetail | 4,018 |
/google+redesign/shop+by+brand/youtube | /google+redesign/shop+by+brand/youtube/quickview | 3,950 |
/signin.html | /registersuccess.html | 3,915 |
/home | /asearch.html | 3,698 |
/registersuccess.html | /store.html | 3,651 |
/basket.html | /store.html | 3,383 |
/payment.html | /revieworder.html | 3,136 |
/asearch.html | /asearch.html | 2,905 |
/google+redesign/bags/backpacks/home | /google+redesign/bags/backpacks//quickview | 2,896 |
/store.html | /basket.html | 2,734 |
4. ユーザー行動の詳細分析
この分析では、ユーザーがサイト上でどのような操作をよく行うかを調べている。
調査の結果、ユーザーが最もよく行う操作は「商品の詳細をすぐに見る」と「商品をカートに入れる」ことだと分かった。これは、ユーザーが商品の情報をチェックし、購入を検討することに強い興味を持っていることを表している。
一方で、「カートから商品を削除する」操作も多く見られた。これは、ユーザーが購入を迷っていることを意味しており、カートに入れた商品を最後まで購入してもらうための工夫が必要だと考えられる。
このようなユーザーの行動パターンを把握することで、サイトの機能やデザインをより使いやすく、ユーザーの希望に沿ったものに改善できる。
カテゴリ | アクション | 数 |
Enhanced Ecommerce | Quickview Click | 70,047 |
Enhanced Ecommerce | Add to Cart | 23,478 |
Enhanced Ecommerce | Product Click | 15,519 |
null | null | 7,155 |
Enhanced Ecommerce | Remove from Cart | 2,968 |
Contact Us | Onsite Click | 1,481 |
Enhanced Ecommerce | Promotion Click | 17 |
5. 購入までの時間分析
この分析では、ユーザーが購入を行うまでにかかる時間を調査した。
購入までの時間分析によると、大多数のユーザーはセッション開始から5〜15分以内に購入を完了し、次いで15分以上かける層が多いことが判明した。
この結果から、多くのユーザーが迅速に購入を決断する一方で、相当数のユーザーがより長い時間を要することが分かる。これは、購入プロセスの効率化やユーザーの意思決定時間の短縮に向けた改善の余地があることを示唆している。
時間区分 | 購入件数 | 平均購入時間(秒) |
5-15 mins | 1,084 | 573.0 |
15+ mins | 963 | 1,795.8 |
1-5 mins | 240 | 223.3 |
< 1 min | 1 | 0.0 |
結論
詳細な利用状況分析を行うことで、買い物客がネットショップをどのように使っているかを全体的に把握できる。
例えば、サイトの滞在時間、どのページをよく見ているか、サイト内での行動パターン、どんな操作をしているか、購入までにかかる時間など、普段あまり注目されない細かい情報を調べることで、新たな気づきが得られる。
こうした情報を活用すれば、買い物客にとって使いやすいサイトづくりや、サイトの性能向上、そして最終的には売上アップにつながる効果的な戦略を立てられる。
これらの発見を実際のサイト改善に活かすことで、多くの人が訪れるだけでなく、長く滞在し、最後まで買い物を済ませてくれる魅力的なネットショップを作ることができる。
インターネットを取り巻く環境は常に変化している。そのため、他社に負けない競争力を保ち、刻々と変わる買い物客のニーズに応え続けるには、絶え間ない分析と改善が欠かせない。