データをルーティングする

gtag.js をインストールしたら、gtag.js を設定して、アカウントまたはサービスのグループにデータを送信(つまりルーティング)することができます。Google 広告と Google マーケティング プラットフォームの測定ソリューションは、すべて同じタグ内に記述できます。このガイドでは、gtag.js で send_to パラメータと groups を使って特定のサービス、アカウント、設定にデータを送信する方法について説明します。

デフォルトのルーティング

各グローバル スニペットには、ルーティングを処理する config コマンドが含まれています。たとえば、Google アナリティクスのグローバル スニペットでは、指定されたアナリティクス アカウントにデータを送信するように、gtag.js が次のように設定されます。

gtag('config', 'GA_MEASUREMENT_ID-1');

event コマンドに send_to パラメータを追加すると、グローバル スニペットで指定されたルーティング(またはページで先に設定されているルーティング)をオーバーライドすることができます。たとえば、次の例では、ページで先に設定されている送信先に関わりなく、sign_in イベントは Google アナリティクスのプロパティ「GA_MEASUREMENT_ID-2」にのみ送信されます。

gtag('event', 'sign_in', { 'send_to': 'GA_MEASUREMENT_ID-2' });

グループ

特定の情報を一連のアカウントやサービスに送信し、他の情報を別の一連のアカウントやサービスに送信する必要が生じることもあります。たとえば、詳細なデータは社内で保持しつつ、特定のマーケティング キャンペーンに関する情報を広告代理店に送信したいとします。この機能は、groups を使って実現できます。

ターゲット(サービス、アカウント、プロパティなど)のグループを作成し、そのグループにイベントをルーティングすることができます。次の例では、2 つの Google アナリティクス プロパティが group1 という名前のグループに追加され、sign_in イベントがそのグループの 2 つのプロパティにルーティングされます。

gtag('config', 'GA_MEASUREMENT_ID-1', { 'groups': 'group1' });
gtag('config', 'GA_MEASUREMENT_ID-2', { 'groups': 'group1' });

// Routes to 'GA_MEASUREMENT_ID-1' and 'GA_MEASUREMENT_ID-2'
gtag('event', 'sign_in', { 'send_to': 'group1' });

デフォルトのグループ

send_to パラメータが設定されていない場合、イベントは default ターゲット グループにルーティングされます。default グループには、イベントの前に実行されたページの config コマンドからのすべてのサービスとアカウントが含まれます。groups パラメータが config コマンドで指定されていなくても、ターゲットは default グループに割り当てられます。

// The following two lines are equivalent:
gtag('config', 'GA_MEASUREMENT_ID-1');
gtag('config', 'GA_MEASUREMENT_ID-1', { 'groups': 'default' });

次の例では、{'send_to : 'default'} が指定されているかどうかに関わりなく、イベントが default グループに送信されます。

// Configure a target
gtag('config', 'GA_MEASUREMENT_ID-1');

// Since send_to is not specified, this routes to the 'default' group which
// includes 'GA_MEASUREMENT_ID-1', as defined in config, above.
gtag('event', 'sign_in');

// By default, routes to the 'default' groups which includes
// 'GA_MEASUREMENT_ID-1', as defined in config, above.
gtag('event', 'generate_lead', { 'send_to': 'default' });

カスタム groups へのルーティング

groups を使用すると、特定の ID セットにルーティングする必要のあるデータを指定できます。次のコードサンプルは、sign_in イベントデータを agency というカスタム グループにルーティングする方法を示しています。

// Configure a target
gtag('config', 'GA_MEASUREMENT_ID-1');
gtag('config', 'GA_MEASUREMENT_ID-3', { 'groups': 'agency' });
gtag('config', 'GA_MEASUREMENT_ID-9', { 'groups': 'agency' });

// Routes only to 'GA_MEASUREMENT_ID-3' and 'GA_MEASUREMENT_ID-9' since they
// are both in the 'agency' group
gtag('event', 'sign_in', { 'send_to': 'agency' });

例: Google 広告、アナリティクス、Floodlight をまとめて設定する

Google 広告、アナリティクス、Floodlight の設定は、すべて同じグローバル サイトタグ内に作成できます。次の例は、タグを組み合わせて使用する場合にどのような構造になるかを示しています。この例では、以下を行います。

  • Google アナリティクスにページビュー データを送信する。
  • Google 広告と Floodlight のコンバージョンを測定する。
  • ショッピング カートに追加された商品に関する情報をアナリティクスと Google 広告に送信する。
<script async src="https://www.googletagmanager.com/gtag/js?id=GA_MEASUREMENT_ID-1">
</script>
<script>
  window.dataLayer = window.dataLayer || [];
  function gtag(){dataLayer.push(arguments);}
  gtag('js', new Date());

  // Global configs
  gtag('config', 'GA_MEASUREMENT_ID-1');
  gtag('config', 'AW-CONVERSION_ID');
  gtag('config', 'DC-FLOODLIGHT_ID');

  // Measure Google Ads conversions
  gtag('event', 'conversion', {
      'send_to': 'AW-CONVERSION_ID/AbC-D_efG-h12_34-567',
      'value': 1.0,
      'currency': 'USD'
  });

  // Measure Floodlight conversions
  gtag('event', 'conversion', {
    'allow_custom_scripts': true,
    'send_to': 'DC-FLOODLIGHT_ID/actions/locat304+standard'
  });

  // route ecommerce add_to_cart event to Google Ads and Analytics
  gtag('event', 'add_to_cart', {
    'send_to': [
      'GA_MEASUREMENT_ID-1',
      'AW-CONVERSION_ID'
    ],
    'items': [
      'id': 'U1234',
      'ecomm_prodid': 'U1234',
      'name': 'Argyle Funky Winklepickers',
      'list': 'Search Results',
      'category': 'Footwear',
      'quantity': 1,
      'ecomm_totalvalue': 123.45,
      'price': 123.45
    ]
  });
</script>