Google Analytics & Ads 学习笔记 2 (gtag 版本)
gtag 是用来取代之前的 ga 的
但其实它底层就是调用 ga 而已. 只是封装了一个上层.
1. start up script
<script async src="https://www.googletagmanager.com/gtag/js?id=@googleAnalyticsId"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag() {
dataLayer.push(arguments);
}
gtag('js', new Date());
gtag('config', '@googleAnalyticsId', {
cookie_domain: 'auto',
transport_type: 'beacon',
currency: 'MYR',
send_page_view: false
});
gtag('event', 'page_view');
</script>
send_page_view 如果没有 set 的话,会自动发一次 page view 哦
2. custom event
call 就是 action
gtag('event', 'call', {
event_category: 'engagement',
event_label: 'phone'
});
再比如
gtag('event', 'location', {
event_category: 'engagement',
event_label: 'maps'
});
3. ecoomerce product list view
gtag('event', 'view_item_list', {
items: [{
name: 'Product 1',
list_name: 'Category',
list_position: 1
},
{
name: 'Product 2',
list_name: 'Category',
list_position: 2
},
]
});
4. product list CTR
gtag('event', 'select_content', {
content_type: 'Product',
items: [{
name: el.textContent,
list_name: 'Category',
list_position: index + 1,
}]
});
5. product detail view
gtag('event', 'view_item', {
items: [{
name: productName,
}]
});
6. add to cart
gtag('event', 'add_to_cart', {
value: 100,
items: [{
name: productName,
price: 100,
quantity: 1
}]
});
remove from cart
gtag('event', remove_from_cart, {
value: 100,
items: [{
name: productName,
price: 100,
quantity: 1
}]
});
7. checkout
gtag('event', 'begin_checkout', {
value: 100,
checkout_step: 1,
items: [{
name: 'Product 1',
price: 100,
quantity: 1
}]
});
next step
gtag('event', 'checkout_progress', {
value: 100,
checkout_step: 2,
items: [{
name: 'Product 1',
price: 100,
quantity: 1
}]
});
next step
gtag('event', 'checkout_progress', {
value: 100,
checkout_step: 3,
items: [{
name: 'Product 1',
price: 100,
quantity: 1
}]
});
8. purchase
gtag('event', 'purchase', {
transaction_id: 'SO-001',
value: 100,
shipping: 20,
items: [{
name: 'Product 1',
price: 100,
quantity: 1
}]
});
Google Analytics & Ads 学习笔记 2 (gtag 版本)的更多相关文章
- Google TensorFlow深度学习笔记
Google Deep Learning Notes Google 深度学习笔记 由于谷歌机器学习教程更新太慢,所以一边学习Deep Learning教程,经常总结是个好习惯,笔记目录奉上. Gith ...
- OGG学习笔记05-OGG的版本
刚接触OGG的时候,很容易被众多的版本搞晕,虽然官方有提供各版本对应认证OS和DB的表格. 个人认为一个比较简单的方式,是直接去edelivery.oracle.com下载OGG,选定一个大版本后,这 ...
- Dubbo -- 系统学习 笔记 -- 示例 -- 多版本
Dubbo -- 系统学习 笔记 -- 目录 示例 想完整的运行起来,请参见:快速启动,这里只列出各种场景的配置方式 多版本 当一个接口实现,出现不兼容升级时,可以用版本号过渡,版本号不同的服务相互间 ...
- Google的Bigtable学习笔记(不保证正确性)
跪求各路大侠指正:1.首先是一个列式存储的简单数据模型的数据库,它比键值对模型/文档模型NoSQL数据库复杂点(也就更强一点).2.它的分布式存储性能依靠于GFS也就对单机房网络有硬性指标.3.它同时 ...
- 31天重构学习笔记(java版本)
准备下周分享会的内容,无意间看到.net版本的重构31天,花了两个小时看了下,可以看成是Martin Fowler<重构>的精简版 原文地址:http://www.lostechies.c ...
- Git学习笔记一--创建版本库、添加文件、提交文件等
Git,是Linus花了两周时间用C写的一个分布式版本控制系统.牛该怎么定义? 其实,很多人都不care谁写了Git,只在乎它是免费而且好用的!So do I! 下面开始我们的学习: 1.Git安装( ...
- Hadoop学习笔记(老版本,YARN之前),MapReduce任务Namenode DataNode Jobtracker Tasktracker之间的关系
一.基本概念 在MapReduce中,一个准备提交执行的应用程序称为“作业(job)”,而从一个作业划分出的运行于各个计算节点的工作单元称为“任务(task)”.此外,Hadoop提供的分布式文件系统 ...
- google project tango 学习笔记
google io 2015上 project tango 的演示视频
- google map api 学习笔记
(1)地图的缩放监听函数 google.maps.event.addlistener(map,"zoom_change",function(){ 缩放级别变化后的函数. }); ( ...
- Git学习笔记02-创建版本库
版本库就是一个目录,这个目录里面的所有文件都会被Git管理,每个文件的修改,删除都能追踪.以便在某个时刻追踪历史记录,或者还原 路径切换,查看文件命令和linux差不多,cd 文件路径 ls查看路径 ...
随机推荐
- 在缩小浏览器宽度的时候,图片会超出li的宽度
要确保在缩小浏览器宽度时,图片不会超出 <li> 元素的宽度,您可以为描述文本添加一些样式,以便让图片适应于 <li> 元素.一种常见的方法是使用 CSS 中的 max-wid ...
- 欢迎访问pycharm 每次开启时都显示
文件->设置->外观与行为->系统设置->将"启动时重新打开项目"前的勾去掉
- oeasy教您玩转vim - 59 - # 编辑总结
[Github地址] (https://github.com/overmind1980/oeasyvim) [Gitee地址] (overmind1980/oeasyvim) [蓝桥实验楼 邀请码 ...
- 银河麒麟V10高级服务器编译安装pg13.4
安装postgres依赖 yum install -y openssl openssl-devel pam pam-devel libxml2 libxml2-devel libxslt libxsl ...
- 【OracleDB】 03 数据类型和常见对象概述
我们可以通过PLSQL来查看Oracle的数据类型 总分类: - 字符型 1.CHAR 0 - 2000 字节 固定长度字符串 2.NCHAR 0 - 1000 字节 固定长度字符串[Unicode字 ...
- Typora配置自动上传图片到图床
在多平台发布文章时,如果遇到图片不能导入的问题,推荐使用图床!推荐使用阿里云或腾讯云,免费的不用考虑了! PicGo下载 链接:https://pan.quark.cn/s/2ec95402631 ...
- jax框架为例:求hession矩阵时前后向模式的自动求导的性能差别
注意:本文相关基础知识不介绍. 给出代码: from jax import jacfwd, jacrev import jax.numpy as jnp def hessian_1(f): retur ...
- CUDA11.3编译pytorch2.0.1报错:error: ‘nvmlProcessInfo_v1_t’ was not declared in this scope
问题如题: CUDA11.3编译pytorch2.0.1报错:error: 'nvmlProcessInfo_v1_t' was not declared in this scope 解决方法参考: ...
- 2.6倍!WhaleTunnel 客户POC实景对弈DataX
作为阿里早期的开源产品,DataX是一款非常优秀的数据集成工具,普遍被用于多个数据源之间的批量同步,包括类似Apache DolphinScheduler的Task类型也对DataX进行了适配和增强, ...
- Codeforces Round 964 (Div. 4) D. Slavic's Exam
题目链接:https://codeforces.com/contest/1999/problem/D 题目描述 Slavic 的考试非常难,需要您的帮助才能通过.以下是他正在努力解决的问题: 存在一个 ...