記事のPVは増えている。しかし、本当に読まれているのか、次の記事まで回遊しているのか分からない。この状態では、流入が増えても「記事のどこを直せばよいか」まで判断できません。
GA4では平均エンゲージメント時間や90%スクロールを確認できますが、記事改善にはそれだけでは不十分です。25%・50%・75%の到達状況、記事本文の終端到達、内部リンククリックを組み合わせることで、読者がどこまで進み、どこで次の行動を起こしたかを把握しやすくなります。
重要なのは、スクロール率を高くすること自体ではありません。この記事では、GA4とGoogleタグマネージャー(GTM)を使って記事エンゲージメントを計測し、改善対象まで判断できる状態を作る方法を解説します。
記事エンゲージメントはPVだけでは判断できない
PVは「記事が表示された回数」を確認するには有効ですが、その記事が読者の疑問を解消したか、読み進められたか、次の記事へつながったかまでは分かりません。
記事の行動指標をオウンドメディア全体のKPIへ接続する考え方は、オウンドメディアの効果測定・改善の全体像で確認できます。
記事改善では、少なくとも次の4段階を分けて考える必要があります。
| 段階 | 確認したいこと | 主な指標 |
|---|---|---|
| 流入 | 記事が見られたか | 表示回数、ユーザー数 |
| 閲読 | 読み進められたか | 25%・50%・75%到達 |
| 到達 | 本文の終わりまで来たか | 記事末端到達率 |
| 回遊 | 次の情報へ進んだか | 内部リンククリック率 |

記事成果はPVだけでなく、読み進められたか、本文末端へ到達したか、次の記事へ進んだかまで段階的に確認します。
たとえば、PVが多くても25%地点まで到達する読者が少なければ、タイトルと本文のズレや冒頭部分に問題がある可能性があります。
逆に、記事末端到達率が低くても途中の内部リンクが多くクリックされているなら、読者は必要な情報を得て次の記事へ移動している可能性があります。
「最後まで読ませること」ではなく、「読者が必要な情報を得て、適切な次の行動へ進めたか」を見ることが重要です。
まずGA4で標準取得できる3つの指標を確認する
GA4には記事分析に利用できる指標が最初から用意されています。カスタム計測を追加する前に、標準データで何が分かるかを整理しておきましょう。
平均エンゲージメント時間
GA4のユーザーエンゲージメント時間は、Webページがブラウザ上でフォーカスされている時間を基準に計測されます。別タブへ移動した時間を単純に滞在時間として加算する考え方ではありません。
そのため、記事比較では単純な「ページを開いていた時間」より、実際にページへ注意が向いていた時間を確認する材料になります。
ただし、平均エンゲージメント時間が長いからといって、記事を理解したことまでは証明できません。
エンゲージメント率
GA4では、次のいずれかに該当するセッションを「エンゲージメントのあったセッション」として扱います。
- 10秒を超えて継続した
- キーイベントが発生した
- 2ページ以上のページまたはスクリーンを表示した
エンゲージメント率は、この条件を満たしたセッションの割合です。
サイト全体の大まかな関与度を見るには便利ですが、10秒経過しただけでも条件を満たすため、「記事をどこまで読んだか」の判断には別の指標が必要です。
標準のscrollイベント
GA4の拡張計測機能では、ページの縦方向90%地点が初めて表示されたときにscrollイベントが送信されます。25%、50%、75%といった途中地点は標準では取得されません。
したがって、
「冒頭で離脱しているのか」
「中盤まで読まれているのか」
「終盤直前で落ちているのか」
を比較したい場合は、GTMによる追加計測が必要です。
記事分析では5つのイベントを計測する
オウンドメディアの記事改善では、イベントを増やし過ぎるより、判断に使うイベントを絞った方が運用しやすくなります。
推奨する基本設計は次の通りです。
| イベント | 取得する内容 | 主な用途 |
|---|---|---|
| page_view | 記事表示 | 分母 |
| scroll_depth | 25・50・75・90%到達 | 離脱区間の把握 |
| article_end_view | 記事本文末端の表示 | 本文到達の確認 |
| internal_link_click | 記事内の内部リンククリック | 回遊評価 |
| user_engagement | ページへの実質的な接触時間 | 読み方の補足 |

記事の表示、スクロール深度、接触時間、本文末端到達、内部リンククリックを分けて計測すると、読者行動を段階的に確認できます。
ポイントは、article_end_viewを「読了そのもの」と断定しないことです。
スクロールやページ末端への到達は、「その位置まで画面を進めた」ことを示します。一気にスクロールした可能性もあるため、実際に全文を読んだこととは区別します。
Webページの滞在時間とスクロールを分析した研究でも、ページ下部まで移動したことが全文を読んだことを必ずしも意味しない点が指摘されています。
そのため、本記事では「読了率」ではなく、より観測事実に近い記事末端到達率として扱います。
GTMで25%・50%・75%・90%スクロールを実装する
Googleタグマネージャーには「スクロール距離」トリガーがあり、ページ内の指定地点まで進んだタイミングでイベントを発生させられます。
STEP1:スクロール関連変数を有効にする
GTMの「変数」から、少なくとも次を有効にします。
- Scroll Depth Threshold
- Scroll Depth Units
- Scroll Direction
- Page Path
Scroll Depth Thresholdには、トリガーが成立した25、50、75などの値が入ります。
STEP2:スクロール距離トリガーを作る
縦方向スクロール距離を選択し、割合として次を設定します。
25, 50, 75, 90
記事だけに限定する場合は、Page Pathなどを条件にして記事URLだけで発火させます。
GTMでは、ページ読み込み時点ですでに指定地点が画面内へ入っている短いページでは、実際にスクロールしていなくてもトリガーが成立する場合があります。短文記事と長文記事を単純比較しない点にも注意が必要です。
STEP3:GA4イベントを送信する
イベント名をたとえばscroll_depthとし、イベントパラメータとして次を送ります。
| パラメータ | 値の例 |
|---|---|
| percent_scrolled | 25 / 50 / 75 / 90 |
| page_path | /media/example/ |
| content_type | article |
GA4でpercent_scrolledなど独自パラメータを探索レポートに利用する場合は、イベントスコープのカスタムディメンションとして登録します。
標準のscrollと独自のscroll_depthを併用する場合は、90%の数字を同じ指標として合算しないよう注意してください。
記事末端到達は「要素の表示」で計測する
ページ全体の90%到達より、記事本文そのものの終端を計測した方が、オウンドメディアでは使いやすい場合があります。
記事本文の下に関連記事、監修者情報、フッターなどが長く続くサイトでは、ページ90%地点と「記事を最後まで見た地点」が一致しないためです。
GTMの「要素の表示」トリガーでは、指定したHTML要素がブラウザ画面内へ表示されたタイミングを取得できます。また、最低表示時間を設定することもできます。
たとえば記事本文末尾に識別可能な要素を設定し、
- イベント名:
article_end_view - 発火:1ページにつき1回
- 対象:記事末端の要素
- 最低表示時間:1秒など、自社で統一した条件
とします。
これにより、
記事末端到達率 = article_end_viewを発生させた記事閲覧セッション ÷ 記事閲覧セッション
という考え方で記事を比較できます。
ただし、これも「全文を精読した割合」ではありません。スクロール深度と平均エンゲージメント時間を併せて判断します。
内部リンククリックを計測して「次の行動」を見る
GA4の拡張計測で自動取得されるclickイベントは、基本的に現在のドメインから外部ドメインへ移動するアウトバウンドリンクが対象です。自社サイト内の内部リンクを詳細に比較するには、独自イベントを用意します。
GTMでは「クリック-リンクのみ」トリガーを使い、Click URLなどを条件としてイベントを発生させられます。
推奨イベント名はinternal_link_clickです。
さらに、次のパラメータを送ると改善判断がしやすくなります。
| パラメータ | 取得例 |
|---|---|
| link_url | クリック先URL |
| link_text | アンカーテキスト |
| source_page | クリック元記事 |
| link_position | body / related / cta |
| destination_type | guide / case / service |
特にlink_positionを付けると、
「本文中の関連記事がクリックされたのか」
「記事末尾の関連記事がクリックされたのか」
「サービスページへの導線がクリックされたのか」
を分けて分析できます。
単純なクリック回数では、1人が複数リンクを押した場合に数字が増えます。記事比較では、内部リンクを1回以上クリックしたセッションの割合も確認すると、回遊につながった記事を比較しやすくなります。
記事はスクロール率・時間・内部リンクを組み合わせて評価する
記事改善で避けたいのは、「スクロール率が低い=悪い記事」と即断することです。
検索ユーザーの目的は記事を最後まで読むことではなく、知りたい答えを得ることだからです。
たとえば、記事途中で目的の答えを見つけ、その直後の内部リンクから詳しい記事へ移動したなら、90%までスクロールしていなくても記事は役割を果たしています。
次の4分類で見ると判断しやすくなります。
| スクロール・末端到達 | 内部リンククリック | 判断 |
|---|---|---|
| 高い | 高い | 内容と回遊の両方が機能している可能性 |
| 高い | 低い | 読まれているが次の行動導線が弱い可能性 |
| 低い | 高い | 途中で答えを得て次へ進んでいる可能性 |
| 低い | 低い | 内容・冒頭・検索意図の再確認を優先 |

スクロールが浅くても内部リンクへ進んでいれば、記事が役割を果たしている可能性があります。単一指標ではなく複数の行動を組み合わせて評価します。
ここへ平均エンゲージメント時間を加えます。
「スクロールが深いのに時間が極端に短い」なら、流し読みの可能性があります。
反対に、「スクロールは50%程度だが時間が長く、内部リンクもクリックされている」場合は、必要な部分を詳しく読んで次へ進んでいる可能性があります。
一つの数字ではなく、到達深度・接触時間・次行動の3つを組み合わせることが重要です。
離脱区間ごとに記事の改善箇所を決める
25%・50%・75%の到達率を取得すると、記事全体ではなく「どの区間を直すか」を決められます。
| 落ち込み | 最初に確認する場所 | 改善例 |
|---|---|---|
| 表示→25% | タイトル、リード、冒頭結論 | 検索意図とのズレを修正 |
| 25→50% | 前半H2 | 背景説明を圧縮、結論を前倒し |
| 50→75% | 中盤 | 重複説明削減、表・具体例追加 |
| 75%→末端 | 終盤 | まとめの冗長化を防ぐ |
| 末端到達後にクリックなし | 関連記事・CTA | 次の疑問に合う導線へ変更 |

スクロール率は記事全体の良し悪しではなく、落ち込みが発生した区間を特定し、その区間に対応する見出しや導線を改善するために使います。
重要なのは、サイト全体の一律基準を作る前に、同じ記事タイプ同士で比較することです。
用語解説記事は冒頭だけで疑問が解決する場合があります。一方、手順記事では後半まで進まないと目的を達成できません。
「75%未満だから悪い」という外部の一般値をそのまま採用するより、
- 用語解説
- 手順記事
- 比較記事
- 調査記事
などに分類し、自社記事の中央値や過去実績を基準にした方が改善判断へつながります。
GA4で記事比較用の探索レポートを作る
実装後は、GA4の「探索」で記事別に比較します。
基本的な分析表では、行にページパス、列または内訳にpercent_scrolledを設定し、イベント数やユーザー数を確認します。
さらに、
- 平均エンゲージメント時間
article_end_viewinternal_link_click- 記事タイプ
- デバイス
を組み合わせます。
GA4ではカスタムイベントパラメータをカスタムディメンションへ登録することで、探索などで詳細分析できます。
公開前にはGTMのプレビューモードとGA4のDebugViewを使い、
- 25%で1回だけ発火するか
- 50%・75%も正しく発火するか
- 記事末端要素で
article_end_viewが発火するか - 内部リンクのURLや位置が正しく送られるか
を確認します。
GA4のDebugViewでは、デバッグ対象端末から送信されたイベントをリアルタイムで確認できます。
記事エンゲージメント改善は「高くする」より「役割を果たしたか」で判断する
記事エンゲージメント計測の目的は、すべての記事のスクロール率や滞在時間を高くすることではありません。
検索ユーザーは、知りたい答えを得るために記事を訪れます。
企業側が「最後まで読んでもらいたい」と考えていても、読者側は必要な答えを途中で得れば、その時点で関連記事やサービスページへ進む場合があります。
そのため、記事改善では、
- どこまで到達したか
- どれくらいページへ注意を向けたか
- その後どの行動をしたか
を確認します。
PVや検索順位だけを見ていると、流入後の問題は分かりません。一方、読了率だけを追っても、回遊や問い合わせにつながる導線の問題は見えません。
流入→閲読→到達→回遊という順番で記事を計測することで、初めて「どこを改善するか」を判断できるようになります。
まとめ
GA4で記事のエンゲージメントを分析する場合、標準の90%スクロールだけで評価するのではなく、25%・50%・75%のスクロール深度、記事末端到達、平均エンゲージメント時間、内部リンククリックを組み合わせて確認します。
特に重要なのは、スクロールを「読了」と断定しないことです。
記事末端まで到達していなくても、必要な情報を得て関連記事へ進んでいるなら、その記事は十分に役割を果たしている可能性があります。
まずはscroll_depth、article_end_view、internal_link_clickの3イベントを実装し、記事タイプ別に比較してください。
「読まれていない記事」ではなく、「どの地点から期待した行動が起きていない記事か」を特定できれば、コンテンツ改善の優先順位を決めやすくなります。
参考文献・データ元
-
Google Analytics Help「Enhanced measurement events」
発表元:Google
使用内容:標準scrollイベントがページの90%地点で発生する仕様。
Google公式情報を見る -
Google Analytics Help「User engagement」
発表元:Google
使用内容:Webページがフォーカスされている時間を基準としたユーザーエンゲージメントの仕組み。
Google公式情報を見る -
Google Analytics Help「Engagement rate and bounce rate」
発表元:Google
使用内容:エンゲージメントのあったセッションの定義。
Google公式情報を見る -
Google Tag Manager Help「スクロール距離トリガー」
発表元:Google
使用内容:GTMによる任意のスクロール深度計測。
Google公式情報を見る -
Google Tag Manager Help「要素の表示トリガー」
発表元:Google
使用内容:記事末端要素の表示および最低表示時間の計測。
Google公式情報を見る -
Google Tag Manager Help「クリック トリガー」
発表元:Google
使用内容:内部リンククリックイベントの実装方法。
Google公式情報を見る -
Homma, R., Soejima, K., Yoshida, M., Umemura, K.「Analysis of User Dwell Time on Non-News Pages」
発表年:2019年
使用内容:スクロール深度だけでは実際の閲読を直接判断できない点の補足。
研究情報を見る
