> ## Content Index
> Fetch the complete content index at: https://tbbbk.com/llms.txt
> Use this file to discover other available public pages before exploring further.

# Ghost CMS 博客接入 Umami 流量分析完整教程：比 Google Analytics 好用在哪？（2026）
- URL: https://tbbbk.com/ghost-cms-umami-analytics-setup-guide-vs-google-analytics-2026/
- Published: 2026-05-25T10:27:35.000Z
- Updated: 2026-05-25T10:27:35.000Z
- Description: 从零讲清楚 Ghost 博客接入 Umami 的完整流程，Cloud 版和自托管两种方案都有。对比 GA4 的核心差异、高阶配置技巧、真实踩坑经验，博主自用一年的真实感受。
- Author: TuBaiBai
- Tags: Ghost, Umami, 流量分析, 建站, 博客运营, #Import 2026-07-20 07:13

我的博客 tbbbk.com 从上线第一天就没装 Google Analytics。原因很简单——GA4 的界面复杂得像一架战斗机仪表盘，GDPR 合规问题一大堆，国内用户打开还可能因为 Google 被墙而导致追踪脚本超时拖慢页面速度。

后来我换成了 Umami，自托管在一台 VPS 上。用了一年多，数据干净，界面清爽，API 直接拿来写自动化脚本拉数据——这篇文章就是把我的整套接入流程原封不动地写下来，Ghost 博主应该都能用上。

---

## Umami 是什么？为什么 Ghost 博主应该用它？

Umami 是一个开源的网站分析工具，定位是 Google Analytics 的隐私友好替代品。核心卖点：

- **完全开源**，自托管数据不出服务器
- **无 Cookie**，天然 GDPR 合规，不需要烦人的 Cookie 横幅
- **轻量**，追踪脚本只有约 2KB，不拖慢页面
- **界面极简**，PV、UV、跳出率、来源、设备一屏全展示
- **API 齐全**，可以用脚本自动拉数据做报表

和 Ghost CMS 的搭配尤其合适，因为：

1. Ghost 支持在 `Code injection` 里注入任意 `<head>` 脚本，Umami 追踪脚本两行代码就搞定
2. Ghost 的 Membership / Newsletter 场景可以结合 Umami 自定义事件追踪订阅转化
3. 两者都是"博主自主掌控"的哲学——数据归自己，不依赖第三方平台

---

## 方案选择：Umami Cloud 还是自托管？

开始之前先确认一件事：你要用 **Umami Cloud（官方托管）** 还是 **自己在 VPS 上搭**？

| 对比项    | Umami Cloud         | 自托管                |
| ------ | ------------------- | ------------------ |
| 上手难度   | ⭐ 注册即用              | ⭐⭐⭐ 需要配置服务器        |
| 月费     | 免费 10 万 PV/月；超出按量收费 | VPS 成本（10-30 元/月起） |
| 数据主权   | 存在 Umami 服务器        | 完全自己掌控             |
| 国内访问速度 | 取决于服务器位置            | 取决于你的 VPS 位置       |
| API 访问 | 支持                  | 支持                 |
| 适合人群   | 新手、流量 <10W/月        | 追求数据自主、技术党         |

**我的建议：**

- 刚起步的博客，PV 还不大，**先用 Umami Cloud**，免费额度完全够用，省去折腾时间。
- 月 PV 超过 10 万，或者对数据隐私要求高，**自托管性价比更高**。

我自己用的是自托管方案，部署在单独的 VPS 上，域名是 stats.nkkk.de。下面两种方案都讲。

---

## 方案一：Umami Cloud 快速接入（5 分钟搞定）

### 第一步：注册账号，添加网站

1. 打开 <https://umami.is>，点击右上角 **Get started**，注册账号
2. 登录后进入 Dashboard，点击 **Add website**
3. 填入你的博客域名（比如 `tbbbk.com`），随便起个名字
4. 点击保存后，点击网站右边的 **Edit** 按钮

### 第二步：拿到追踪代码

在 **Tracking code** 标签下，你会看到类似这样一段代码：

```html
<script defer src="https://cloud.umami.is/script.js" data-website-id="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"></script>
```

这里的 `data-website-id` 是你这个网站的唯一标识，复制整段代码备用。

### 第三步：注入到 Ghost

1. 登录你的 Ghost 后台（`yourdomain.com/ghost`）
2. 左侧菜单点击 **Settings**（设置）
3. 找到 **Code injection**（代码注入）
4. 把追踪代码粘贴到 **Site Header** 那个框里

```html
<script defer src="https://cloud.umami.is/script.js" data-website-id="你的网站ID"></script>
```

1. 点击 **Save** 保存

完成。等 5-10 分钟，打开自己的博客，回到 Umami Dashboard，就能看到实时数据了。

💡 **提示：** 如果你在国内有读者，Cloud 版本的脚本可能被广告拦截器屏蔽。可以考虑自托管 + 自定义域名来绕过（见后文）。

---

## 方案二：VPS 自托管 Umami（Docker 版）

这是我自己在用的方案，推荐有一台 VPS 的技术博主跟着做。

### 环境要求

- 一台 Linux VPS（推荐 1 核 1G 内存起步）
- 已安装 Docker 和 Docker Compose
- 一个子域名（比如 `stats.yourdomain.com`），已解析到 VPS IP

### 第一步：Clone 项目，配置数据库

```bash
git clone https://github.com/umami-software/umami.git
cd umami
```

复制一份环境变量配置文件：

```bash
cp .env.example .env
```

编辑 `.env`，配置数据库连接（用 Docker Compose 的话，直接用默认配置就行）：

```bash
DATABASE_URL=postgresql://umami:umami@db:5432/umami
```

### 第二步：用 Docker Compose 启动

Umami 官方仓库自带 `docker-compose.yml`，直接跑：

```bash
docker compose up -d
```

第一次启动会自动创建数据库表，并生成默认账号：

- 用户名：`admin`
- 密码：`umami`

⚠️ **重要：** 启动后第一件事是登录改密码，别留默认密码在服务器上。

默认跑在 `http://localhost:3000`，需要用 Nginx 反向代理到你的子域名。

### 第三步：Nginx 反向代理配置

假设你的子域名是 `stats.tbbbk.com`，在 Nginx 里新建一个配置文件：

```nginx
server {
    listen 80;
    server_name stats.tbbbk.com;

    location / {
        proxy_pass http://127.0.0.1:3000;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}
```

然后用 Certbot 申请 SSL 证书（HTTPS 必须的）：

```bash
certbot --nginx -d stats.tbbbk.com
```

### 第四步：在 Umami 后台添加网站，生成追踪脚本

流程和 Cloud 版一样：登录 Umami 后台 → Add website → 填域名 → 拿到 `<script>` 代码。

区别在于，你的脚本 src 指向的是你自己的服务器：

```html
<script defer src="https://stats.tbbbk.com/script.js" data-website-id="你的网站ID"></script>
```

### 第五步：注入到 Ghost

和 Cloud 版完全一样，粘贴到 **Settings → Code injection → Site Header**，保存。

---

## 高阶配置：让追踪更精准

光装上去只是开始，下面这些配置能让数据更干净。

### 只追踪生产环境（避免测试数据污染）

如果你本地也有 Ghost 开发环境，可以用 `data-domains` 只追踪正式域名：

```html
<script
  defer
  src="https://stats.tbbbk.com/script.js"
  data-website-id="你的网站ID"
  data-domains="tbbbk.com,www.tbbbk.com"
></script>
```

这样即使本地访问也不会把数据打进去。

### 追踪自定义事件：订阅按钮点击

Ghost 博客一般都有 Newsletter 订阅按钮，这个转化数据很关键。可以用 Umami 的事件追踪来记录：

```html
<!-- 在 Ghost 的 Code injection 里，Site Footer 注入 -->
<script>
  document.addEventListener('DOMContentLoaded', function () {
    // 追踪订阅按钮点击
    const subscribeBtn = document.querySelector('.gh-subscribe-btn');
    if (subscribeBtn) {
      subscribeBtn.addEventListener('click', function () {
        umami.track('subscribe-click', { location: 'header' });
      });
    }
  });
</script>
```

在 Umami 的 Dashboard → Events 里就能看到每天有多少人点了订阅按钮。

### 开启 Core Web Vitals 追踪

Umami v3.1.0 开始支持自动收集 LCP、CLS、FID 等性能指标，只需加一个参数：

```html
<script
  defer
  src="https://stats.tbbbk.com/script.js"
  data-website-id="你的网站ID"
  data-performance="true"
></script>
```

这对优化 Ghost 博客 SEO 性能很有用，可以直接在 Umami 里看到每个页面的加载性能分布。

---

## Umami 与 Google Analytics 4 的核心差异

用了 GA4 再换过来的朋友，第一感受一般是：**Umami 要简单太多了。**

| 功能点       | Google Analytics 4 | Umami            |
| --------- | ------------------ | ---------------- |
| 学习成本      | 极高，需要理解事件模型        | 极低，开箱即用          |
| 数据实时性     | 延迟约 24-48 小时       | 近实时              |
| GDPR 合规   | 需要额外配置 Cookie 弹窗   | 原生无 Cookie       |
| 脚本体积      | \~90KB+            | \~2KB            |
| 对国内读者速度影响 | 大（Google 服务器）      | 小（可自托管国内 VPS）    |
| 数据归属      | Google             | 完全自己             |
| API 访问    | 复杂，OAuth2 授权       | 简单，API Key 直接调用  |
| 自定义报表     | 支持，但复杂             | 支持 Board 功能      |
| 免费额度      | 免费（但数据归 Google）    | Cloud 版 10W PV/月 |

对于独立博客来说，我不需要 GA4 那套复杂的漏斗分析和广告转化追踪。我只需要知道：今天多少人来了，哪篇文章最受欢迎，流量从哪来，用什么设备。Umami 全都有，而且一眼就能看清楚。

---

## 常见问题与避坑

### 数据一直不出现怎么办？

打开浏览器开发者工具（F12）→ Network 标签，过滤 `umami` 或你的域名，看看请求有没有发出去。

常见原因：

1. **广告拦截器屏蔽了脚本**：用浏览器无痕模式试试，或者换一个自定义域名作为脚本 URL
2. **Ghost 缓存没刷新**：改完 Code injection 后等几分钟，清一下浏览器缓存
3. **Nginx 配置有误**：自托管方案检查一下 Nginx 日志 `tail -f /var/log/nginx/error.log`

### 我自己访问博客的数据要不要排除？

Umami 支持在本地浏览器里关闭追踪自己，方法是在 Console 里执行：

```javascript
// 开启自我排除（在你自己电脑的浏览器开发者工具里运行）
localStorage.setItem('umami.disabled', '1');
```

之后在这台电脑上访问博客就不会被记录了。

### Umami Cloud 的免费额度够用吗？

每月 10 万 PV 免费。日均 3000 PV 左右的博客完全够用。超过了可以考虑升级付费计划，或者迁移到自托管。

---

## 我的真实数据：Umami 用了一年的感受

说几个我自己在用时感受最深的点：

**数据干净。** 因为没有 Cookie，少了很多 bot 流量混进来的情况。Umami 默认会过滤掉部分爬虫，展示的基本都是真实人类访客。

**查历史数据快。** 想看上周某篇文章的流量，直接调时间范围，两秒出来。GA4 里同样操作要点好多层。

**API 极好用。** 我现在用 Python 脚本每天自动拉数据做汇总，就几行代码，根本不用搞 OAuth2。这对想做数据自动化的博主来说是真正的生产力提升。

**缺点也有：** 高级功能比 GA4 少，比如多渠道归因、用户 ID 追踪这些。但对 90% 的独立博主来说，这些功能根本不需要。

---

## 总结

一句话：**如果你是 Ghost 博主，用 Umami 替代 GA 的迁移成本极低，数据更干净，体验更好。**

完整流程只有三步：

1. 注册 Umami Cloud 或自托管搭建实例
2. 在 Umami 里添加网站，拿到追踪脚本
3. 粘贴到 Ghost 后台 Settings → Code injection → Site Header