要统计 LookWorldPro 在 Telegram 的引流,就把“谁来、从哪里来、做了什么”拆成三步:用独立落地页+UTM追溯外部点击,借助 Telegram 的邀请链接与 Bot 的 start 参数追踪入群与首交互,再把关键事件回传到 GA/服务器或 BI 做归因与可视化,从而把所有渠道和转化连成一张能看得懂的图。


先把问题说清楚:我们到底要统计什么?
如果用一句话描述统计目标,会是这三件事:
- 来源识别:用户是从哪个渠道、哪条内容、哪次投放点进来的?
- 行为跟踪:进入 Telegram 后,用户是否完成关键动作(关注、入群、点击外链、启动 Bot、下单、注册等)?
- 归因与分析:这些行为如何被关联回投放活动,便于评估和优化?
这就是本文的线索:把“谁来、从哪里来、做了什么”拆开,再把它们拼回来。
核心思路(用费曼法把它讲简单)
把统计想成三块拼图:进入通路(外部点击或 Telegram 内部链接)→ 识别用户(落地页 Cookie / Bot start / 邀请链接)→ 关键事件(服务器/GA/BI 的 conversion)。只要每块都能识别一个“ID”或“标记”,最终就能把行为连起来。
1)进入通路:外部点击优先走落地页
凡是你可以控制的外部投放(社媒广告、邮件、Landing Page、联盟),*先把用户导到你自有域名的落地页*,并在链接上附加 UTM 参数或点击 ID(cid)。理由是:Telegram 本身的统计能力有限,自己的落地页可以把数据直接送进 Google Analytics、Mixpanel、内部数据库。
- 示例 UTM:?utm_source=telegram&utm_medium=channel&utm_campaign=spring_sale&utm_content=button1
- 落地页要做的事:写 cookie(或 localStorage)保存点击 id;展示引导按钮把用户引回 Telegram(或让用户完成注册/下单)。
2)进入 Telegram:两条可靠链路
在 Telegram 内部,有两种常见的“可追踪”方式:
- Bot deep link(最可靠):t.me/YourBot?start=ref123。当用户点击后并启动 Bot,Bot 会收到 /start 参数(ref123),服务器记录这个 ref,并与用户账号绑定,后续发生的事件即可归因。
- 邀请链接(campaign-specific invite links):为每个投放渠道或内容生成专用的邀请链接(joinchat/… 或 channel invite)。Telegram 的群/频道管理里可以看到每个邀请链接的加入情况(每个链接分别统计加入数),这对衡量哪个外部渠道带来的入群最有效非常有帮助。
两者结合:外部落地页先写 cookie,落地页按钮指向 Bot deep link,Bot 启动时把 cookie(或用 start 参数)和 Bot 会话绑定,这样既能捕获外部点击,也能追踪入群与首次交互。
工具清单:你会用到哪些技术 / 服务
- 落地页 + UTM:GA4 / Universal Analytics、Matomo、Mixpanel。
- 短链工具:Bitly、Rebrandly、ClickMeter(用于隐藏真实链接、统计点击量、A/B 测试短链文案)。
- Telegram 功能:Bot API、Deep links(start 参数)、邀请链接管理、频道统计面板(有的频道会显示增量与阅读数据)。
- 后台服务:一个中间接口(接收 Bot / 落地页事件)、数据库(记录 click_id ↔ telegram_user_id)、BI 工具(Looker、Metabase、Data Studio)。
把流程具体化:从投放到归因的实现步骤(实践清单)
步骤 A:落地页端(每次投放都要这样)
- 为投放生成带 UTM 的目标链接,例如:https://yourdomain.com/landing?utm_source=telegram&utm_medium=channel&utm_campaign=camp1&utm_content=buttonA
- 用户点击落地页后写入 cookie(click_id),同时把页面上用于返回 Telegram 的按钮指向 Bot 深链接,示例:t.me/YourBot?start=CLICKID_abcdef。
- 在落地页显示一个“同时在浏览器完成 XX 或跳回 Telegram”的清晰 CTA,降低阻力。
步骤 B:Bot 端(把 click 与 telegram user 绑起来)
- Bot 接收到 /start 参数后,把参数与 Telegram 的 user_id、timestamp、消息 id 等写入你的后端 API。
- 后端把这条记录与落地页的 click_id 做匹配(如果你在 start 参数里直接传 click_id,就能直接关联)并写入用户表。
- 示例流程:用户点击→落地页写 cookie 并生成 t.me/YourBot?start={click_id}→用户启动 Bot→Bot 把 start 参数发到后端→后端把 click 记录标记为已转化或已接触。
步骤 C:邀请链接与入群统计(渠道级别)
- 为每种渠道或广告位生成独立的邀请链接(Invite Links)。例如:一个用于 Facebook,一 个用于 Reddit,一 个用于电商详情页,引流到同一群或频道。
- 在 Telegram 群/频道管理界面查看每个邀请链接的加入数(管理员面板中通常能看到按链接的加入统计),把这些数据导出或定期截图入库。
- 注意:邀请链接能直观反映“入群”效果,但通常无法反映入群后具体行为(需要 Bot 或落地页配合)。
步骤 D:关键事件与归因(把行为连起来)
关键是把“点击 ID / UTM / invite link / bot start 参数 / 注册用户 ID”串成一条链:
- 当用户在你的站点注册或下单,后端把请求中的 click_id/UTM 一并记录到用户 profile/订单记录。
- 如果用户来自 Telegram 并通过 Bot 发生交互,Bot 把所有事件(按钮点击、表单提交、订单 id)上报到后端。
- 后端把这些事件写进数据仓库,按 campaign/utm/source 汇总转化率、CPA、LTV 等指标。
比较各种方法的优缺点(表格)
| 方法 | 可追踪粒度 | 优点 | 缺点 |
| 落地页 + UTM | 外部点击 → 页面事件 | 稳定、支持 GA/BI、可做 A/B | 用户需要离开 Telegram,路径更长 |
| Bot start 参数 | 精确到个人(user_id) | 最可靠,能绑定用户 ID 并追踪后续行为 | 需要用户启动 Bot,有接触门槛 |
| Invite links(多链接) | 渠道级入群数 | 直观、易生成,适合对比不同渠道 | 无法追踪入群后的详细行为 |
| 短链统计(Bitly 等) | 点击量级别 | 简单、可隐藏真实链接、可做 CTA 测试 | 点击不等于转化,可能被代理/机器人放大 |
命名与参数规范(避免混乱的关键)
一个清晰的命名规范能省下大量排查时间,建议采用固定模板:
- UTM 规范:utm_source=telegram、utm_medium=channel|group|dm、utm_campaign=product_2026_q2、utm_content=buttonA_early。
- Start 参数:start={campaign}_{channel}_{clickid},例如 start=camp1_ig_20260615_abc123(便于解析)。
- Invite link 命名:在管理表中保留字段:link_id、owner_campaign、created_by、expires_at、notes。
数据仓库与看板设计(把信息变成可行动的洞察)
数据入库后,至少要能回答这些问题:
- 每个 campaign 带来了多少点击、入群、注册、付费?
- 从点击到首次付费的转化路径平均多久?
- 不同内容(图片、文字、按钮)哪种点击/转化更高?
建议的看板字段:
- 来源(utm_source / invite_link / bot_start)
- 曝光/发送量(如果可得)
- 点击数(短链 / 落地页)
- 入群数(invite link)
- 第一次交互(Bot)
- 转化数(注册/下单)与 CPA
- 留存 / LTV(长周期视角)
常见问题与陷阱(别等到数据异常才想起)
- 问题:“点击量很大,但入群/转化很少”,可能原因:跳转链路长、按钮不明显、Bot 体验差或落地页加载慢。
- 问题:“邀请链接显示加入数和后端用户数不一致”,可能原因:多人通过同一链接加入但未完成验证/注册,或 Telegram 的加入统计有延迟。
- 问题:“Bot start 参数被篡改或伪造”,应对:在后端验证参数格式并为每次 click 生成一次性 token(短期有效)。
- 隐私与合规:收集用户数据时告知用途并遵守 GDPR/当地法规,Bot 与落地页上要有明确隐私声明。
示例:一个真实感的引流并统计的简化实现
想象一个促销活动流程:
- 你在 Instagram 发布图文,按钮指向:https://yourdomain.com/offer?utm_source=instagram&utm_medium=story&utm_campaign=lookworld_summer
- 落地页写入 click_id=inst_20260620_xxx 并显示“点击这里在 Telegram 领取优惠”按钮,按钮链接:t.me/LookWorldBot?start=inst_20260620_xxx。
- 用户点击并打开 Bot,Bot 将 /start 参数上报到后端;后端把该参数与 click 的 cookie 做关联,记录 user_id、click_id、utm 信息。
- 用户领取优惠并在 Bot 中提交手机号或跳回站内下单,所有事件(领取、下单)在后端都带有 click_id,入库后 BI 把这次活动的 CPA、转化率、LTV 等指标计算出来。
对不同场景的细化建议(快速参考)
1. 目标是增加“入群人数”
- 优先使用多 invite links,比对哪个渠道更高效;
- 在落地页与短链中明确引导“点击后请确认加入”;
- 对高价值渠道设置一次性优惠或专属欢迎消息,便于归因。
2. 目标是促成首单(电商)
- 尽量把交易留在你自己的域名(落地页→下单),用 UTM 追踪;
- 如果要用 Bot 下单,Bot 必须把订单信息同步到后端,并回传 transaction id 给 BI。
- 给 Bot 用户生成独立优惠码(绑定 start 参数),这样每笔订单都能精确归因。
3. 目标是 App 安装与激活
- 使用移动归因平台(Branch/AppsFlyer)做深度链接,确保从 Telegram 到应用商店再到激活都能串联;
- 结合 Bot 让用户在 Telegram 内确认安装意图(或提供扫码下载),并在安装后通过安装回调把归因信息写回。
质量控制与验收(每次投放后的 QA 步骤)
- 检查落地页点击是否写入 click_id(随机抽样);
- 测试 Bot start 流程:用测试 click_id 触发 Bot,检查后端是否收到了 start payload 并能关联到 click 记录;
- 校验 invite link 加入数与后端新增用户数(同一天)是否大致匹配;
- 对关键路径(click→start→注册→付费)做端到端测试并记录时间戳,用于后续延迟分析。
一些小技巧(实战里的微调,让数据更靠谱)
- 为长期活动使用短期有效的 start token,减少被复用或伪造的风险;
- 把短链和 UTM 结合:短链跳转到带 UTM 的落地页,既好看又能统计;
- 给高投入渠道设置专属 invite link 或优惠码,便于通过数量化方式评估 ROI;
- 定期导出 Telegram 的 invite link 加入统计(截图或 API,如果可用),作为离线核对数据的证据链。
写到这里,脑子里还在想着一个细节:Bot 的设计别把所有逻辑放在客户端(Bot)上,关键的归因和财务数据都要落到后端数据库里,才能在 BI 中稳定复现。就像前面说的,把“谁来、从哪里来、做了什么”每一块都贴上标签,最后把标签拼到一起看,这才是可操作的统计。