介绍

UTM (Urchin tracking module) 的作用是帮助我们收集访客的来源渠道.

比如说, 用户是从 Google 广告来的, Youtube, 还是 Facebook 等等.

它的工作原理很简单, 就是在 URL 加上各种 query params 来表达来源.

比如: domain.com?utm_source=google&utm_medium=cpc

当用户来到网站以后, 网站就可以读取 query params 得知用户是从 google 的付费广告来的.

注: 这个方式并不能 100% 精准 tracking 哦, 比如用户把这个 URL share 给其它人, 那么这些人也会被当作是 google 付费广告来源.

gclid, gbraid, wbraid, fbclid

如果只使用 Google 全家桶 (Ads, Analytics), 那么我们是不需要去搞什么 UTM 的.

因为 Google 会在访客的 URL 加上 gclid (Google Click ID), gbraid (Google App Measurement ID), wbraid (Google Web Measurement ID)

这些 ID 里头就包含了所有访客来源的信息了. 但要注意哦, 这个 ID 只是给 Google 自己用的而已, ID 是无法逆向解析成数据的, 也没有开发接口让外人获取.

fbclid 则是 Facebook + Pixel 全家桶的. 原理和 Google ID 一样.

但无论如何, 大部分情况我们还是需要 UTM 的, 比如我们同时在 Google 和 Facebook 做广告, 或者用到了第三方 tracking (e.g. inspectlet)

Standard UTM

参考: What Are UTM Codes? Here's How to Use Them (w/ Examples)

UTM 包含许多属性, 有一些是针对特定平台才有的, 比如 Google Ads 会提供 device 这个属性. 但其它平台不一定就有.

比较 standard 的 属性如下:

utm_id = campaign id (是 id 而不是 campaign name 哦)

utm_source = 平台来源 e.g. google, facebook, youtube

utm_medium = 算是 source 的再细分, e.g. cpc/ppc, organic (Google source 在区分出付费和自然搜索)

utm_campaign = campaign name (注: 它没有 group/set 只有 campaign, 但我通常会把 group/set 加进去, 类似 campaign name > group name)

utm_content = ads name/id. 当做多个广告进行 A/B Test 的时候, 就需要声明是哪一个广告了.

utm_term = keywords 这个是针对 google search 的.

Setup UTM in Google Ads

参考: YouTube – UTM Tracking in Google Ads (Templates + Custom Parameters)

Setup Campaign URL Options

Setup Tracking Template and Custom Parameters

tracking template 长这样

{lpurl}?utm_source=google&utm_medium=cpc&utm_campaign={_campaignname}+%3E+{_groupname}&utm_id={campaignid}&utm_term={keyword}&utm_content={_adsname}

{} 花括弧表示 dynamic value

lpurl = landing page url 也就是最终网站的地址

campaignid, keyword 是 Google Ads 自带的 parameters, 完整的 list 这里: Available ValueTrack parameters

_campaignname, _groupname, _adsname 任何 starts with underscore 都是 custom parameters

如下设置

在 campagin level set _campaignname

在 group level set _groupname

在 ad set _adsname

最终 Google Ads 会 combine 所有 level.

注意:

key (e.g. _campaignname ) 不可以用 underscore 做分割哦, _campaign_name <-- 错误的

value (e.g. Aug+2022) 必须 URL encode 哦. Aug 2022 <-- 错误的 (用 + 或 %20 都可以)

批量管理

custom parameters 不太好管理, 有时候可能会忘记放, 或者改名字忘记同步.

我以前写过一个 script 来管理. 但没有做记入. 而现在代码也不知道在哪里了.

但我有个印象就是它有一些缺失, 并没有办法做到全自动. 算了呗. 以后有机会在来玩.

Google Ads – UTM的更多相关文章

  1. Google Ads Encryption Key

    aes | floyd's Google Ads Encryption Key

  2. Google Ads原理

    Google AdSense广告会根据访问者的地理IP,显示不同的广告,因为adwords里面有相应的设置,有些广告商只想把广告显示给某一地理区域的客户.另一方面就是同一个网站,你在日本和美国会看到日 ...

  3. 用Google Analytics UTM标注社会化媒体分享流量来源

    随着社会化媒体营销概念近两年的日益盛行,敢于吃螃蟹的营销工作者们展开了一些尝试,发现对社会化营销效果进行综合评估是一大难点,价值难以衡量.主要原因在于它的营销效果中混杂了直接的目标转化.品牌宣传.品牌 ...

  4. 实体关系图应用——google ads

    实体关系 本页展示了 AdWords 实体的关系图,其中的可点击图片可帮助您找到最合适的文档. 表示法图例 实体:链接到相关性最高的指南. 基数:允许的实例数量.例如,1..\* 表示允许一个或多个. ...

  5. Google Interview University - 坚持完成这套学习手册,你就可以去 Google 面试了

    作者:Glowin链接:https://zhuanlan.zhihu.com/p/22881223来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 原文地址:Google ...

  6. 5分钟解决google play上架App设置隐私政策声明问题

    本文同步自javaexception 问题: 在我们的app上架到google play后,为了赚点小钱,就集成google ads,然而这会引发一个新的问题,那就是设置隐私政策声明的问题,通常我们会 ...

  7. Flutter 1.0 正式版: Google 的便携 UI 工具包

    Flutter 1.0 正式版: Google 的便携 UI 工具包 文 / Tim Sneath,Google Dart & Flutter 产品组产品经理 Flutter 是 Google ...

  8. [Android]彻底去除Google AdMob广告

    应用中包含广告是能够理解的,但经常造成用户误点,或者广告切换时造成下载流量,就有点让人不舒服了. 以下就以Google AdMob广告为例,看怎样彻底去除他. 先分析一下Google AdMob的工作 ...

  9. Flutter 1.0 正式版: Google 的跨平台 UI 工具包

    今天我们非常高兴的宣布,Flutter 的 1.0 版本正式发布!Flutter 是 Google 为您打造的 UI 工具包,帮助您通过一套代码同时在 iOS 和 Android 上构建媲美原生体验的 ...

  10. 彻底去除Google AdMob广告

    应用中包含广告是能够理解的,但经常造成用户误点,或者广告切换时造成下载流量,就有点让人不舒服了. 以下就以Google AdMob广告为例,看怎样彻底去除他. 先分析一下Google AdMob的工作 ...

随机推荐

  1. 数据仓库建模工具之一——Hive学习第二天

    Hive的概述 1.Hive基本概念 1.1 Hive简介 Hive本质是将SQL转换为MapReduce的任务进行运算,底层由HDFS来提供数据存储,说白了hive可以理解为一个将SQL转换为Map ...

  2. System.NotSupportedException:“无法显式设置 SplitterPanel 的高度。改在 SplitContainer 上设置 SplitterDistance。”

    System.NotSupportedException:"无法显式设置 SplitterPanel 的高度.改在 SplitContainer 上设置 SplitterDistance.& ...

  3. [oeasy]python0037_终端_terminal_电传打字机_tty_shell_控制台_console_发展历史

    换行回车 回忆上次内容 换行 和 回车 是两回事 换行 对应字节0x0A Line-Feed 水平 不动 垂直 向上喂纸 所以是 feed 回车 对应字节0x0D Carriage-Return 垂直 ...

  4. Pandas库学习笔记(2)

    Pandas 数据结构 Pandas 有三种常用的数据结构 Series DataFrame Panel 这些数据结构建立在Numpy数组之上,这意味着它们运行速度都非常快. Python.Numpy ...

  5. openEuler 安装 DocekrCE

    就个人而言,openEuler 算是不错的国产化操作系统."一脉传承"自redhat让实际的使用体验非常丝滑.软件源都是国内的,开箱即用,漏洞的补丁发的也挺及时.美中不足的是貌似 ...

  6. FFmpeg开发笔记(四十一)结合OBS与MediaMTX实现SRT直播推流

    ​<FFmpeg开发实战:从零基础到短视频上线>一书的"10.2  FFmpeg推流和拉流"提到直播行业存在RTSP和RTMP两种常见的流媒体协议.除此以外,还有于20 ...

  7. docker dockerfile基础指令

    dockerfile是用来构建docker镜像文件!命令参数脚本 构建步骤 1.编写一个dockerfile文件 2.dockerbuild构建成为一个镜像 3.docker run运行镜像 4.do ...

  8. Jmeter函数助手40-escapeHtml

    escapeHtml函数用于将字符串进行HTML转义. 字符串转义:填入字符串 1.escapeHtml函数是将字符换进行HTML转义,jmeter还存在其它格式化函数如urlencode函数,url ...

  9. Jmeter参数化4-数据库数据引入

    1. 下载jmeter依赖的mysql驱动包 jmeter要连接mysql数据库,首先得下载mysql驱动包.执行"select version()"查看数据库版本 mysql历史 ...

  10. 使用Git bash切换Gitee、GitHub多个Git账号

    使用Git bash切换Gitee.GitHub多个Git账号 ​ Git是分布式代码管理工具,使用命令行的方式提交commit.revert回滚代码.这里介绍使用Git bash软件来切换Gitee ...