mcpField
A
analytics

analytics

github.com/philtzjp营销与增长2450 次安装1 天前更新
代码仓库

关于 analytics

analytics 是一项日文技能,指导如何选择和配置网站分析,并提供有关同意、隐私与测量实践的建议。内容涵盖 Cloudflare 和 Google 方案、自定义事件记录及分析 API。

主要功能

  1. 01按测量需求比较分析方案
  2. 02配置 Google Analytics 同意信号
  3. 03使用 Cloudflare Web Analytics
  4. 04通过 Workers Analytics Engine 记录自定义事件
  5. 05通过 GraphQL 查询 Cloudflare 统计数据

适用场景

  1. 01为页面浏览或转化漏斗选择分析方案
  2. 02实现同意与撤回流程
  3. 03在不发送个人数据的情况下追踪应用事件
  4. 04排除暂存环境和内部流量

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/philtzjp/skills --skill analytics

安装后在 Claude Code 中输入/analytics确认已加载。

详细介绍

来自项目 README

analytics

選定

計測したいものと、同意取得の負担で選ぶ。

  • Cloudflare Web Analytics — Cookie を使わず、クライアント側に識別子を保存しない。ページビュー、リファラ、Core Web Vitals を見たいだけならこれで足りる。Cookie バナーの負担がない。
  • Google Analytics — ユーザー単位のファネル、コンバージョン、広告連携が要るなら。Cookie を使うため同意管理が必要になる。
  • Workers Analytics Engine — 独自のイベントを時系列で記録したい場合。アプリ側の指標をサーバー側で持てる。
  • GraphQL Analytics API — Cloudflare が持つリクエストやキャッシュの統計を取り出す。クライアント側の JavaScript を足さずに済む。

併用してよい。Web Analytics で全ページの素の数字を持ち、GA は必要な導線にだけ入れる、という分け方が同意管理の範囲を小さくする。

Google Analytics と同意

Cookie の使用について確認し、同意を得たときに同意シグナルを送る。

  • analytics_storage は常に granted にする。基本的な分析は常に有効。
  • ad_storage、ad_user_data、ad_personalization は既定で granted にする。
  • ユーザーが「同意しない」を選んだら、広告関連の3つを denied に更新する。

事前同意が必要な地域(EEA、英国など)を対象にする場合、広告関連の既定値は granted ではなく denied にし、同意を得てから granted に更新する。対象地域を確認してから既定値を決める。

<script>
  window.dataLayer = window.dataLayer || [];
  function gtag() { dataLayer.push(arguments); }

  gtag('consent', 'default', {
    analytics_storage: 'granted',
    ad_storage: 'granted',
    ad_user_data: 'granted',
    ad_personalization: 'granted',
  });
</script>
// 「同意しない」を選んだとき
gtag('consent', 'update', {
  ad_storage: 'denied',
  ad_user_data: 'denied',
  ad_personalization: 'denied',
});
  • default はタグの読み込みより先に実行する。順序が逆だと既定値が効かない。
  • 選択結果を保存し、再訪時に同じ状態を復元する。毎回バナーを出さない。
  • 同意の取り消し導線を用意する。一度同意したら変更できない作りにしない。
  • バナーで主要コンテンツを覆わない。キーボードで操作でき、フォーカスが閉じ込められる形にする。
  • 計測 ID、コンバージョン設定、イベント名をコードに直書きして環境ごとに分岐させない。環境変数で切り替える。

Cloudflare Web Analytics

Cookie もクライアント側の識別子も使わないため、多くの場合 Cookie バナーの対象にならない。ただし、対象地域の法制度と、他に入れている計測やタグを合わせて判断する。Web Analytics を入れたから同意不要と短絡しない。

導入方法は2つある。

  • 自動 — Cloudflare をプロキシとして経由しているドメインで、ダッシュボードから有効にする。HTML を変更しない。
  • 手動 — beacon のスクリプトを HTML に入れる。Cloudflare を経由していない配信でも使える。

見られるのはページビュー、リファラ、国、デバイス、Core Web Vitals など。ユーザー単位の追跡やファネル分析はできない。そこが必要なら GA を併用する。

Workers Analytics Engine

アプリ固有のイベントを Workers から書き込む。

// wrangler の設定で ANALYTICS バインディングを定義しておく
env.ANALYTICS.writeDataPoint({
  blobs: ['checkout', 'card'],
  doubles: [amount],
  indexes: [tenantId],
})
  • indexes はカーディナリティの低い値にする。ユーザー ID のような値を入れない。
  • blobs と doubles に個人情報を入れない。メールアドレス、氏名、生の IP を書かない。
  • 書き込みは非同期で、リクエストの応答を遅らせない範囲にとどめる。
  • 集計は SQL API や GraphQL から行う。

共通の注意

  • 計測を理由にページの表示を遅らせない。タグは非同期で読み込む。
  • 個人を特定できる値を URL やイベントのパラメータに入れない。メールアドレス、会員番号、トークンを送らない。
  • 内部アクセスとステージング環境を計測から除外する。数字が汚れる。
  • 何を測るかを先に決める。取れるものを全部取る設定にしない。
  • 計測タグを入れたことと、意思決定に使えることは別。見る指標と見る人を決めてから入れる。

確定前に確認する

  • Cookie を使う計測を入れているなら、同意取得と取り消しの導線があるか。
  • gtag の consent default が、タグの読み込みより先に実行されているか。
  • 対象地域に合わせて広告関連の既定値を決めたか。
  • 同意の選択が保存され、再訪時に復元されるか。
  • Cookie バナーがキーボードで操作でき、主要コンテンツを覆っていないか。
  • 個人を特定できる値をイベントや URL に含めていないか。
  • ステージングと内部アクセスを除外したか。
  • 計測 ID が環境変数で切り替わるか。直書きされていないか。

评论

支持 Markdown