web-dev-qa-db-ja.com

Ajaxフォーム送信用にGoogleアナリティクスの目標を設定する方法

Ajax経由で送信される連絡フォームがあり、送信が成功すると、お礼/成功のメッセージが表示されます。

また、Googleアナリティクスアカウントで、お礼ページへのアクセスの目標(目標完了URL)を設定しました。

このページは存在しません。

この方法で成功したフォーム送信の追跡を設定する方法についての考えや提案はありますか?

27
mykisscool

仮想ページビューを使用できます。プロセスの各ステップに、次の呼び出しを追加します

_gaq.Push(['_trackPageview', '/ajax-contactForm/PAGE-or-STEP-NAME.html']);

これはページビューとして登録され、目標のステップとして使用できます。

GA docs の仮想ページビュー)を参照してください。

または、Eduardoが提案したようにイベントの目標として設定するには、 新しいGoogleアナリティクス:イベントの目標 を参照してください。

23
jk.

GAのより新しいバージョンでは、この回答を更新する必要がある可能性があります。ページがajax経由で送信されたときに目標を設定するために、次のことを行いました。

    $.ajax({
        type: "POST",
        url: "/some/page/that/does/not/have/ga/on/it.php",
        data: { formData:formData },
        success: function() {
            // Some success message to user.
            // Create a virtual page view that you can track in GA.
            ga('send', {
                'hitType' : 'pageview',
                'page' : '/contact-us-success' // Virtual page (aka, does not actually exist) that you can now track in GA Goals as a destination page.
            });
        }
    });

次にGA->管理->目標->新しい目標

(1)目標設定-カスタム
(2)目標の説明-> [宛先]を選択します。
(3)目標の詳細->宛先が/ contact-us-successと等しい

これが他の人の役に立つことを願っています。

18
johnsnails

アナリティクスアカウントをGoogleタグマネージャーにリンクすると、AJAX=すべてのフォーム送信を追跡するか、イベントリスナーを要素の可視性(つまり、フォームの確認/お礼のメッセージ)。新しい Global Site Tag(gtag.js)Google Tag Manager を使用する必要があります。

このチュートリアル は、プロセスを説明する優れた仕事を行い、AJAXまたはリダイレクト/変更されたURLの追跡が行われない場合に送信されるフォームにGoogleアナリティクスの目標を設定する手順を説明しますオプションではありません。

1
Mark