mcpField
G
google-tagmanager

google-tagmanager

github.com/henkisdabroマーケティング・グロース93234 回インストール3 週間前に更新
リポジトリ

google-tagmanager について

Google Tag Manager のタグ、トリガー、変数、データレイヤー設定を扱うリファレンススキルです。分析・マーケティング設定の実装やデバッグ向けで、サードパーティ提供の GTM MCP サーバーについても説明します。

主な機能

  1. 01コンテナとタグの設定ガイド
  2. 02トリガーと変数のリファレンス
  3. 03データレイヤーと EC イベントのパターン
  4. 04Consent Mode v2 のガイド
  5. 05プレビューとデバッグの手順
  6. 06GTM MCP サーバーの操作説明

活用シーン

  1. 01GA4 のページビュー計測設定
  2. 02フォーム送信と購入の計測
  3. 03プレビューで同意状態を確認
  4. 04MCP 経由で GTM エンティティを管理

MCP 対応

同梱の `gtm-mcp-server` は Stape がホストするサードパーティ製サーバーです。ツールを使って GTM エンティティの作成・更新・削除、コンテナバージョンの作成・公開を行えます。

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/henkisdabro/wookstar-claude-plugins --skill google-tagmanager

インストール後、Claude Code で/google-tagmanagerを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
api.md
best-practices.md
custom-templates.md
datalayer.md
debugging.md
server-side.md
setup.md
tags.md
triggers.md
variables.md

詳細

Google Tag Manager

以下の基本情報を超える内容を回答する前に、末尾の表から該当するリファレンスファイルを選び、読んでください。

同梱の gtm-mcp-server は、Stape がホストする GTM MCP サーバーです(Google ではなく、サードパーティ製です)。このツールでは、タグ、トリガー、変数などのエンティティを作成、更新、削除できるほか、コンテナのバージョンを作成して公開できます。削除または公開のアクションを実行する前に、どのコンテナとワークスペースで何が変更されるのかを伝え、ユーザーの承認を得てください。

クイックスタート

  1. tagmanager.google.com で GTM アカウントを作成します
  2. コンテナ(Web、iOS、Android、または Server)を作成します
  3. コンテナスニペットをインストールします。詳しくは setup.md を参照してください
  4. タグ、トリガー、変数を設定します
  5. プレビューモードでテストします。詳しくは debugging.md を参照してください
  6. 公開します
基本的なタグ設定
Example: Google Tag (GA4)
Tag Type: Google Tag
Tag ID: G-XXXXXXXXXX
Trigger: All Pages

タグのドキュメントについては、tags.md を参照してください。

データレイヤーへのプッシュ
window.dataLayer = window.dataLayer || [];
dataLayer.push({
  'event': 'custom_event',
  'category': 'engagement',
  'action': 'button_click',
  'label': 'CTA Button'
});

データレイヤーのパターンについては、datalayer.md を参照してください。

よくあるワークフロー

GA4 ページビューのトラッキング
  1. GA4 測定 ID を指定して Google タグを作成します(以前の「GA4 Configuration」タグタイプ)
  2. トリガーを「All Pages」に設定します
  3. プレビューモードでテストし、GA4 DebugView で確認します
  4. 公開します
フォーム送信のトラッキング
  1. フォーム送信トリガーを作成します
  2. フォーム ID/名前をパラメーターとして設定した GA4 イベントタグ(form_submit)を作成します
  3. プレビューモードでテストして公開します
e コマースのトラッキング
  1. e コマースイベントを含むデータレイヤーを実装します。詳しくは datalayer.md を参照してください
  2. 各イベントのデータレイヤー変数と GA4 イベントタグを作成します
  3. 変数をイベントパラメーターにマッピングします
  4. 購入フロー全体をテストして公開します
Consent Mode v2

4 種類の同意タイプによって Google タグの動作が制御されます。ad_storage、analytics_storage、ad_user_data、ad_personalization(最後の 2 つは EEA/英国での広告測定とパーソナライズに必要です)。

  1. CMP のテンプレートをコミュニティテンプレートギャラリーから追加します(または、setDefaultConsentState/updateConsentState テンプレート API を使って作成します。テンプレートでは gtag('consent', ...) ではなく、これらの API を呼び出します)。
  2. Consent Initialization - All Pages トリガーで実行し、ほかのタグより前にデフォルト(通常は denied。必要に応じて地域ごとに設定し、wait_for_update を指定)を設定します。
  3. ユーザーが選択すると CMP が同意状態を更新し、Google タグは自動的に調整されます。Google 以外のタグでは、各タグの同意設定で Additional consent checks を設定し、コンテナの Consent Overview を使ってすべてのタグが対象になっていることを確認します。
  4. 基本モード(同意が得られるまでタグをブロック)または詳細モード(同意が拒否されていても Google タグを読み込み、Cookie を使用しない ping を送信)を選択します。
  5. プレビューでは、各イベントの Consent タブにデフォルト状態と更新後の状態が表示されます。最初のタグが実行される前の Consent Initialization でデフォルト状態が表示されることを確認します。
タグが発火しない場合のデバッグ
  1. プレビューモードを有効にして、該当する操作を行います
  2. 「Tags Not Fired」セクションを確認し、トリガー条件を見直します
  3. データレイヤーの値を確認し、条件を修正して再テストします
  4. 詳しいワークフローについては debugging.md を参照してください

技術的な制約

ES5 が必須です:カスタム JavaScript 変数とカスタム HTML タグでは、ES5 構文(var、function()、文字列連結)を使用する必要があります。カスタムテンプレートでは一部の ES6 機能をサポートしています。詳しくは best-practices.md を参照してください。回避策も記載されています。

RE2 正規表現:GTM では RE2 正規表現を使用します。先読み、後読み、後方参照は使えません。使用可能なパターンについては best-practices.md を参照してください。

クイックリファレンス

有効にする組み込み変数
  • Page URL、Page Path、Page Hostname
  • Click Element、Click Classes、Click ID、Click URL、Click Text
  • Form Element、Form ID、Form Classes
  • Scroll Depth Threshold、Scroll Direction
よく使われるトリガータイプ

ページビュー、クリック(すべての要素/リンクのみ)、フォーム送信、カスタムイベント、履歴の変更(SPA)、タイマー、スクロール深度

必須のデータレイヤーイベント
// Page view
dataLayer.push({ 'event': 'page_view' });

// User login
dataLayer.push({ 'event': 'login', 'method': 'Google' });

// Purchase - clear the previous ecommerce object first
dataLayer.push({ 'ecommerce': null });
dataLayer.push({
  'event': 'purchase',
  'ecommerce': {
    'transaction_id': 'T12345',
    'value': 99.99,
    'currency': 'AUD',
    'items': [...]
  }
});

参考ファイル

トピック参考ファイル
コンテナの設定setup.md
タグの設定tags.md
トリガーの設定triggers.md
変数の設定variables.md
データレイヤーdatalayer.md
デバッグdebugging.md
ベストプラクティス、命名、パフォーマンス、セキュリティbest-practices.md
カスタムテンプレートcustom-templates.md
API による自動化api.md
サーバーサイドコンテナ:ホスティング、カスタムドメイン、クライアント、GA4 サーバータグserver-side.md

外部リソース

コメント