outbound links 实测 27 个首页:546 条链接,到底链到了哪

outbound links 是 SEO 教程讲的那种链接,而首页干的事跟教程假设的不一样。我们解析了 27 个首页的全部锚点,数出 546 条链到别的公司的链接、散在 208 个域名上——36% 指向社交或视频平台,只有 14% 带任何 rel 限定符。

抓取与收录6 分钟读完1452 次阅读
outbound links 实测 27 个首页:546 条链接,到底链到了哪

实测 · 2026-09-15 · 27 个首页 · 546 条出站链接 · 单次抓取

样本与口径:沿用本系列自 2026-08-15 起的同一批 30 个站,2026-09-15 每个首页请求一次,桌面 Chrome UA、不执行 JavaScript。我们解析下发 HTML 里的每一个 <a> 标签,只保留 registrable domain 与本站不同的那些。下面每个数字都由落盘 HTML 重算,没有一个是手输的。

outbound links 就是 SEO 教程天天讲的那种链接,而首页干的事跟教程假设的完全不一样。27 个首页加起来链到别的公司 546 次,散在 208 个域名上。其中大约三分之一指向社交或视频平台,只有 14% 带任何 rel 限定符。编辑真正会当成出处引用的那种链接,是少数派。

我们是怎么测的

每个首页抓一次、存下最终下发的 HTML,然后遍历全部锚点元素。只有 registrable domain 与本站不同才算一条出站链接 —— 所以 stripe.com 上的 status.stripe.com 不算,而 stripe.com 上的 github.com 算。有 3 个域名对我们的客户端返回 403,剔除后剩 27 个。

curl -s -L --compressed \
  -A "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36" \
  https://example.com/ -o page.html

python3 -c "
from html.parser import HTMLParser
from urllib.parse import urlparse
class P(HTMLParser):
    def __init__(s):
        super().__init__(); s.h=[]; s.c=None
    def handle_starttag(s,t,a):
        if t=='a': s.c=dict(a).get('href','')
    def handle_endtag(s,t):
        if t=='a' and s.c is not None: s.h.append(s.c); s.c=None
p=P(); p.feed(open('page.html').read())
site='example.com'
for h in p.h:
    if h.startswith(('http://','https://')):
        d=urlparse(h).hostname or ''
        if d.split('.')[-2:] != site.split('.')[-2:]:
            print(h)
"

这套口径有两件事看不到。它读的是最终下发的 HTML,所以页面加载后由 JavaScript 注入的链接它看不见。另外它一个 <a> 只计一次,不区分页脚菜单里的链接和正文首段里的链接 —— 这两者对读者并不等价,在这份统计里却是等权的。

27 个首页的 outbound links 各有多少

首页出站链接的中位数是 13 条,分布拖得很长:最多的一页 84 条,最少的一页一条都没有。下表是整个面板,按条数排序。

站点出站域名数nofollow
theverge.com845556
nextjs.org74190
react.dev6490
mozilla.org50270
framer.com3090
shopify.com30237
supabase.com3070
ycombinator.com29270
slack.com26150
wired.com16135
vercel.com15120
github.com14120
webflow.com14140
netlify.com1390
arstechnica.com970
techcrunch.com998
wikipedia.org950
bbc.com630
stripe.com650
figma.com440
gitlab.com440
notion.com330
cloudflare.com220
nytimes.com210
railway.com220
substack.com110
reddit.com000

有一行值得停一下。reddit.com 的首页返回 200、8,397 字节 HTML,里面一条出站链接都没有。这不是坏页,这是一页的职责就是把你送进它自己的帖子里。第二个观察是 nofollow 那一列几乎全是零:27 个首页里只有 4 个给外链加了 nofollow,与 5,104 条链接上的 rel 分布是同一幅图景。

这些出站链接到底链到哪

前 15 个域名吃掉了 546 条里的 291 条,超过一半。排第一的不是什么出处或合作方,是一个视频平台。

目的地条数
youtube.com82
github.com30
x.com28
vercel.com28
instagram.com18
facebook.com12
linkedin.com12
twitter.com11
bsky.app10
tiktok.com9
shopify.dev8
condenast.com7
firefox.com7
mozillafoundation.org7
pmc.com7

按性质归堆,546 条里有 195 条、也就是 36%,指向社交或视频平台,光 YouTube 就占 82 条。再有一块指向同一家母公司下面的兄弟产品:nextjs.orgreact.dev 上排第一的出站目的地都是 vercel.com,康泰纳仕旗下几个站互相链来链去。几乎从不出现的,恰恰是 SEO 文章让你加的那种东西 —— 一个论点背后的原始出处。

这些链接落在页面的哪一块

同样是那 546 条,按包含它的 landmark 元素分。三个桶是重叠的:一个链接可能同时落在一个套在 main 里的 footer 里的 nav 里,所以这张表要读成「有多少条链接位于某个 footer 之内」,不能当成不重不漏的划分。

容器条数
在 <footer> 内269
在 <main> 或 <article> 内184
在 <nav> 内145

首页上一半的出站链接坐在页脚里,这与目的地那张表对得上:页脚正是社交图标住的地方。真正有意思的是正文里的那 184 条,而且它们集中在少数几个站 —— 像 react.dev 这种文档型首页,是从正文往外链它的生态,不是从页脚。

Google 官方到底要求了什么

Google 关于 outbound links 的说明比围绕它的争论窄得多。它只给了一条正常链接的指令,和其余三种情况用的三个值。

"For regular links that you expect Google to fetch and parse without any qualifications, you don't need to add a rel attribute." —— Google Search Central《Qualify your outbound links to Google》,2026-09-15 访问

它明确定义的三个值是:sponsored 用于广告与付费投放,ugc 用于用户生成内容,nofollow 用于其余你不想让 Google 把本站与之关联、也不想让它顺着爬的情况。在这批面板上,sponsored 只出现 2 次,ugc 一次都没有。

rel 值该用在哪面板上
不写正常编辑性链接468
nofollow你不想背书的链接76
sponsored广告与付费投放2
ugc评论与论坛内容0

把两个事实放在一起并不矛盾。首页的社交图标和兄弟产品链接既不是付费投放也不是用户内容,按 Google 那一页的说法它们本来就不需要任何属性。nofollow 缺席不是遗漏,是文档写明的默认。rel 该怎么选有一篇更长的写法,在 nofollow 与 dofollow 那一章。

这对你自己的页面意味着什么

有用的动作不是多加几条或者少加几条,而是搞清楚你手上这三种各有多少条 —— 它们承担的义务不一样。

  1. 用上面那条命令把页面上的外链列出来,逐条标成编辑性、付费、用户生成三类。
  2. 编辑性链接保持不加属性。给一条你真心背书的链接加 nofollow,等于白白扔掉一个信号;那里锚文本怎么选是另一件事,见 锚文本怎么写
  3. 凡是你收钱放上去的,加 sponsored;凡是访客写的,加 ugc。这部分是 Google 那一页写得最明确的地方。
  4. 单独再看一遍页脚。这些首页上一半的外链住在那里,而它恰恰是没人会重读的那一块。
  • 把出站链接当成一句关于你信任谁的声明。如果这句话你不会说出口,就别把它放进页脚。
  • 别为了「保住权重」给所有外链都加 nofollow。Google 那一页明说正常编辑性链接不需要属性,一刀切加 nofollow 是习惯,不是策略。

还有第二个理由,跟 PageRank 无关。AI 引擎选源时有一部分是在跟着「谁引用谁」走,一页肯标出自己出处的页面,比一页只链自家社交账号的页面更容易被放进那张关系图里。如果你的出站链接全是图标,你告诉爬虫的是你在哪儿发帖,不是你在读什么。AI 爬虫可达性检查能让你看到爬虫实际从这一页拿到了什么。

常见问题

你们是怎么测的?

2026-09-15 每个首页请求一次,桌面 Chrome UA、不执行 JavaScript、跟随跳转,响应按字节落盘。然后在落盘 HTML 里解析锚点,只计 registrable domain 与本站不同的那些。面板是本系列一直在用的同一批 30 个域;canva.com、medium.com、stackoverflow.com 对我们的客户端返回 403,剔除后剩 27 个。

出站链接到底是帮排名还是拖排名?

Google 那一页讲的是怎么给链接定性,没有讲它怎么影响排名,我们这次也没量排名。能说的只有更窄的一句:Google 文档里没有对普通编辑性链接的惩罚,同时它写明了非普通链接该用哪三个值。

nofollow 现在还管用吗?

那一页现在的措辞是这些值标记的链接「will generally not be followed」。我们没有测任何爬虫的实际行为,所以本文讲的全是 HTML 里声明了什么,不是任何引擎据此做了什么。

为什么 YouTube 排第一?

因为页脚放一排社交图标是标准做法,而视频频道是其中一格。那 82 条 YouTube 链接里到底有几条真被读者点过,我们答不上来,我们数的只是声明。

加出站链接能让 AI 引用我吗?

我们没有「外链多的页面被引更多」的数据,也不打算这么宣称。站得住的版本更弱一点:一条指向出处的出站链接,是一句机器可读的、关于某个说法来自哪里的陈述,而这正是引用系统能用的信息。

outbound links 实测 27 个首页:546 条链接,到底链到了哪