简体中文

开发者工具 · URL 编码器和解码器

为什么 UTM 值中未编码的 & 和 = 会悄悄损坏您的营销活动报告

· 为什么它很重要

url 编码 utm 跟踪 分析

UTM 活动参数按“&”号拆分为多个分析参数
原始 ToolAcre 矢量图

包含 & 或 = 的营销活动名称在链接中看起来不错,但每个分析工具都会将其分为两个参数。这篇文章展示了发生的情况、如何​​安全地编码值以及如何在发布之前检查链接。

当 UTM 参数在未编码的 & 字符处拆分时

包含 & 或 = 的营销活动名称在链接中输入时看起来不错,但每个分析系统都会在 & 符号处将其拆分,并将其余部分视为新参数。春季和夏季成为报告中两个独立的营销活动值。值内的等号会产生类似的中断:utm_campaign=2024=best 默默地破坏键值对。这些字符在查询语法中保留用于结构,而不是内容,因此每个解析 URL 的工具都将它们读取为分隔符。

URL 解析器无法知道您将它们视为数据。将它们编码为 %26 和 %3D 会将它们保留为值内的文字字符。如果不进行编码,您的分析仪表板会收到不完整或损坏的活动名称,并将流量分散到非预期的部分。如果名称包含多个特殊字符,则单个共享链接可能会生成六个虚拟营销活动。

如何解析查询字符串 — & 分隔对,= 分隔键和值,除非您提供,否则不会转义

查询字符串的解析方式揭示了为什么“&”和“等于”在值中是危险的。 & 符号分隔独立的键=值对: ?utm_source=email&utm_campaign=sale 表示两个单独的参数。在值内,未转义的 & 符号结束当前对并开始新的对。等号将键与值分开:如果 utm_campaign=Q3&2024,解析器会看到 utm_campaign=Q3,然后看到没有值的孤立“2024”参数。

此解析发生在多个层:浏览器读取 URL,服务器接收请求,然后您的分析平台再次解码查询字符串。每层都应用相同的规则,并就参数的开始和结束位置得出相同的结论。您无法警告下游消费者您的&符号是特殊的; URL 结构是确定性且明确的。

哪些字符需要在 UTM 值中进行编码 - &、=、#、?、空格和非 ASCII,以及为什么 # 是最隐蔽的

UTM 值中需要编码的字符包括与号、等于、散列、问号、空格和任何非 ASCII 字母或符号。哈希字符是最狡猾的:#anything 被视为片段标识符,浏览器根本不会将其发送到服务器。以哈希结尾的活动名称会在请求离开您的浏览器之前丢失其后的所有内容。出于相同的结构原因,空格必须变为 %20:在未编码的 URL 中无效。

非 ASCII(如重音 e 或中文字符)编码为 UTF-8 字节,然后进行百分比转义:重音 e 变为 %C3%A9。仔细构建链接或使用为您编码的表单。允许您粘贴营销活动名称并生成完整链接的工具通常会自动处理此步骤,但电子表格公式或手动串联则需要您负责。

工作示例:将“Q3 Sale & Launch”编码为 utm_campaign — 之前和之后,以及报告如何读取每个版本

工作示例:将“Q3 Sale & Launch”编码为 utm_campaign 清楚地显示了问题。如果不进行编码,URL 以“&”符号结尾:?utm_campaign=Q3 Sale &。其余部分消失或成为格式错误的新参数。正确编码后,%26 会替换与号:?utm_campaign=Q3%20Sale%20%26%20Launch。空格也被编码为 %20。现在,整个字符串完整地到达您的分析平台,并作为单个活动进行报告。

将未编码版本和编码版本粘贴到单独的 URL 解码器中,并观察它们有何不同。编码形式解码回原始文本,并保留所有特殊字符。在与团队成员共享或在电子邮件活动或社交媒体平台中发布之前,使用 URL 编码器验证任何 UTM 链接。

电子表格公式和链接生成器 - 常见工作流程中编码发生或失败的情况,一般描述

电子表格公式和自定义链接生成器经常失败,因为它们连接字符串而不进行编码。连接公式构建 URL 可能会生成看起来完全有效的文本,但在作为链接打开时会中断。编码必须发生在公式内部,而不是之后。许多链接缩短服务和电子邮件跟踪平台会自动为您编码,因此测试生成的链接而不是假设手动构建是安全的。

Google Analytics、HubSpot 和类似平台中的拖放活动构建器在内部处理编码。如果您在电子表格中手动构建链接或将其粘贴到 Slack 中,请假设它们不会自动编码。在分发链接之前,通过解码器运行最终 URL,以验证所有特殊字符均表示为 %XX。

常见错误 — 对整个 URL 进行编码,并混合 + 和 %20,使一个活动变成两个

常见错误包括对整个 URL 进行编码,这通过在 https://. 中编码冒号和斜杠来破坏其结构。另一个错误将加号和 %20 混合用于空格:某些系统使用加号(传统形式编码),而现代标准使用 %20。如果一个广告系列值使用加号,而另一个值使用 %20,则即使代表相同的文本,它们也会显示为不同的广告系列。保持一致并对 URL 组件使用 %20。

双重编码,从而生成 %2526 而不是 %26。解码一次后,您将得到 %26 而不是 & 符号。字符变成文字百分二六字符串而不是&符号。检查构建过程中的中间步骤,以确保每个值仅发生一次编码。

这不包括什么 - 分析平台配置和归因模型

分析配置和归因建模完全取决于获得一致准确的营销活动数据。如果您的 UTM 值出现乱码或分裂,则报告无法正确匹配营销活动,并且多点触控归因模型无法准确分配功劳。单个编码错误会在每个使用参数的报告中传播,从而显着扭曲每月或营销活动之间的比较。

在完全启动之前测试您的活动链接。将它们粘贴到 URL 解码器中,并确认活动名称中的每个特殊字符都已正确编码。 URL 编码器并排显示编码和解码形式,因此您可以验证编码是否发生以及解码是否准确恢复原始文本。

要点:对每个值进行一次编码 — URL 编码器和解码器如何从任何营销活动名称生成安全的查询值

要点很简单:使用正确的百分比编码规则对每个值进行一次编码。在 URL 最终确定和发布之前,UTM 参数内的“&”或等号必须变为 %26 或 %3D。单值模式下的 URL 编码器会自动可靠地为您执行此编码。粘贴您的活动名称,选择值模式,将编码结果复制到链接模板中。

每个处理 URL 的分析工具都应用相同的解析规则。没有办法绕过它,也没有任何工具可以猜测您的意图或意图。编码步骤不是可选的;这是在查询字符串值中保留特殊字符的唯一方法。在与利益相关者共享或在营销活动中发布之前,请验证您的链接是否按预期工作。