メインコンテンツへスキップ
無料5 minutes初級

カスタムイベント: JavaScript からカスタムイベントを送信するには?

グローバルの window.zenovay() 関数を使って、名前と任意のプロパティ付きイベントを送信します。API と一般的なパターンを解説します。

custom-eventsjavascripttracker-api
最終更新日:

Zenovay トラッカーがページに読み込まれると、グローバル関数 window.zenovay() が公開されます。これはコマンド方式の API を使用します。最初の引数がコマンド('track''identify''goal''revenue' など)で、その後にコマンド固有の引数が続きます。ページビュー以外のすべてのこと — クリック、フォーム送信、ビジネスイベント — を記録するには track コマンドを使用します。

最もシンプルな呼び出し

window.zenovay('track', 'cta_clicked');

プロパティなしの単一イベントを送信します。ダッシュボードの Analytics タブに約 30 秒以内に表示されます。

プロパティ付き

window.zenovay('track', 'cta_clicked', {
  cta_label: '無料トライアル開始',
  page_section: 'hero',
  variant: 'B'
});

プロパティ値は文字列、数値、または真偽値が使えます。ネストされたオブジェクトや配列はサポートされません — 呼び出し場所で平坦化してください。

Revenue イベント

購入には専用の revenue コマンドを使用します。これは金額と通貨を直接受け取ります。

window.zenovay('revenue', 29.00, 'USD');

これは Revenue タブを埋める収益コンバージョンを記録します。通貨を省略すると、デフォルトで USD になります。

別の方法として、通常のイベントを送信して、金額と通貨をプロパティとして含めることもできます:

window.zenovay('track', 'purchase', {
  revenue: 29.00,
  currency: 'USD',
  product_id: 'pro-annual'
});

ユーザーを識別する

訪問者がログインしたら、identify コマンドでセッションを彼らのアカウントにリンクします:

window.zenovay('identify', 'user_42', {
  email: '[email protected]',
  plan: 'pro'
});

好みに応じて、単一のオブジェクトを渡すこともできます:

window.zenovay('identify', {
  user_id: 'user_42',
  email: '[email protected]',
  plan: 'pro'
});

この呼び出しの後、訪問者プロフィールが保存され、後続のイベントはその ID に関連付けられます。

プロパティ命名規約

snake_case を使用してください(pageSection ではなく page_section)。ダッシュボードはプロパティをアルファベット順にグループ化します — 一貫した命名はフィルタリングを簡単にします。

トラッカーは URL、リファラー、スクリーン サイズ、ブラウザ、OS、および概算位置などのコンテキストを自動的にキャプチャするため、これらを自分で送信する必要はありません。

プラン制限

カスタムイベントは月間イベント枠にカウントされます:

プラン月間イベント
Free10,000
Pro100,000
Scale1,000,000
Enterpriseカスタム

よくある落とし穴

  • トラッカー読み込み前の呼び出しif (window.zenovay) チェックでラップするか、スクリプト実行前にキューに入れます。トラッカーは window.zenovay.q にプッシュするすべてのものを再生します:window.zenovay = window.zenovay || function(){(window.zenovay.q = window.zenovay.q || []).push(arguments)}; window.zenovay('track', 'cta_clicked')
  • PII をプロパティとして送信 — メール、氏名、電話番号はカスタムイベントプロパティとして送らないでください。代わりにアカウントデータには identify コマンドを使用してください。
  • クッキーレスモード + identify() — クッキーレスモードでは identify 呼び出しは現在のページでは機能しますが、次のページ読み込みでリンクはリセットされます(永続ストレージなし)。

関連リーディング

この記事は役に立ちましたか?