Hướng dẫn về Speculation Rules API
Điều gì đó Speculation Rules API (prefetch và prerender) thực ra là, liệu điều này ảnh hưởng SEO, crawling, hoặc thứ hạng, và cách implement điều này không có inflating của bạn analytics.
Ngôn ngữ
Đó Speculation Rules API là một Chromium trình duyệt feature (Chrome/Edge 109+) đó lets một site tell đó trình duyệt để prefetch (download đó HTML document) hoặc prerender (fully load và render trong an invisible tab) giống nhau-site các trang trước một khách truy cập clicks — so đó tiếp theo navigation feels near-instant. Prefetch pays xuống TTFB; prerender additionally pays xuống FCP và LCP. Điều này không phải một crawling, lập chỉ mục, hoặc xếp hạng mechanism — Googlebot không cần tài nguyên hints như này và Google publishes không Tìm kiếm tài liệu on điều này. Google Search itself dùng đó API để prefetch của nó top kết quả, và Ray-Ban reported lớn conversion và LCP gains từ prerendering, so đó real giá trị là Core Web Vitals và UX cho thực tế khách truy cập. Đó big risk để manage là analytics: một speculated trang đó fires một pageview trước người dùng sees điều này sẽ inflate GA4 trừ khi đó tracking kiểm tra document.prerendering. WordPress 6,8 ships một conservative, prefetch-chỉ version on theo mặc định cho logged-out người dùng.
Tóm tắt — Speculation Rules API lets của bạn trang web tell Chrome hoặc Edge để load tiếp theo trang khách truy cập là có khả năng để nhấp — âm thầm, trong background — trước khi họ nhấp nó. Khi họ làm nhấp, trang có thể xuất hiện gần như instantly. nó speed feature cho thực mọi người sử dụng Chromium các trình duyệt. nó làm không help Google crawl hoặc xếp hạng của bạn trang web, nhưng nó có thể làm các trang feel nhanh hơn, mà là good cho người dùng (và, indirectly, cho Core Web Vitals).
Điều gì nó là
Thông thường, khi bạn nhấp một link, đó trình duyệt bắt đầu fetching đó trang từ scratch — và bạn chờ. Đó Speculation Rules API lets một site nhận một head bắt đầu: điều này tells đó trình duyệt “the visitor will probably go here next, so start getting it ready now.” (bản dịch) «đó khách truy cập sẽ probably go ở đây tiếp theo, so bắt đầu getting điều này ready hiện tại.» Khi đó nhấp finally happens, đó trình duyệt swaps trong đó trang điều này đã prepared thay vì starting over.
Có hai versions of “getting it ready,” (bản dịch) «getting điều này ready,» và đó khác biệt matters:
- Prefetch — trình duyệt âm thầm downloads tiếp theo trang HTML trong background. Nhẹ hơn weight, thấp hơn risk.
- Prerender — trình duyệt fully loads và renders tiếp theo trang trong invisible tab, đang chạy của nó JavaScript và mọi thứ. Heavier, nhưng trang có thể xuất hiện truly instantly. Riskier, so bạn sử dụng nó sparingly.
Bạn set này lên với một nhỏ block of JSON on trang của bạn. Bạn có thể list chính xác URLs, hoặc tell đó trình duyệt “prepare any link the visitor hovers over.” (bản dịch) «prepare bất kỳ link đó khách truy cập hovers over.»
Làm nó help SEO?
Ngắn version: không way mọi người hope. nó sẽ không nhận bạn được crawl hoặc được lập chỉ mục nhanh hơn. Googlebot không cần điều này — nó feature cho human khách truy cập trong Chrome và Edge, không Đối với tìm kiếm bots.
Điều gì nó có thể làm là làm của bạn các trang feel nhanh hơn sau khi ai đó là đã on của bạn trang web, clicking khoảng. Nhanh hơn thực-world experiences feed vào Core Web Vitals, mà là (modest) tín hiệu xếp hạng — và, nhiều hơn importantly, nhanh hơn các trang tend để convert tốt hơn. Ray-Ban, ví dụ, reported big jump trong conversions sau khi prerendering sản phẩm các trang.
một điều để watch out cho
của bạn phân tích có thể lie để bạn. nếu trình duyệt prerenders trang trước khi khách truy cập bao giờ sees nó, và đó trang fires “pageview” moment nó loads, của bạn phân tích sẽ count visit đó không bao giờ happened. Google phân tích 4’s own script xử lý điều này correctly on của nó own — nhưng nhiều khác tags và pixels không, và họ’ll log phantom pageviews trừ khi nhà phát triển patches them.
nếu bạn’re on WordPress 6,8 hoặc sau đó, bạn đã có safe, conservative version của điều này turned on theo mặc định (prefetch chỉ, cho logged-out khách truy cập). bạn đã không có để làm bất cứ điều gì — nó nghĩ ra với cập nhật.
Muốn đó đầy đủ picture — prefetch so với. prerender trong detail, eagerness levels, đó “never prerender this” (bản dịch) «không bao giờ prerender này» list, và cách sửa đó analytics vấn đề? Chuyển để đó Advanced tab.
Tóm tắt — Speculation Rules API (Chromium, Chrome/Edge 109+) lets trang web declare — trong JSON, inline hoặc qua
Speculation-Rulesheader — mà giống nhau-trang web các URL trình duyệt nên prefetch (download document; pays xuống TTFB) hoặc prerender (fully fetch, render, và chạy JS trong invisible tab; pays xuống TTFB + FCP + LCP). Eagerness (immediate/eager/moderate/conservative) controls Khi rule fires, tách biệt từ mà các URL nó targets. nó là không crawling/lập chỉ mục/xếp hạng mechanism — Googlebot không rely on tài nguyên hints như điều này (theo Illyes’ Feb 2026 comments on hints generally) và Google publishes không Tìm kiếm tài liệu on nó. nhưng Google Search itself dùng nó để prefetch của nó top kết quả, và Ray-Ban reported lớn conversion + LCP wins, so payoff là thực cho thực tế khách truy cập qua Core Web Vitals và UX. Biggest gotchas: phân tích double-counting (khắc phục vớidocument.prerendering/prerenderingchange), state-thay đổiGETcác URL (logout, thêm-để-cart) bạn phải không bao giờ speculate, và Chromium-chỉ hỗ trợ. Bắt đầu với prefetch broadly; thêm prerender để một hoặc hai cao-confidence các trang tại phần lớn.
Điều gì Speculation Rules API thực ra là
Speculation Rules API
là trình duyệt API — Chromium chỉ — đó lets trang web tell trình duyệt mà
giống nhau-trang web các trang để prepare trước khi khách truy cập clicks. Theo MDN, API là designed
để improve performance cho tương lai navigations, và vì nó targets document các URL
thay vì riêng lẻ tài nguyên files, nó làm hợp lý cho multi-trang các trang rather
hơn single-trang apps. nó supersedes old, deprecated, Chrome-chỉ
<link rel="prerender"> và goes beyond widely-khả dụng <link rel="prefetch">
với nhiều hơn expressive JSON syntax.
Rules là declared as JSON, either inline trong <script type="speculationrules">
block hoặc qua
Speculation-Rules
HTTP phản hồi header. họ có thể list rõ ràng các URL hoặc auto-match links on trang
qua where/href_matches conditions (được gọi là document rules).
có hai speculative actions, và getting phân biệt right là toàn bộ game:
- Prefetch downloads phản hồi thân phản hồi của referenced trang — nhưng không của nó subresources. nó pays xuống tiếp theo trang TTFB.
- Prerender fetches, renders, và loads trang vào invisible trong-memory tab: all subresources, all JavaScript, ngay cả dữ liệu fetches kicked off by JS. Theo MDN, tương lai navigations để prerendered trang là near-instant. nó pays xuống TTFB và FCP và LCP — nhưng nó far nhiều hơn expensive và riskier.
Harry Roberts’ shorthand trong his layered-approach ghi-lên captures nó well: prefetch là cho paying xuống TTFB, prerender là cho LCP.
Một dưới-covered kỹ thuật nuance: speculated các tài nguyên land trong trình duyệt
memory bộ nhớ đệm, mà là quicker để retrieve hơn HTTP bộ nhớ đệm older
<link rel="prefetch"> hint dùng. và prefetched hoặc prerendered document cũng
populates HTTP bộ nhớ đệm, so ngay cả speculation khách truy cập không bao giờ dùng không phải pure
waste — sau đó navigation có thể vẫn benefit.
Eagerness: Khi để speculate, tách biệt từ mà các URL
genuinely clever design lựa chọn ở đây là đó eagerness là tách biệt lever từ targeting. Barry Pollard Chrome blog post on API improvements frames nó as separating Khi để speculate từ mà các URL để speculate on. có four levels:
immediate— speculate as soon as rules là seen (on trang load).eager— bắt đầu on slightest tín hiệu.moderate— khoảng 200ms hover (hoặc pointerdown on touch).conservative— pointer- hoặc touch-xuống, i.e. khách truy cập có all nhưng đã nhấp.
Treat những điều này four trigger definitions as Chrome hiện tại heuristics, không fixed
spec — Chrome có changed chính xác mobile triggers nhiều hơn sau khi (nó moved
moderate để viewport-based heuristics và adjusted eager’s timing as recently as
January 2026), so re-kiểm tra trực tiếp tài liệu trước khi quoting chính xác millisecond hoặc
percentage ngưỡng trong của bạn own implementation notes.
Hai related refinements worth knowing: No-Vary-Search lets trình duyệt reuse
được lưu đệm document đó differs chỉ by ignorable parameters (e.g. UTM-tagged variants
của giống nhau trang), và newer prerender-until-script pattern (covered by
CoreWebVitals.io)
offers middle ground giữa đơn giản prefetch và đầy đủ prerender — as của điều này
writing nó vẫn experimental, không-generally-khả dụng hành động đang chạy trong
Chrome origin trial, không shipped default.
Chrome own guardrails
Bạn có thể’t accidentally nuke khách truy cập device với over-rộng rule. Chrome
prerender tài liệu
sets hard, FIFO caps regardless của bạn configuration: cho immediate-eagerness
rules, 50 prefetches và 10 prerenders; cho interaction-based (moderate/
conservative) rules, 2 slots. Chrome cũng xử lý prerender as hint và
progressive enhancement, không bảo đảm — nó có thể decline dựa trên người dùng
settings hoặc tài nguyên constraints — và nó sẽ không render cross-origin iframes on
prerendered trang cho đến khi activation. được xây dựng-trong quyền riêng tư guard cũng chặn cross-trang web
prefetches Khi người dùng đã có cookies đặt cho đích trang web.
Cross-origin rules, và Điều gì thực ra happens bên trong prerendered trang
Theo MDN, prerendering là restricted để giống nhau-origin documents theo mặc định.
Cross-origin, giống nhau-trang web prerendering là có thể, nhưng chỉ nếu đích trang
opts trong với Supports-Loading-Mode: credentialed-prerender phản hồi header —
cross-trang web prerendering không phải có thể tại all as của điều này writing. Cross-trang web
prefetch là nhiều hơn permissive (giống nhau-trang web và cross-trang web prefetches cả hai hoạt động), nhưng
vẫn gated by không-cookies-đặt quyền riêng tư rule trên; rộng hơn cross-trang web prefetch
opt-trong qua Supports-Loading-Mode là được ghi lại as planned nhưng không tuy vậy shipped.
Bên trong hidden tab, prerendering trang không phải thông thường trang load: intrusive APIs
(alert()/confirm()/prompt(), requestFullscreen(), Navigator.share()) là
blocked hoặc đã bỏ qua, async APIs như geolocation và getUserMedia() là deferred
cho đến khi activation, và cross-origin iframes và worker scripts không chạy cho đến khi sau đó
either. Session storage nhận special xử lý worth knowing nếu của bạn trang đọc nó
on load: prerendering trang bắt đầu với clone của tab session storage,
và đó clone là discarded trong favor của thực tab storage tại activation — so
kiểm thử bất kỳ session-storage-phụ thuộc logic cả hai trước khi và sau khi
prerenderingchange event, không chỉ on thông thường load. cho timing, document.prerendering
và prerenderingchange tell bạn state và activation moment;
PerformanceNavigationTiming.activationStart cho bạn thực tế elapsed time
giữa prerender bắt đầu và activation nếu bạn muốn để đo lường nó.
Làm Speculation Rules API ảnh hưởng SEO, crawling, hoặc thứ hạng?
Đây là câu hỏi mỗi SEO wants answered, và phần lớn competing các bài viết wave nó away. precise câu trả lời có hai halves.
Điều gì nó không làm
nó là không crawling, lập chỉ mục, hoặc xếp hạng mechanism. có không Google Search Central tài liệu tying Speculation Rules API để Cách Googlebot crawl hoặc indexes — vì nó không touch đó layer tại all. nó trình duyệt feature cho human khách truy cập trong Chromium.
Đó closest điều để an on-đó-record Google statement là Gary Illyes on Tìm kiếm Off đó Record (sớm 2026), talking về tài nguyên hints nhìn chung — không đó Speculation Rules API by name. As Search Engine Journal reported, Illyes’ point đã là đó Googlebot’s own infrastructure có near-infinite bandwidth và very fast DNS resolution, so hints như DNS-prefetch và preload hold essentially không giá trị cho của nó crawling xử lý — điều này có thể đã talk để các máy chủ fast và không cần để là told để fetch điều trước đó. Treat đó as hỗ trợ cho “this is a browser/visitor feature, not a crawler one,” (bản dịch) «này là một trình duyệt/khách truy cập feature, không một crawler một,» nhưng note đó phạm vi: Illyes đã là addressing đó rộng hơn tài nguyên-hints family, không Speculation Rules cụ thể. Này là đó giống nhau discipline đó sibling tài nguyên hints piece áp dụng.
cũng worth stating plainly vì mọi người ask: Bing có published không có gì on Speculation Rules API Đối với SEO. Edge (Chromium 109+) hỗ trợ nó as trình duyệt feature, nhưng có không bingbot hoặc lập chỉ mục angle — mà là chính xác Điều gì bạn’d expect cho kết xuất-trình duyệt feature thay vì tìm kiếm-engine-crawler một.
Điều gì nó có thể làm
nó có thể improve Core Web Vitals — especially LCP, và indirectly INP by front-loading JavaScript execution trước khi interaction happens — cho thực người dùng. Core Web Vitals là được ghi lại (nếu modest) tín hiệu xếp hạng qua trang experience hệ thống, so có gián tiếp xếp hạng pathway. nhưng stronger case là đơn giản UX và conversion: đang làm tiếp theo trang feel instant là thực business lever independent của thứ hạng.
non-overclaiming way để frame nó: Speculation Rules sẽ không nhận bạn được crawl hoặc được lập chỉ mục differently — nó làm trang feel instant sau khi thực khách truy cập là đã navigating của bạn trang web, mà là UX và Core Web Vitals lever, không crawler một.
thực-world kết quả
Hai proof points làm nặng lifting ở đây, và cả hai come từ Google own publications.
Google Search dùng nó on itself. Theo Chrome team 2025 announcement, một của đầu tiên dùng của speculation rules là để prefetch đầu tiên hai tìm kiếm kết quả. measured gains: on Android Chrome, LCP cho clicks từ Google Search là reduced by 67 milliseconds; on desktop, similar 58,6 millisecond LCP improvement. Hover-based prefetching của remaining kết quả cut desktop FCP by 7,6 milliseconds và LCP by 9,5 milliseconds. cho cross-origin kết quả prefetches, Google Tìm kiếm routes them qua Chrome riêng tư prefetch proxy để anonymize yêu cầu. rất một vài competing các bài viết cite đó Google trusts điều này đủ để chạy nó on Google.com/tìm kiếm tại quy mô — và published chính xác millisecond deltas.
Ray-Ban case nghiên cứu là business-impact proof. Google
web.dev case nghiên cứu
các báo cáo đó sau khi prerendering sản phẩm các trang, mobile conversion rates on PDPs
increased by 101,47% và desktop by 156,16%, với 43% improvement trong LCP on cả hai
desktop và mobile. Exit rates dropped khoảng 13% on cả hai, và các trang viewed theo
session rose 51,95% on mobile và 65,30% on desktop. implementation split là
instructive: desktop được sử dụng moderate eagerness triggered by hovering sản phẩm tiles;
mobile (không hover state) được sử dụng immediate eagerness on chỉ đầu tiên four tiles,
mà là phần lớn-đã nhấp.
và quy mô là đã lớn: WordPress 6,8 (March 2025) ships điều này theo mặc định, building on feature plugin đó là on tens của thousands của các trang trước khi cốt lõi adoption — meaning có ý nghĩa share của web đã có speculation rules đang chạy không có anyone configuring them.
Cách implement nó safely
consensus adoption order, từ cả hai tài liệu củ Google và independent experts:
- Bắt đầu với prefetch, broadly. Theo Chrome implementation hướng dẫn, prefetch là relatively safe cho phần lớn các trang và là ban đầu approach nhiều take.
- Thêm prerender narrowly, sau đó. Chrome tài liệu warn so với over-prerendering tại cost của người dùng các tài nguyên, và khuyến nghị giữ prerenders xuống để một hoặc hai các trang tại phần lớn. Harry Roberts reaches giống nhau conclusion independently — wildcard-như match là cũng greedy, và prerendering mọi thứ là thường cũng expensive và cũng risky; opt-trong approach là tốt hơn.
- sử dụng document rules để quy mô không có theo-trang config. thay vì hand-listing
các URL on mỗi trang,
where/href_matchescondition sources các URL từ document itself so một rule đặt có thể apply trang web-wide. - Mind của bạn CSP. Inline
<script type="speculationrules">chặn cần rõ ràng allowance trongscript-src— qua'inline-speculation-rules', hash-nguồn, hoặc nonce-nguồn — hoặc họ silently fail Khi nội dung Security Policy là trong place.
Điều gì không để prefetch hoặc prerender
Cả hai MDN và Chrome implementation hướng dẫn là rõ ràng đó some các URL phải không bao giờ là speculated, vì speculative fetch là vẫn thực yêu cầu đó có thể trigger thực side effects. danger list:
- Sign-out / logout các URL.
- “Thêm để cart” các URL.
- Language- hoặc currency-switcher các URL.
- Sign-trong luồng đó trigger SMS/OTP.
- các URL đó increment usage allowance hoặc fire quảng cáo-conversion theo dõi.
root khắc phục là design một: state thay đổi — như /logout hành động — không nên là
đơn giản GET links đó speculation rule có thể fetch trong đầu tiên place.
Prerender là stricter vẫn. Additionally unsafe để prerender: các trang đó modify client-side storage on load, gửi phân tích hoặc quảng cáo-impressions on load, hoặc nếu không nguyên nhân side effects as nếu người dùng có interacted. MDN’s cách diễn đạt là đó prerendering là riskier hơn prefetching và nên là đã xong sparingly, chỉ nơi nó worth nó.
Sửa phân tích vấn đề
Đây là trap đó catches thực các trang. prerendered trang fully loads trước khi
người dùng bao giờ sees nó. nếu page_view (hoặc quảng cáo impression, hoặc Meta Pixel event)
fires on load, bạn’ve logged visit đó đã không happen — inflating GA4 sessions và
corrupting attribution.
mechanism để khắc phục nó là được ghi lại trong MDN và Chrome các hướng dẫn:
document.prerenderinglàtruetrong khi trang là prerendered.prerenderingchangeevent fires on activation (Khi người dùng thực ra navigates trong).- Các máy chủ có thể cũng detect speculative các yêu cầu qua
Sec-Purposeyêu cầu header (prefetch, hoặcprefetch;prerender).
practical reality: theo Chrome implementation hướng dẫn, some phân tích providers (Google phân tích) và quảng cáo providers (Google Publisher Tag) đã hỗ trợ speculation rules và sẽ không log view cho đến khi trang là activated. GA4’s own gtag.js xử lý nó cho bạn. Điều gì typically không xử lý nó theo mặc định: custom GTM tags, Meta Pixel, và homegrown scripts. cho tag-manager setups, một sạch approach là để delay tag manager script itself, hoặc gate cụ thể code cho đến khi trang là activated hoặc đã làm visible. có được ghi lại thực-world version của getting điều này sai — WordPress 6,8 các trang reportedly firing GA4 và Meta Pixel ghost visits sau khi feature auto-enabled; Erwin Hofman covers khắc phục trong depth.
trình duyệt hỗ trợ reality kiểm tra
điều này tempers ROI expectations và phần lớn các bài viết bury nó: Speculation Rules API là Chromium-chỉ (Chrome và Edge 109+). nó là không Baseline. Firefox có positive các tiêu chuẩn position on prefetch portion chỉ và hasn’t shipped nó; Safari có implementation behind flag, off theo mặc định. có ý nghĩa share của bất kỳ trang web traffic — mọi người on Firefox và Safari — nhận zero benefit, so size của bạn expectations accordingly.
Speculation Rules trong WordPress 6,8+
vì so nhiều của tìm kiếm audience là on WordPress và đã nhận điều này theo mặc định:
WordPress 6,8 (March 2025) ships được xây dựng-trong Speculative Loading, on theo mặc định cho
logged-out khách truy cập, sử dụng conservative, prefetch-chỉ configuration out của
box. trang web owners có thể customize behavior — including opting vào prerender cho mấu chốt
các URL — qua wp_speculation_rules_configuration filter (Weston Ruter, Google
engineer và WordPress cốt lõi contributor, có
walkthrough).
default là có chủ ý safe, mà là Vì sao phần lớn WordPress các trang có thể leave nó on —
nhưng nó cũng Vì sao phân tích gotcha trên surprised lot của trang web owners ai không bao giờ
chose để enable bất cứ điều gì.
Myths, debunked
- “Speculation Rules will help Googlebot crawl my site faster.” (bản dịch) «Speculation Rules sẽ help Googlebot crawl my site nhanh hơn.» Không — đây là một trình duyệt-kết xuất feature cho human khách truy cập trong Chromium; Googlebot’s own infrastructure không cần hints như này, và không Google doc links đó API để crawling.
- “It’s the same as
<link rel="prefetch">/<link rel="prerender">.” (bản dịch) «đây là đó giống nhau as / .» Không quite — điều này supersedes đó deprecated Chrome-chỉrel="prerender", adds một richer JSON syntax (document rules, eagerness), và stores speculated các tài nguyên trong đó memory bộ nhớ đệm thay vì đó HTTP bộ nhớ đệm. - “Prerendering everything makes my whole site instant with no downside.” (bản dịch) «Prerendering mọi thứ làm my toàn bộ site instant với không downside.» Không — Chrome warns so với over-prerendering, enforces hard caps, và cả hai Google và Harry Roberts khuyến nghị nhiều nhất một hoặc hai prerendered các trang.
- “If I add speculation rules my analytics just works.” (bản dịch) «Nếu I thêm speculation rules my analytics chỉ hoạt động.» Chỉ nếu mỗi analytics
và quảng cáo script defers qua
document.prerendering/prerenderingchange. GA4 xử lý điều này; nhiều GTM tags và bên thứ ba pixels không. - “It’s universally supported, so it’s a safe default for all traffic.” (bản dịch) «đây là universally supported, so đây là một safe default cho all traffic.» Không — Chromium-chỉ, không Baseline; Firefox và Safari không ship điều này theo mặc định.
- “Prefetch is risk-free, so I can wildcard it.” (bản dịch) «Prefetch là risk-free, so I có thể wildcard điều này.» Overstated — một wildcard-như
match là cũng greedy, especially cho state-thay đổi
GETURLs đó nên không bao giờ là fetchable links ngay từ đầu. - “This will directly move my rankings.” (bản dịch) «Này sẽ trực tiếp move my thứ hạng.» Không established by bất kỳ chính thức nguồn as một trực tiếp xếp hạng factor. Đó credible chain là Speculation Rules → tốt hơn real-người dùng Core Web Vitals / conversion → đó existing, modest trang-experience tín hiệu, plus business wins đó quan trọng regardless of thứ hạng.
nơi điều này sits
Này là một web performance topic, không một
crawling một — và giữ đó line sạch là đó point. đây là một close cousin of
tài nguyên hints (preload/preconnect/dns-prefetch/prefetch), mà share
đó “browser does network work earlier” (bản dịch) «trình duyệt làm network hoạt động trước đó» ý tưởng và đó giống nhau “doesn’t help Googlebot” (bản dịch) «không help Googlebot»
caveat; điều này feeds Core Web Vitals (LCP especially); và điều này interacts với
bộ nhớ đệm và một CDN since speculated documents populate caches. Cho đó
crawler-side analogue of “ask before you re-fetch,” (bản dịch) «ask trước khi bạn re-fetch,» đó conditional-các yêu cầu topic
covers cách Googlebot tránh re-downloading unchanged các trang — một khác nhau layer
(crawler, không trình duyệt), giống nhau discipline of separating mechanics từ xếp hạng impact.
AI summary
condensed take on Nâng cao version:
- Điều gì điều này là: một Chromium-chỉ (Chrome/Edge 109+) trình duyệt API để prefetch
(download đó HTML document; pays xuống TTFB) hoặc prerender (fully load + chạy JS
trong an invisible tab; pays xuống TTFB + FCP + LCP) giống nhau-site các trang trước một nhấp.
Declared as JSON inline hoặc qua một
Speculation-Rulesheader. - Eagerness (
immediate/eager/moderate/conservative) controls khi một rule fires, tách biệt từ mà URLs điều này targets. Chrome enforces hard caps (50 prefetches / 10 prerenders cho immediate rules); đó chính xác triggers là Chrome-version-phụ thuộc heuristics, không fixed constants. - Cross-origin: prerender là giống nhau-origin theo mặc định; cross-origin giống nhau-site
prerender cần đó đích opt-trong (
Supports-Loading-Mode: credentialed-prerender); cross-site prerender không có thể tại all. Prefetch là hơn permissive nhưng vẫn gated by một không-đích-cookies quyền riêng tư rule. - SEO reality: không một crawling/lập chỉ mục/xếp hạng mechanism — Googlebot không cần tài nguyên hints (theo Illyes, Feb 2026, on hints generally) và Google có không Tìm kiếm doc on điều này. Bing có published không có gì. Điều này có thể move Core Web Vitals (LCP/INP) và conversions cho real người dùng — an gián tiếp xếp hạng + UX lever.
- Proof điều này hoạt động: Google Search prefetches của nó top hai kết quả (LCP xuống ~58–67ms); Ray-Ban reported ~100–156% conversion lifts và một 43% LCP improvement từ prerendering PDPs.
- Biggest risk — analytics: một speculated trang firing một pageview on load inflates
GA4. Cách sửa với
document.prerendering/prerenderingchange. GA4 xử lý điều này natively; GTM custom tags và Meta Pixel thường không. - Không bao giờ speculate state-thay đổi
GETURLs: logout, thêm-để-cart, currency/lang switchers, OTP sign-trong. Redesign những offGETlinks. - Adoption order: prefetch broadly, thêm prerender để một hoặc hai các trang max, mind
CSP (
'inline-speculation-rules'). - WordPress 6,8+ ships conservative, prefetch-chỉ speculative loading on by
default cho logged-out người dùng (
wp_speculation_rules_configurationfilter để customize).
Tài liệu chính thức
Chính-nguồn tài liệu. Note: các công cụ tìm kiếm publish không có gì on điều này as SEO topic — có thẩm quyền tài liệu là trình duyệt/các tiêu chuẩn references.
MDN / các tiêu chuẩn
- Speculation Rules API — kỹ thuật reference: syntax, prefetch so với. prerender, quyền riêng tư, CSP, và trình duyệt-compatibility status.
- Speculation-Rules HTTP header — declaring rules qua phản hồi header thay vì inline script.
Chrome cho Nhà phát triển (Google)
- Prerender các trang trong Chrome cho instant trang navigations — Cách prerender hoạt động, hint-không-bảo đảm cách diễn đạt, và Chrome FIFO caps.
- Hướng dẫn để implementing speculation rules cho nhiều hơn phức tạp các trang — phân tích warning, thứ ba-party-script xử lý, và state-thay đổi cautions.
- Improvements để Speculation Rules API (Barry Pollard, 2024) — document rules, eagerness,
No-Vary-Search, HTTP-bộ nhớ đệm reuse. - Google Search hiện tại dùng Speculation Rules API (Pollard & Busaryev, 2025) — Google own usage và measured LCP/FCP deltas.
web.dev (Google)
- Cách Ray-Ban doubled conversion rate… qua prerendering — business-impact case nghiên cứu.
- Prefetching, prerendering, và precaching — memory bộ nhớ đệm so với. HTTP bộ nhớ đệm, và Khi để là cautious.
WordPress (chính thức feature tài liệu)
- Speculative Loading trong 6,8 (Làm WordPress Cốt lõi) — default behavior và configuration filter.
- Speculative Loading feature plugin — plugin cốt lõi adoption là dựa trên.
Quotes từ nguồn
Statements từ chính trình duyệt/các tiêu chuẩn tài liệu và Google own publications. vì điều này không phải tìm kiếm-engine SEO topic, có không Google Tìm kiếm quotes — sources là Chrome/MDN/web.dev.
MDN — Điều gì nó là và làm
- “The Speculation Rules API is designed to improve performance for future navigations. It targets document URLs rather than specific resource files, and so makes sense for multi-page applications (MPAs) rather than single-page applications (SPAs).” (bản dịch) «Đó Speculation Rules API là designed để improve performance cho tương lai navigations. Điều này targets document URLs thay vì cụ thể tài nguyên files, và so làm hợp lý cho multi-trang applications (MPAs) thay vì single-trang applications (SPAs).» Nhảy đến trích dẫn
Chrome — Google Search’s own usage ( strongest proof point)
- “One of the first uses of speculation rules was to prefetch the first two search results.” (bản dịch) «Một of đó đầu tiên dùng of speculation rules đã là để prefetch đó đầu tiên hai kết quả tìm kiếm.» — Chrome cho Nhà phát triển blog. Nhảy đến trích dẫn
- On Android Chrome, LCP cho clicks từ Google Search đã là “reduced by 67 milliseconds.” (bản dịch) «reduced by 67 milliseconds.» Nhảy đến trích dẫn
- On desktop, một “similar improvement in LCP of 58.6 milliseconds.” (bản dịch) «similar improvement trong LCP of 58,6 milliseconds.» Nhảy đến trích dẫn
Speculation Rules bảng tra nhanh
Prefetch so với. prerender
| Prefetch | Prerender | |
|---|---|---|
| Điều gì nó làm | Downloads trang HTML document chỉ | Fully fetches, renders, và chạy JS trong invisible tab |
| Các chỉ số nó improves | TTFB | TTFB + FCP + LCP |
| Cost / risk | Thấp hơn | Cao hơn (memory, bandwidth, side effects) |
| Cách nhiều để sử dụng | Broadly là OK | 1–2 cao-confidence các trang max |
| nơi nó caches | HTTP bộ nhớ đệm | Trong-memory bộ nhớ đệm (cũng populates HTTP bộ nhớ đệm) |
Eagerness — Khi rule fires (independent của mà các URL)
| Cấp độ | Fires Khi… |
|---|---|
immediate | As soon as rules là parsed (trang load) |
eager | On slightest tín hiệu toward link |
moderate | ~200ms hover (pointerdown on touch) |
conservative | Pointer/touch-xuống — khách truy cập có all nhưng đã nhấp |
Chrome hard caps (regardless của bạn config)
immediaterules: 50 prefetches / 10 prerenders.- Interaction-based (
moderate/conservative) rules: 2 FIFO slots.
Cross-origin bảng tham khảo nhanh
- Prerender: giống nhau-origin theo mặc định; cross-origin giống nhau-trang web cần đích để
gửi
Supports-Loading-Mode: credentialed-prerender; cross-trang web prerender không phải có thể. - Prefetch: giống nhau-trang web và cross-trang web cả hai hoạt động, gated by không-đích-cookies quyền riêng tư rule.
Fast facts
- Hỗ trợ: Chromium-chỉ (Chrome/Edge 109+). không Baseline. Firefox = prefetch các tiêu chuẩn position chỉ (unshipped); Safari = behind flag, off theo mặc định.
- Declared as JSON: inline
<script type="speculationrules">hoặcSpeculation-RulesHTTP header. - CSP: inline chặn cần
'inline-speculation-rules'(hoặc hash/nonce) trongscript-src. - Detect speculative load:
document.prerendering,prerenderingchangeevent, hoặcSec-Purposeyêu cầu header. - không Google xếp hạng/crawl tín hiệu. Google Search dùng nó (top-2 kết quả, ~58–67ms LCP). WordPress 6,8+ = conservative, prefetch-chỉ, logged-out, on theo mặc định.
Điều gì không để làm
Speculating state-thay đổi GET các URL.
speculative fetch là thực yêu cầu. không bao giờ prefetch hoặc prerender logout,
thêm-để-cart, currency/language switchers, OTP-triggering sign-trong luồng, hoặc
allowance-incrementing các URL. thực khắc phục là design: những điều đó actions không nên là
đơn giản GET links rule có thể fetch. Đây là được ghi lại trong cả hai MDN và Chrome
implementation hướng dẫn.
Prerendering broadly hoặc với wildcard. Chrome caps nó và warns so với over-prerendering tại cost của người dùng các tài nguyên; Harry Roberts calls wildcard-như match cũng greedy. giữ prerenders để một hoặc hai cao-confidence các trang.
Assuming của bạn phân tích là fine.
nếu prerendered trang fires pageview on load, bạn’ll inflate GA4 với visits đó
không bao giờ happened. GA4’s gtag.js xử lý điều này — nhưng GTM custom tags, Meta Pixel, và
homegrown scripts thường không. WordPress 6,8 các trang reportedly logged GA4/Meta ghost
visits sau khi feature auto-enabled. Gate theo dõi on document.prerendering /
prerenderingchange.
Forgetting của bạn CSP.
inline <script type="speculationrules"> silently fails dưới nội dung Security
Policy trừ khi script-src cho phép 'inline-speculation-rules' (hoặc hash/nonce).
Expecting điều này để help crawling hoặc thứ hạng. Điều này không touch Googlebot. Selling này internally as an “SEO fix for crawl budget or rankings” (bản dịch) «SEO cách sửa cho ngân sách crawl hoặc thứ hạng» sets đó sai expectation — pitch điều này as một Core Web Vitals / conversion win cho real Chromium khách truy cập.
Over-estimating reach. nó Chromium-chỉ. Firefox và Safari người dùng nhận không có gì theo mặc định, so không model ROI as nếu nó áp dụng để all traffic.
Worked các ví dụ
Minimal, illustrative rule chặn. Adapt targeting để của bạn own trang web và luôn exclude state-thay đổi các URL.
1. Prefetch hai rõ ràng các URL (safest starting point)
<script type="speculationrules">
{
"prefetch": [
{ "urls": ["/pricing/", "/features/"] }
]
}
</script>2. Document rules — prefetch giống nhau-trang web links on hover (moderate)
<script type="speculationrules">
{
"prefetch": [
{
"where": { "href_matches": "/*" },
"eagerness": "moderate"
}
]
}
</script>3. Prerender một cao-confidence trang, excluding dangerous paths
<script type="speculationrules">
{
"prerender": [
{
"where": {
"and": [
{ "href_matches": "/*" },
{ "not": { "href_matches": "/logout*" } },
{ "not": { "href_matches": "/cart*" } }
]
},
"eagerness": "conservative"
}
]
}
</script>4. Deliver rules qua HTTP header thay vì inline script
Speculation-Rules: "/speculation-rules.json"…nơi /speculation-rules.json trả về giống nhau JSON với
application/speculationrules+json nội dung loại. hữu ích Khi strict CSP làm
inline scripts painful.
5. Guard phân tích so với firing during prerender
if (document.prerendering) {
document.addEventListener('prerenderingchange', sendPageview, { once: true });
} else {
sendPageview();
}điều này defers pageview cho đến khi trang là thực ra activated — giống nhau pattern GA4’s own script dùng.
phân tích jumped sau khi prerender shipped
- Pause prerender rule, không toàn bộ performance program. giữ copy của deployed rule và chuyển affected path lại để prefetch hoặc không speculation. nếu unexplained traffic dừng, continue với prerender investigation.
- Tách biệt activation từ background load. Reproduce trong Chromium và inspect
document.prerenderingtrước khi navigation. nếu phân tích fires trong khi nó làtrue, tag records trang khách truy cập có không activated. - Identify firing owner. kiểm tra GA4, custom GTM tags, quảng cáo pixels, và homegrown events independently. nếu chỉ một nguồn inflates, khắc phục đó integration rather hơn weakening mỗi rule.
- Gate event. Delay pageview hoặc impression cho đến khi
prerenderingchange/activation. nếu provider đã hỗ trợ prerendering, xóa duplicate custom firing logic. - Replay abandoned-navigation case. Trigger prerender nhưng không nhấp. event phải vẫn absent. sau đó activate trang sau khi và xác nhận chính xác một event là recorded.
- Restore narrowly. Re-enable một cao-confidence prerender đích, so sánh activated navigations với phân tích events, và expand chỉ Khi được tính vẫn aligned.
Review rule đặt cho side effects
Review this Speculation Rules JSON and a list of site routes. Classify every matched
route as safe to prefetch, safe to prerender, or exclude. Explicitly flag logout,
add-to-cart, language/currency switching, OTP, allowance-changing, analytics, storage,
and ad-impression side effects. Check eagerness, scope, and likely resource waste.
Return the smallest safe rule set plus validation and rollback tests. Do not claim a
crawling, indexing, or direct ranking benefit.Design staged rollout
Create a staged Speculation Rules rollout for this click-path data and browser mix.
Start with prefetch, choose at most one or two high-confidence prerender targets, and
explain why each route is likely enough to justify its cost. Include Chromium-only
segmentation, analytics activation handling, CSP checks, success metrics, an abandoned
navigation test, and rollback triggers. Do not invent conversion or performance gains.Debug bị thiếu speculation
Given this page markup, response headers, CSP, browser version, and DevTools evidence,
diagnose why a speculation rule was not used. Check invalid JSON, CSP blocking,
unsupported browser, rule mismatch, resource limits, cross-origin restrictions, and
browser discretion. Return symptom, evidence, likely cause, smallest fix, and the
exact evidence that would confirm it. Safe speculation phát hành checklist
- Trình duyệt-hỗ trợ dữ liệu justifies một Chromium-chỉ progressive enhancement.
- Ban đầu rollout dùng prefetch; prerender là limited để một hoặc hai cao-confidence destinations.
- Logout, cart mutation, login/OTP, language/currency, allowance-thay đổi, và other state-thay đổi GET routes là excluded.
- Prerendered các trang không mutate storage hoặc fire impressions trước activation.
- Session-storage-phụ thuộc logic là tested cả hai trước và sau
prerenderingchange(một prerendering trang bắt đầu với một storage clone đó là discarded tại activation). - Bất kỳ cross-origin prerender đích gửi
Supports-Loading-Mode: credentialed-prerender; cross-site prerender không attempted tại all. - Custom analytics và pixels kiểm tra
document.prerenderingvà chờ choprerenderingchangekhi necessary. - CSP permits đó inline hoặc external speculation-rules phân phối phương thức.
- Targeting và eagerness come từ observed navigation behavior, không một wildcard guess.
- DevTools xác nhận đó rule là hợp lệ, eligible, và dùng chỉ cho dự kiến URLs.
- An abandoned speculative load records không pageview, conversion, hoặc state thay đổi.
- Safari và Firefox vẫn nhận một fully functional thông thường navigation.
- Performance và business outcomes là measured on activated navigations, với wasted speculation tracked riêng.
Activation và phân tích integrity
Kiểm thử để chạy: Trigger prerender không có clicking, sau đó repeat và activate trang sau khi trong khi observing phân tích và custom pixel các yêu cầu.
Dự kiến kết quả: abandoned prerender records không pageview hoặc impression; activated navigation records chính xác một.
thất bại interpretation: tag fires on background load hoặc duplicate activation logic records giống nhau visit twice.
Monitoring window: Kiểm thử trước khi phát hành, immediately sau khi phát hành, và sau khi tag manager hoặc phân tích-library thay đổi.
Rollback trigger: Disable prerender cho affected route nếu speculative loads inflate sessions, impressions, conversions, hoặc attribution.
Navigation performance và waste
Kiểm thử để chạy: So sánh khớp activated navigations với và không có rule, và count speculations đó là không bao giờ activated.
Dự kiến kết quả: Targeted Chromium navigations hiển thị trước đó document/paint timing không có unacceptable volume của unused hoạt động hoặc hiện tại-trang regressions.
thất bại interpretation: prediction là yếu, eagerness là cũng aggressive, hoặc background hoạt động competes với hiện tại trang.
Monitoring window: Review during limited rollout trên representative devices và connection classes trước khi expanding phạm vi.
Rollback trigger: Step lại từ prerender để prefetch, hoặc xóa rule, nếu unused các yêu cầu hoặc regressions outweigh measured activated-navigation benefit.
Side-effect exclusion
Kiểm thử để chạy: Exercise mỗi khớp route không có activation và inspect máy chủ state, authentication, cart nội dung, messaging, và usage counters.
Dự kiến kết quả: Không speculative yêu cầu thay đổi người dùng hoặc máy chủ state.
thất bại interpretation: state-thay đổi GET route là khớp hoặc trang executes side effects during background load.
Monitoring window: Re-chạy Khi routes, document-rule selectors, hoặc application side effects thay đổi.
Rollback trigger: Xóa match immediately nếu speculative yêu cầu nhật ký out người dùng, thay đổi cart, gửi message, consumes allowance, hoặc records conversion.
Speculative-navigation scorecard
Chỉ số: Activated-navigation performance cho eligible Chromium người dùng, paired với speculation activation rate và phân tích-event độ chính xác.
Điều gì nó tells bạn: Liệu prediction làm thực tiếp theo-trang navigations nhanh hơn, Cách thường prefetched/prerendered hoạt động là thực ra được sử dụng, và liệu việc đo lường vẫn giữ trustworthy.
Cách pull nó: Segment thực-người dùng navigation và paint timings by trình duyệt và rule exposure; log speculation candidates và activations; so sánh activated pageviews với phân tích events. giữ prefetch và prerender cohorts tách biệt.
Benchmark hoặc realistic range: sử dụng trang web own pre-phát hành distribution và controlled holdout. có không honest universal activation-rate hoặc conversion đích; trình duyệt mix, path predictability, trang weight, và intent differ by trang web.
Cadence: Watch tài nguyên sử dụng và phân tích integrity during rollout, review performance và activation weekly trong khi tuning rules, và re-audit sau khi navigation, tagging, CSP, hoặc trình duyệt-hỗ trợ thay đổi.
các tài nguyên worth của bạn time
My related writing
- Người mới bắt đầu Hướng dẫn để kỹ thuật SEO — nơi trang-experience và performance topics như điều này fit trong bigger picture.
- Core Web Vitals: Điều gì họ là và Cách Improve Them — LCP/INP các chỉ số đó Speculation Rules thực ra moves cho thực người dùng. (Note: I không tuy vậy có dedicated Ahrefs hướng dẫn cụ thể on Speculation Rules API — điều này piece là deep dive; links ở đây là my closest liền kề coverage.)
My speaking
- điều gì là Tiếp theo cho Trang Experience — SMX Tiếp theo 2021 (SlideShare) — my trang-experience talk đó flagged sớm-loading techniques (một “Get Things Earlier” (bản dịch) «Nhận Điều Trước đó» slide linking để đó thì-experimental speculative prerendering), mà có trước đó modern Speculation Rules API nhưng points tại đó giống nhau ý tưởng.
- Cách Tìm kiếm Hoạt động (SlideShare) — crawling, kết xuất, lập chỉ mục, và xếp hạng, hữu ích cho giữ đó trình duyệt layer tách biệt từ đó crawler layer. (My standing disclaimer áp dụng: “This is my understanding of systems… not going to be 100% complete or accurate.” (bản dịch) «Này là my understanding of các hệ thống… không going để là 100% hoàn tất hoặc chính xác.»)
Từ khoảng đó ngành
- Google Search hiện tại dùng đó Speculation Rules API (Chrome cho Nhà phát triển) — Google own usage, với đó LCP/FCP millisecond deltas.
- Cách Ray-Ban doubled conversion rate… qua prerendering (web.dev) — đó best business-impact case nghiên cứu on prerendering.
- MỘT Layered Approach để Speculation Rules (Harry Roberts, CSS Wizardry) — đó strongest independent-expert implementation ghi-lên, including đó “prefetch for TTFB, prerender for LCP” (bản dịch) «prefetch cho TTFB, prerender cho LCP» model.
- Google Giải thích Vì sao Của nó Crawler Bỏ qua Của bạn Tài nguyên Hints (Search Engine Journal) — Illyes’ Feb 2026 comments on vì sao Googlebot không benefit từ tài nguyên hints (chung, không Speculation-Rules-cụ thể).
- Google Search hiện tại dùng Speculation Rules API để làm tìm kiếm nhanh hơn (Search Engine Land) — trade-press corroboration of đó Chrome announcement.
- Ngăn skewed analytics khi dùng Speculation Rules (Erwin Hofman) — an trong-depth cách sửa cho đó GA4 contamination vấn đề.
- Eagerly Prerender Key URLs với Speculative Loading trong WordPress (Weston Ruter, Google/WordPress cốt lõi) — cách customize WordPress 6,8’s default qua đó
wp_speculation_rules_configurationfilter. - Blazing Fast Websites với Speculation Rules (DebugBear) — một performance-tool vendor practical walkthrough.
Tự kiểm tra: Speculation Rules
Five nhanh các câu hỏi on Điều gì Speculation Rules API làm — và không — làm. Pick câu trả lời cho mỗi, sau đó kiểm tra.
Nhật ký thay đổi
Đã cập nhật 8 thg 8, 2026.
Tóm tắt biên tập và chi tiết thay đổi đã ghi nhận.Chi tiết thay đổi
-
Ghi chú thay đổi chi tiết hiện chỉ có bằng tiếng Anh.
Không thể so sánh đầy đủ — không có bản lưu trước đó cho lần sửa đổi này.
Đã cập nhật 18 thg 7, 2026.
Tóm tắt biên tập và chi tiết thay đổi đã ghi nhận.Chi tiết thay đổi
-
Ghi chú thay đổi chi tiết hiện chỉ có bằng tiếng Anh.
-
Ghi chú thay đổi chi tiết hiện chỉ có bằng tiếng Anh.
Không thể so sánh đầy đủ — không có bản lưu trước đó cho lần sửa đổi này.