Skip to content

Instantly share code, notes, and snippets.

@sefacan
Last active December 8, 2023 15:08
Show Gist options
  • Save sefacan/1ed6131c4f5ad3c9d7e761f32108162e to your computer and use it in GitHub Desktop.
Save sefacan/1ed6131c4f5ad3c9d7e761f32108162e to your computer and use it in GitHub Desktop.
Google tag manager conversion

Site geneli tag manager script

<!-- Global site tag (gtag.js) - Google Ads: 123456789 -->
  <script async src="https://www.googletagmanager.com/gtag/js?id=AW-123456789"></script>
  <script>
      window.dataLayer = window.dataLayer || [];
      function gtag(){dataLayer.push(arguments);}
      gtag('js', new Date());
      gtag('config', 'GA_TRACKING_ID');
      gtag('config', 'AW-123456789');
  </script>
  <noscript>
        <iframe src="https://www.googletagmanager.com/ns.html?id=GTM-M92BGP"
                height="0" width="0" style="display:none;visibility:hidden"></iframe>
    </noscript>

Anasayfa, ürün detay, kategori, sepet ve checkout adımları dışındaki sayfalar için

  <script>
    dataLayer.push({
        'event': 'viewOther',
        'pagetype': 'Other'
    });
</script>

Tüm sayfalarda sepet ögelerinin gönderimi

<script>
        var cartItems = [];
        var cartItem = {
            'item': name,
            'price': price,
            'quantity': quantity
        }
        cartItems.push(cartItem);

        dataLayer.push({
            'membertype': isGuest ? "visitor" : orderCount > 0 ? "buyer" : "member",
            'email': email,
            'cartcontent': {
                'products': cartItems
            }
        });
</script>

Slider ögelerinin gönderimi

<script>
            var promotions = []
            var promotion = {
                'id': id,
                'name': name,
                'creative': 'Slider',
                'position': index
            }
            promotions.push(promotion)

            dataLayer.push({
                'ecommerce': {
                    'promoView': {
                        'promotions': promotions
                    }
                }
            })
</script>

Kategori sayfası

<script>
        var impressions = [];
        var impression = {
            'id': id,
            'name': name,
            'price': price,
            'brand': brand,
            'category': categoryName,
            'list': 'Kategori',
            'position': index
        }
        impressions.push(impression)
        
        dataLayer.push({
            'ecommerce': {
                'currencyCode': currencyCode,
                'impressions': impressions
            }
        })

        dataLayer.push({
            'event': 'viewList',
            'pagecat': formattedCategory //etc. Computer > Notebook > Macbook,
            'pagetype': 'Listing'
        })
</script>

Listelerde ürüne tıklama

<script>
        dataLayer.push({
            'event': 'productClick',
            'ecommerce': {
                'currencyCode': currencyCode,
                'click': {
                    'actionField': { 'list': 'Kategori/Arama Sayfası/' + formattedCategory },
                    'products': [{
                        'name': name,
                        'id': id,
                        'price': price,
                        'brand': brand,
                        'category': formattedCategory,
                        'position': index
                    }]
                }
            }
        })
</script>

Arama sayfası

<script>
        var impressions = [];
        var impression = {
            'id': id,
            'name': name,
            'price': price,
            'brand': brand,
            'category': categoryName,
            'list': 'Kategori',
            'position': index
        }
        impressions.push(impression)
        
        dataLayer.push({
            'ecommerce': {
                'currencyCode': currencyCode,
                'impressions': impressions
            }
        })

        dataLayer.push({
            'event': 'viewList',
            'pagetype': 'Listing'
        })
</script>

Ürün detay sayfası

<script>
    dataLayer.push({
        'ecommerce': {
            'currencyCode': currencyCode,
            'detail': {
                'actionField': { 'list': formattedCategory },
                'products': [{
                    'id': id,
                    'name': name,
                    'price': price,
                    'brand': brand,
                    'category': formattedCategory
                }]
            }
        }
    })
    
    dataLayer.push({
        'event': 'viewItem',
        'pageType': 'Product'
    })
</script>

Sepete ekleme

<script>
    dataLayer.push({
      'event': 'addToCart',
      'ecommerce': {
        'currencyCode': currencyCode,
        'add': {
          'products': [{
            'id': id,
            'name': name,
            'price': price,
            'brand': brand,
            'category': categoryName,
            'variant': variant,
            'quantity': quantity
          }]
        }
      }
    })
</script>

Sepetten çıkar

<script>
    dataLayer.push({
        'event': 'removeFromCart',
        'ecommerce': {
            'currencyCode': currencyCode,
            'remove': {
                'products': [{
                    'id': id,
                    'name': name,
                    'price': price,
                    'brand': brand,
                    'category': categoryName,
                    'quantity': quantity,
                    'variant': variant
                }]
            }
        }
    })
</script>

Sepet sayfası

  <script>
        var products = []
        var product = {
            'name': name,
            'id': id,
            'price': price,
            'brand': brand,
            'category': categoryName,
            'variant': variant,
            'quantity': quantity
        }
        products.push(product)

        dataLayer.push({
            'event': 'checkout',
            'ecommerce': {
                'currencyCode': currencyCode,
                'checkout': {
                    'actionField': { 'step': 1, 'option': isGuest ? "notLoggedIn" : "LoggedIn")' },
                    'products': products
                }
            }
        })

        dataLayer.push({
            'event': 'viewBasket',
            'pagetype': 'Basket'
        })
</script>

Adres sayfası

  <script>
        var products = []
        var product = {
            'name': name,
            'id': id,
            'price': price,
            'brand': brand,
            'category': categoryName,
            'variant': variant,
            'quantity': quantity
        }
        products.push(product)

        dataLayer.push({
            'event': 'checkout',
            'ecommerce': {
                'currencyCode': currencyCode,
                'checkout': {
                    'actionField': { 'step': 2, 'option': isGuest ? "notLoggedIn" : "LoggedIn")' },
                    'products': products
                }
            }
        })

        dataLayer.push({
            'event': 'viewAddress',
            'pagetype': 'Address'
        })
</script>

Ödeme sayfası

  <script>
        var products = []
        var product = {
            'name': name,
            'id': id,
            'price': price,
            'brand': brand,
            'category': categoryName,
            'variant': variant,
            'quantity': quantity
        }
        products.push(product)

        dataLayer.push({
            'event': 'checkout',
            'ecommerce': {
                'currencyCode': currencyCode,
                'checkout': {
                    'actionField': { 'step': 3, 'option': isGuest ? "notLoggedIn" : "LoggedIn")' },
                    'products': products
                }
            }
        })

        dataLayer.push({
            'event': 'viewPayment',
            'pagetype': 'Payment'
        })
</script>

Başarılı satış anında(tek sefer gönderilmesi gerek)

    <script>
      gtag('event', 'conversion', {'send_to': 'AW-123456789/AbC-D_efG-h12_34-567',
        'value': orderTotal,
        'currency': currencyCode
      })
    </script>

Sipariş tamamlandı sayfası(tek sefer gönderilmesi gerek)

    <script>
      var transactionItems = []
      var transactionItem = {
        'id': id,
        'name': name,
        'price': price,
        'brand': brand,
        'category': categoryName,
        'variant': variant,
        'quantity': quantity,
        'coupon': couponCode
      }
      transactionItems.push(transactionItem)

      dataLayer.push({
        'ecommerce': {
            'currencyCode': currencyCode,
            'purchase': {
                'actionField': {
                    'id': orderNumber,
                    'affiliation': 'Online Mağaza',
                    'revenue':orderTotal,
                    'tax': tax,
                    'shipping': shippingPrice,
                    'coupon': coupon
                },
                'products': transactionItems
            }
         }
      })

      gtag('event', 'conversion', {'send_to': 'AW-123456789/AbC-D_efG-h12_34-567',
        'value': orderTotal,
        'currency': currencyCode
      })

      dataLayer.push({
        'event': 'viewSuccess',
        'pagetype': 'Success'
      })
    </script>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment