← 返回博客
追踪打开率点击率分析
邮件打开率与点击追踪:原理、实现与隐私
追踪像素和点击链接的实现原理、Rovela 内置追踪、Apple MPP 对打开率的影响。
更新于 2026年10月12日
邮件打开率与点击追踪:原理、实现与隐私
打开率和点击率是衡量邮件效果的基础指标,但它们的实现原理和局限性值得深入了解。
打开追踪的原理
打开追踪通过在邮件 HTML 里嵌入一个 1×1 像素的透明图片实现。当用户打开邮件加载图片时,请求打到追踪服务器,记录一次打开:
<img src="https://track.yourdomain.com/open?eid=abc123" width="1" height="1" style="display:none;" />
// 追踪服务器
app.get('/open', async (req, res) => {
const { eid } = req.query;
await db.query('UPDATE emails SET opened_at = NOW() WHERE id = $1', [eid]);
// 返回 1×1 透明 GIF
res.set('Content-Type', 'image/gif');
res.send(Buffer.from('R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7', 'base64'));
});
点击追踪的原理
把邮件里的链接替换成追踪链接,点击时先经过追踪服务器记录,再重定向到目标 URL:
// 追踪服务器
app.get('/click', async (req, res) => {
const { eid, url } = req.query;
await db.query(
'INSERT INTO email_clicks (email_id, url, clicked_at) VALUES ($1, $2, NOW())',
[eid, url]
);
res.redirect(302, decodeURIComponent(url));
});
Rovela 的内置追踪
Rovela 支持自动追踪打开和点击,并通过 Webhook 推送事件。不需要自己实现上面的逻辑:
// Rovela webhook 事件类型:
// email.opened, email.clicked, email.delivered, email.bounced, email.complained
打开率的局限性
- Apple Mail Privacy Protection(iOS 15+):预加载所有邮件图片,打开率虚高
- 图片默认关闭:Outlook 用户不加载图片,打开不被记录
- 实际打开率通常比数据高 15-20%(未加载图片的用户)
不要单独用打开率评估效果,结合点击率和转化率一起看。