Speculation aturan API
Apa Speculation aturan API (prefetch dan prerender) sebenarnya adalah, apakah ini memengaruhi SEO, crawling, atau rankings, dan cara implement ini tanpa inflating Anda analytics.
Speculation aturan API adalah sebuah Chromium browser fitur (Chrome/Edge 109+) itu lets sebuah situs tell browser untuk prefetch (download HTML document) atau prerender (fully muat dan render di sebuah invisible tab) sama-situs halaman sebelum sebuah pengunjung clicks — so berikutnya navigation feels near-instant. Prefetch pays down TTFB; prerender additionally pays down FCP dan LCP. ini adalah tidak sebuah crawling, pengindeksan, atau peringkat mechanism — Googlebot tidak perlu resource hints like ini dan Google publishes Tidak Penelusuran documentation pada ini. Google Search itself menggunakan API untuk prefetch -nya top hasil, dan Ray-Ban reported besar conversion dan LCP gains dari prerendering, so nyata nilai adalah Core Web Vitals dan UX untuk sebenarnya pengunjung. big risk untuk manage adalah analytics: sebuah speculated halaman itu fires sebuah pageview sebelum pengguna sees ini akan inflate GA4 unless tracking memeriksa document.prerendering. WordPress 6.8 ships sebuah conservative, prefetch-hanya versi pada oleh default untuk logged-out pengguna.
TL;DR — Speculation aturan API lets Anda situs tell Chrome atau Edge untuk muat berikutnya halaman sebuah pengunjung adalah mungkin untuk click — diam-diam, di background — sebelum mereka click ini. Ketika mereka melakukan click, halaman dapat muncul hampir instantly. ini adalah sebuah speed fitur untuk nyata orang menggunakan Chromium browser. ini melakukan tidak help Google crawl atau peringkat Anda situs, tetapi ini dapat membuat halaman feel lebih cepat, yang adalah baik untuk pengguna (dan, indirectly, untuk Core Web Vitals).
Apa ini adalah
Biasanya, ketika Anda click sebuah tautan, browser dimulai fetching itu halaman dari scratch — dan Anda tunggu. Speculation aturan API lets sebuah situs mendapatkan sebuah head mulai: ini tells browser “itu visitor akan probably go di sini berikutnya, so mulai getting it ready now.” (terjemahan) “ pengunjung akan probably go di sini berikutnya, so mulai getting ini ready now.” Ketika click finally happens, browser swaps di halaman ini sudah prepared alih-alih starting di atas.
ada dua versi dari “getting it ready,” (terjemahan) “getting ini ready,” dan perbedaan penting:
- Prefetch — browser diam-diam downloads berikutnya halaman’s HTML di background. Lebih ringan weight, lebih rendah risk.
- Prerender — browser fully memuat dan renders berikutnya halaman di sebuah invisible tab, berjalan -nya JavaScript dan semuanya. Lebih berat, tetapi halaman dapat muncul truly instantly. Riskier, so Anda gunakan ini sparingly.
Anda set ini up dengan sebuah kecil block dari JSON pada Anda halaman. Anda dapat list tepat URLs, atau tell browser “prepare any link itu visitor hovers over.” (terjemahan) “prepare apa pun tautan pengunjung hovers di atas.”
melakukan ini help SEO?
pendek versi: tidak cara orang hope. ini tidak akan mendapatkan Anda di-crawl atau terindeks lebih cepat. Googlebot tidak perlu ini — ini adalah sebuah fitur untuk human pengunjung di Chrome dan Edge, tidak untuk penelusuran bot.
Apa ini dapat melakukan adalah membuat Anda halaman feel lebih cepat setelah seseorang adalah sudah pada Anda situs, clicking sekitar. Lebih cepat dunia nyata experiences feed ke Core Web Vitals, yang adalah sebuah (modest) sinyal peringkat — dan, lebih importantly, lebih cepat halaman tend untuk convert better. Ray-Ban, misalnya, reported sebuah big jump di conversions setelah prerendering product halaman.
satu hal untuk watch out untuk
Anda analytics dapat lie untuk Anda. jika browser prerenders sebuah halaman sebelum pengunjung ever sees ini, dan itu halaman fires sebuah “pageview” (terjemahan) “pageview” moment ini memuat, Anda analytics akan count sebuah visit itu tidak pernah happened. Google Analytics 4’s own script menangani ini correctly pada -nya own — tetapi banyak lainnya tags dan pixels jangan, dan mereka’ll log phantom pageviews unless sebuah developer patches them.
jika Anda’re pada WordPress 6.8 atau kemudian, Anda sudah memiliki sebuah safe, conservative versi dari ini turned pada oleh default (prefetch hanya, untuk logged-out pengunjung). Anda tidak memiliki untuk melakukan apa pun — ini came dengan sebuah perbarui.
ingin penuh picture — prefetch vs. prerender di detail, eagerness tingkat, “never prerender ini” (terjemahan) “tidak pernah prerender ini” list, dan cara perbaiki analytics masalah? Switch untuk Advanced tab.
TL;DR — Speculation aturan API (Chromium, Chrome/Edge 109+) lets sebuah situs declare — di JSON, inline atau melalui sebuah
Speculation-Rulesheader — yang sama-situs URLs browser seharusnya prefetch (download document; pays down TTFB) atau prerender (fully fetch, render, dan jalankan JS di sebuah invisible tab; pays down TTFB + FCP + LCP). Eagerness (immediate/eager/moderate/conservative) controls ketika sebuah aturan fires, terpisah dari yang URLs ini targets. ini adalah tidak sebuah crawling/pengindeksan/peringkat mechanism — Googlebot tidak rely pada resource hints like ini (per Illyes’ Feb 2026 comments pada hints umumnya) dan Google publishes Tidak Penelusuran docs pada ini. tetapi Google Search itself menggunakan ini untuk prefetch -nya top hasil, dan Ray-Ban reported besar conversion + LCP wins, so payoff adalah nyata untuk sebenarnya pengunjung melalui Core Web Vitals dan UX. Biggest gotchas: analytics double-counting (perbaiki dengandocument.prerendering/prerenderingchange), state-mengubahGETURLs (logout, tambahkan-untuk-cart) Anda harus tidak pernah speculate, dan Chromium-hanya mendukung. Mulai dengan prefetch broadly; tambahkan prerender untuk satu atau dua tinggi-confidence halaman di sebagian besar.
Apa Speculation aturan API sebenarnya adalah
Speculation aturan API
adalah sebuah browser API — Chromium hanya — itu lets sebuah situs tell browser yang
sama-situs halaman untuk prepare sebelum sebuah pengunjung clicks. Per MDN, API adalah designed
untuk meningkatkan performa untuk future navigations, dan karena ini targets document URLs
alih-alih individual resource files, ini membuat sense untuk multi-halaman situs rather
daripada single-halaman apps. ini supersedes old, deprecated, Chrome-hanya
<link rel="prerender"> dan goes beyond widely-tersedia <link rel="prefetch">
dengan sebuah lebih expressive JSON syntax.
aturan adalah declared sebagai JSON, either inline di sebuah <script type="speculationrules">
block atau melalui sebuah
Speculation-Rules
respons header HTTP. mereka dapat list jelas URLs atau auto-match tautan pada halaman
melalui where/href_matches conditions (called document aturan).
ada dua speculative tindakan, dan getting pembedaan right adalah seluruh game:
- Prefetch downloads respons body dari referenced halaman — tetapi tidak -nya subresources. ini pays down berikutnya halaman’s TTFB.
- Prerender fetches, renders, dan memuat halaman ke sebuah invisible di-memory tab: semua subresources, semua JavaScript, bahkan data fetches kicked off oleh JS. Per MDN, future navigations untuk sebuah prerendered halaman adalah near-instant. ini pays down TTFB dan FCP dan LCP — tetapi ini adalah far lebih expensive dan riskier.
Harry Roberts’ shorthand di his layered-approach tulis-up captures ini well: prefetch adalah untuk paying down TTFB, prerender adalah untuk LCP.
Satu di bawah-covered teknis nuance: speculated resources land di browser’s
memory cache, yang adalah quicker untuk retrieve daripada HTTP cache older
<link rel="prefetch"> hint menggunakan. dan sebuah prefetched atau prerendered document juga
populates HTTP cache, so bahkan sebuah speculation pengunjung tidak pernah menggunakan tidak pure
waste — sebuah kemudian navigation dapat masih benefit.
Eagerness: ketika untuk speculate, terpisah dari yang URLs
sebuah genuinely clever design pilihan di sini adalah itu eagerness adalah sebuah terpisah lever dari targeting. Barry Pollard’s Chrome blog post pada API’s improvements frames ini sebagai separating ketika untuk speculate dari yang URLs untuk speculate pada. ada four tingkat:
immediate— speculate segera setelah aturan adalah seen (pada pemuatan halaman).eager— mulai pada slightest sinyal.moderate— roughly sebuah 200ms hover (atau pointerdown pada touch).conservative— pointer- atau touch-down, i.e. pengunjung memiliki semua tetapi clicked.
Treat ini four trigger definitions sebagai Chrome’s saat ini heuristics, tidak sebuah fixed
spec — Chrome memiliki changed tepat mobile triggers lebih daripada setelah (ini moved
moderate untuk viewport-based heuristics dan adjusted eager’s timing sebagai recently sebagai
January 2026), so re-periksa langsung docs sebelum quoting sebuah tepat millisecond atau
percentage threshold di Anda own implementation notes.
Dua related refinements worth knowing: No-Vary-Search lets browser reuse sebuah
cached document itu differs hanya oleh ignorable parameters (e.g. UTM-tagged variants
dari yang sama halaman), dan newer prerender-until-script pattern (covered oleh
CoreWebVitals.io)
offers sebuah middle ground antara plain prefetch dan sebuah penuh prerender — sebagai dari ini
writing ini adalah masih sebuah experimental, tidak-umumnya-tersedia tindakan berjalan di sebuah
Chrome origin trial, tidak sebuah shipped default.
Chrome’s own guardrails
Anda dapat’t accidentally nuke sebuah pengunjung’s device dengan sebuah di atas-broad aturan. Chrome’s
prerender documentation
sets hard, FIFO caps regardless dari Anda configuration: untuk immediate-eagerness
aturan, 50 prefetches dan 10 prerenders; untuk interaction-based (moderate/
conservative) aturan, 2 slots. Chrome juga memperlakukan sebuah prerender sebagai sebuah hint dan sebuah
progressive enhancement, tidak sebuah jaminan — ini dapat decline berdasarkan pengguna’s
settings atau resource constraints — dan ini tidak akan render cross-origin iframes pada sebuah
prerendered halaman until activation. sebuah dibangun-di privacy guard juga blocks cross-situs
prefetches ketika pengguna sudah memiliki cookies set untuk destination situs.
Cross-origin aturan, dan apa sebenarnya happens di dalam sebuah prerendered halaman
Per MDN, prerendering adalah restricted untuk sama-origin documents oleh default.
Cross-origin, sama-situs prerendering adalah mungkin, tetapi hanya jika target halaman
opts di dengan sebuah Supports-Loading-Mode: credentialed-prerender respons header —
cross-situs prerendering tidak mungkin di semua sebagai dari ini writing. Cross-situs
prefetch adalah lebih permissive (sama-situs dan cross-situs prefetches keduanya berfungsi), tetapi
masih gated oleh Tidak-cookies-set privacy aturan di atas; sebuah lebih luas cross-situs prefetch
opt-di melalui Supports-Loading-Mode adalah terdokumentasi sebagai planned tetapi belum shipped.
Di dalam hidden tab, sebuah prerendering halaman tidak sebuah wajar pemuatan halaman: intrusive APIs
(alert()/confirm()/prompt(), requestFullscreen(), Navigator.share()) adalah
blocked atau ignored, async APIs like geolocation dan getUserMedia() adalah deferred
until activation, dan cross-origin iframes dan worker scripts jangan jalankan until lalu
either. Session storage mendapatkan special menangani worth knowing jika Anda halaman membaca ini
pada muat: sebuah prerendering halaman dimulai dengan sebuah clone dari tab’s session storage,
dan itu clone adalah discarded di favor dari nyata tab’s storage di activation — so
test apa pun session-storage-dependent logic keduanya sebelum dan setelah
prerenderingchange event, tidak hanya pada sebuah wajar muat. untuk timing, document.prerendering
dan prerenderingchange tell Anda state dan activation moment;
PerformanceNavigationTiming.activationStart memberikan Anda sebenarnya elapsed time
antara prerender mulai dan activation jika Anda ingin mengukur ini.
melakukan Speculation aturan API memengaruhi SEO, crawling, atau rankings?
ini adalah pertanyaan setiap SEO ingin answered, dan sebagian besar competing artikel wave ini away. precise jawaban memiliki dua halves.
Apa ini melakukan Tidak melakukan
ini adalah tidak sebuah crawling, pengindeksan, atau peringkat mechanism. tidak ada Google Search Central documentation tying Speculation aturan API untuk bagaimana Googlebot melakukan crawl atau indeks — karena ini tidak touch itu layer di semua. ini adalah sebuah browser fitur untuk human pengunjung di Chromium.
closest hal untuk sebuah pada—record Google statement adalah Gary Illyes pada Penelusuran Off Record (early 2026), talking tentang resource hints di umum — tidak Speculation aturan API oleh name. sebagai mesin pencari Journal reported, Illyes’ poin adalah itu Googlebot’s own infrastructure memiliki near-infinite bandwidth dan very fast DNS resolution, so hints like DNS-prefetch dan preload hold essentially Tidak nilai untuk -nya crawling proses — ini dapat sudah talk untuk server fast dan tidak perlu untuk menjadi told untuk fetch hal sebelumnya. Treat itu sebagai mendukung untuk “this is a browser/visitor feature, not a crawler one,” (terjemahan) “ini adalah sebuah browser/pengunjung fitur, tidak sebuah crawler satu,” tetapi note cakupan: Illyes adalah addressing lebih luas resource-hints family, tidak Speculation aturan secara khusus. ini adalah yang sama discipline sibling resource hints piece applies.
juga worth stating plainly karena orang tanyakan: Bing memiliki published tidak ada apa pun pada Speculation aturan API untuk SEO. Edge (Chromium 109+) mendukung ini sebagai sebuah browser fitur, tetapi ada Tidak bingbot atau pengindeksan angle — yang adalah persis apa Anda’d expect untuk sebuah rendering-browser fitur alih-alih sebuah penelusuran-mesin-crawler satu.
Apa ini dapat melakukan
ini dapat meningkatkan Core Web Vitals — terutama LCP, dan indirectly INP oleh front-memuat JavaScript execution sebelum interaction happens — untuk nyata pengguna. Core Web Vitals adalah sebuah terdokumentasi (jika modest) sinyal peringkat melalui halaman experience sistem, so ada sebuah indirect peringkat pathway. tetapi stronger case adalah plain UX dan conversion: membuat berikutnya halaman feel instant adalah sebuah nyata business lever independent dari rankings.
non-overclaiming cara untuk frame ini: Speculation aturan tidak akan mendapatkan Anda di-crawl atau terindeks differently — ini membuat sebuah halaman feel instant setelah sebuah nyata pengunjung adalah sudah navigating Anda situs, yang adalah sebuah UX dan Core Web Vitals lever, tidak sebuah crawler satu.
dunia nyata hasil
Dua proof poin melakukan berat lifting di sini, dan keduanya come dari Google’s own publications.
Google Search menggunakan ini pada itself. Per Chrome team’s 2025 announcement, satu dari pertama menggunakan dari speculation aturan adalah untuk prefetch pertama dua penelusuran hasil. diukur gains: pada Android Chrome, LCP untuk clicks dari Google Search adalah reduced oleh 67 milliseconds; pada desktop, sebuah similar 58,6 millisecond LCP improvement. Hover-based prefetching dari remaining hasil cut desktop FCP oleh 7,6 milliseconds dan LCP oleh 9,5 milliseconds. untuk cross-origin hasil prefetches, Google Penelusuran routes them melalui Chrome’s privat prefetch proxy untuk anonymize permintaan. Very sedikit competing artikel cite itu Google trusts ini cukup untuk jalankan ini pada google.com/penelusuran di scale — dan published tepat millisecond deltas.
Ray-Ban’s case study adalah business-impact proof. Google’s
web.dev case study
reports itu setelah prerendering product halaman, mobile conversion rates pada PDPs
increased oleh 101,47% dan desktop oleh 156,16%, dengan sebuah 43% improvement di LCP pada keduanya
desktop dan mobile. Exit rates dropped roughly 13% pada keduanya, dan halaman viewed per
session rose 51,95% pada mobile dan 65,30% pada desktop. implementation split adalah
instructive: desktop digunakan moderate eagerness triggered oleh hovering product tiles;
mobile (Tidak hover state) digunakan immediate eagerness pada hanya pertama four tiles,
yang adalah paling-clicked.
dan scale adalah sudah besar: WordPress 6.8 (March 2025) ships ini oleh default, membangun pada sebuah fitur plugin itu adalah pada tens dari thousands dari situs sebelum core adoption — meaning sebuah bermakna share dari web sudah memiliki speculation aturan berjalan tanpa anyone configuring them.
cara implement ini safely
consensus adoption order, dari keduanya Google’s docs dan independent experts:
- Mulai dengan prefetch, broadly. Per Chrome’s implementation guide, prefetch adalah relatively safe untuk sebagian besar situs dan adalah awal approach banyak take.
- tambahkan prerender narrowly, kemudian. Chrome’s docs warn terhadap di atas-prerendering di sebuah cost dari pengguna resources, dan merekomendasikan mempertahankan prerenders down untuk satu atau dua halaman di sebagian besar. Harry Roberts reaches yang sama conclusion independently — sebuah wildcard-like match adalah too greedy, dan prerendering semuanya adalah biasanya too expensive dan too risky; sebuah opt-di approach adalah better.
- gunakan document aturan untuk scale tanpa per-halaman config. alih-alih hand-listing
URLs pada setiap halaman, sebuah
where/href_matchescondition sources URLs dari document itself so satu aturan set dapat apply situs-wide. - Mind Anda CSP. Inline
<script type="speculationrules">blocks perlu jelas allowance discript-src— melalui'inline-speculation-rules', sebuah hash-sumber, atau sebuah nonce-sumber — atau mereka silently fail ketika sebuah konten Security Policy adalah di place.
Apa Tidak untuk prefetch atau prerender
Keduanya MDN dan Chrome’s implementation guide adalah jelas itu beberapa URLs harus tidak pernah menjadi speculated, karena sebuah speculative fetch adalah masih sebuah nyata permintaan itu dapat trigger nyata side effects. danger list:
- Sign-out / logout URLs.
- “Add untuk cart” (terjemahan) “tambahkan untuk cart” URLs.
- Language- atau currency-switcher URLs.
- Sign-di alur itu trigger sebuah SMS/OTP.
- URLs itu increment sebuah usage allowance atau fire ad-conversion tracking.
root perbaiki adalah sebuah design satu: state perubahan — like sebuah /logout tindakan — tidak seharusnya menjadi
plain GET tautan itu sebuah speculation aturan dapat fetch di pertama place.
Prerender adalah stricter masih. Additionally unsafe untuk prerender: halaman itu modify client-side storage pada muat, kirim analytics atau ad-impressions pada muat, atau jika tidak penyebab side effects sebagai jika pengguna memiliki interacted. MDN’s framing adalah itu prerendering adalah riskier daripada prefetching dan seharusnya menjadi selesai sparingly, hanya di mana ini adalah worth ini.
Memperbaiki analytics masalah
ini adalah trap itu catches nyata situs. sebuah prerendered halaman fully memuat sebelum
pengguna ever sees ini. jika sebuah page_view (atau sebuah ad impression, atau sebuah Meta Pixel event)
fires pada muat, Anda’ve logged sebuah visit itu tidak happen — inflating GA4 sessions dan
corrupting attribution.
mechanism untuk perbaiki ini adalah terdokumentasi di MDN dan Chrome’s guides:
document.prerenderingadalahtruesementara sebuah halaman adalah menjadi prerendered.prerenderingchangeevent fires pada activation (ketika pengguna sebenarnya navigates di).- server dapat juga detect speculative permintaan melalui
Sec-Purposepermintaan header (prefetch, atauprefetch;prerender).
practical reality: per Chrome’s implementation guide, beberapa analytics providers (Google Analytics) dan ad providers (Google Publisher Tag) sudah mendukung speculation aturan dan tidak akan log sebuah view until halaman adalah activated. GA4’s own gtag.js menangani ini untuk Anda. Apa typically tidak tangani ini oleh default: custom GTM tags, Meta Pixel, dan homegrown scripts. untuk tag-manager setups, satu bersih approach adalah untuk delay tag manager script itself, atau gate spesifik code until halaman adalah activated atau dibuat terlihat. ada sebuah terdokumentasi dunia nyata versi dari getting ini wrong — WordPress 6.8 situs reportedly firing GA4 dan Meta Pixel ghost visits setelah fitur auto-enabled; Erwin Hofman covers perbaiki secara mendalam.
browser mendukung reality periksa
«This tempers ROI expectations and most articles bury it: the Speculation Rules API is Chromium-only (Chrome and Edge 109+). It is not Baseline. Firefox has a positive standards position on the prefetch portion only and hasn’t shipped it; Safari has an implementation behind a flag, off by default. A meaningful share of any site’s traffic — everyone on Firefox and Safari — gets zero benefit, so size your expectations accordingly. » (Terjemahan) (Ringkasan bahasa Indonesia untuk bagian enam puluh enam, bagian kecil satu: teks sumber dipertahankan agar dapat diperiksa dalam tinjauan penutur asli.)
Speculation aturan di WordPress 6.8+
Karena so banyak dari penelusuran audience adalah pada WordPress dan mendapat ini oleh default:
WordPress 6.8 (March 2025) ships dibangun-di Speculative memuat, pada oleh default untuk
logged-out pengunjung, menggunakan sebuah conservative, prefetch-hanya configuration out dari
box. situs owners dapat customize perilaku — including opting ke prerender untuk key
URLs — melalui wp_speculation_rules_configuration filter (Weston Ruter, sebuah Google
engineer dan WordPress core contributor, memiliki sebuah
walkthrough).
default adalah dengan sengaja safe, yang adalah mengapa sebagian besar WordPress situs dapat leave ini pada —
tetapi ini adalah juga mengapa analytics gotcha di atas surprised sebuah lot dari situs owners siapa tidak pernah
chose untuk enable apa pun.
Myths, debunked
«- “Speculation Rules will help Googlebot crawl my site faster.” No — it’s a browser-rendering feature for human visitors in Chromium; Googlebot’s own infrastructure doesn’t need hints like this, and no Google doc links the API to crawling.
- “It’s the same as
<link rel="prefetch">/<link rel="prerender">.” Not quite — it supersedes the deprecated Chrome-onlyrel="prerender", adds a richer JSON syntax (document rules, eagerness), and stores speculated resources in the memory cache rather than the HTTP cache. - “Prerendering everything makes my whole site instant with no downside.” No — Chrome warns against over-prerendering, enforces hard caps, and both Google and Harry Roberts recommend at most one or two prerendered pages.
- “If I add speculation rules my analytics just works.” Only if every analytics
and ad script defers via
document.prerendering/prerenderingchange. GA4 handles it; many GTM tags and third-party pixels don’t. - “It’s universally supported, so it’s a safe default for all traffic.” No — Chromium-only, not Baseline; Firefox and Safari don’t ship it by default.
- “Prefetch is risk-free, so I can wildcard it.” Overstated — a wildcard-like
match is too greedy, especially for state-changing
GETURLs that should never be fetchable links in the first place. - “This will directly move my rankings.” Not established by any official source » (Terjemahan) (Ringkasan bahasa Indonesia untuk bagian tujuh puluh, bagian kecil satu: teks sumber dipertahankan agar dapat diperiksa dalam tinjauan penutur asli.) « as a direct ranking factor. The credible chain is Speculation Rules → better real-user Core Web Vitals / conversion → the existing, modest page-experience signal, plus business wins that matter regardless of rankings. » (Terjemahan) (Ringkasan bahasa Indonesia untuk bagian tujuh puluh, bagian kecil dua: teks sumber dipertahankan agar dapat diperiksa dalam tinjauan penutur asli.)
Di mana ini sits
ini adalah sebuah web performa topic, tidak sebuah
crawling satu — dan mempertahankan itu line bersih adalah poin. ini adalah sebuah close cousin dari
resource hints (preload/preconnect/dns-prefetch/prefetch), yang share
“browser melakukan network berfungsi sebelumnya” (terjemahan) “browser melakukan network berfungsi sebelumnya” idea dan yang sama “tidak help Googlebot” (terjemahan) “tidak help Googlebot”
caveat; ini feeds Core Web Vitals (LCP terutama); dan ini interacts dengan
caching dan sebuah CDN since speculated documents populate caches. untuk
crawler-side analogue dari “ask sebelum Anda re-fetch,” (terjemahan) “tanyakan sebelum Anda re-fetch,” conditional-permintaan topic
covers bagaimana Googlebot menghindari re-downloading unchanged halaman — sebuah berbeda layer
(crawler, tidak browser), sama discipline dari separating mechanics dari peringkat impact.
AI summary
sebuah condensed take pada Advanced versi:
- Apa ini adalah: sebuah Chromium-hanya (Chrome/Edge 109+) browser API untuk prefetch
(download HTML document; pays down TTFB) atau prerender (fully muat + jalankan JS
di sebuah invisible tab; pays down TTFB + FCP + LCP) sama-situs halaman sebelum sebuah click.
Declared sebagai JSON inline atau melalui sebuah
Speculation-Rulesheader. - Eagerness (
immediate/eager/moderate/conservative) controls ketika sebuah aturan fires, terpisah dari yang URLs ini targets. Chrome enforces hard caps (50 prefetches / 10 prerenders untuk immediate aturan); tepat triggers adalah Chrome-versi-dependent heuristics, tidak fixed constants. - Cross-origin: prerender adalah sama-origin oleh default; cross-origin sama-situs
prerender perlu target’s opt-di (
Mendukung-Loading-Mode: credentialed-prerender); cross-situs prerender tidak mungkin di semua. Prefetch adalah lebih permissive tetapi masih gated oleh sebuah Tidak-destination-cookies privacy aturan. - SEO reality: tidak sebuah crawling/pengindeksan/peringkat mechanism — Googlebot tidak perlu resource hints (per Illyes, Feb 2026, pada hints umumnya) dan Google memiliki Tidak Penelusuran doc pada ini. Bing memiliki published tidak ada apa pun. ini dapat move Core Web Vitals (LCP/INP) dan conversions untuk pengguna nyata — sebuah indirect peringkat + UX lever.
- Proof ini berfungsi: Google Search prefetches -nya top dua hasil (LCP down ~58–67ms); Ray-Ban reported ~100–156% conversion lifts dan sebuah 43% LCP improvement dari prerendering PDPs.
- Biggest risk — analytics: sebuah speculated halaman firing sebuah pageview pada muat inflates
GA4. Perbaiki dengan
document.prerendering/prerenderingchange. GA4 menangani ini natively; GTM custom tags dan Meta Pixel sering jangan. - tidak pernah speculate state-mengubah
GETURLs: logout, tambahkan-untuk-cart, currency/lang switchers, OTP sign-di. Redesign itu offGETtautan. - Adoption order: prefetch broadly, tambahkan prerender untuk satu atau dua halaman max, mind
CSP (
'inline-speculation-rules'). - WordPress 6.8+ ships conservative, prefetch-hanya speculative memuat pada oleh
default untuk logged-out pengguna (
wp_speculation_rules_configurationfilter untuk customize).
Dokumentasi resmi
Utama-sumber documentation. Note: mesin pencari publish tidak ada apa pun pada ini sebagai sebuah SEO topic — authoritative docs adalah browser/standards references.
MDN / standards
- Speculation aturan API — teknis reference: syntax, prefetch vs. prerender, privacy, CSP, dan browser-compatibility status.
- Speculation-aturan header HTTP — declaring aturan melalui sebuah respons header alih-alih sebuah inline script.
Chrome untuk Developers (Google)
- Prerender halaman di Chrome untuk instant halaman navigations — bagaimana prerender berfungsi, hint-tidak-jaminan framing, dan Chrome’s FIFO caps.
- Guide untuk implementing speculation aturan untuk lebih kompleks situs — analytics warning, ketiga-party-script menangani, dan state-perubahan cautions.
- Improvements untuk Speculation aturan API (Barry Pollard, 2024) — document aturan, eagerness,
No-Vary-Search, HTTP-cache reuse. - Google Search now menggunakan Speculation aturan API (Pollard & Busaryev, 2025) — Google’s own usage dan diukur LCP/FCP deltas.
web.dev (Google)
- Bagaimana Ray-Ban doubled conversion rate… melalui prerendering — business-impact case study.
- Prefetching, prerendering, dan precaching — memory cache vs. HTTP cache, dan ketika untuk menjadi cautious.
WordPress (official fitur docs)
- Speculative memuat di 6,8 (membuat WordPress Core) — default perilaku dan configuration filter.
- Speculative memuat fitur plugin — plugin core adoption adalah berdasarkan.
Quotes dari sumber
Statements dari utama browser/standards documentation dan Google’s own publications. Karena ini tidak sebuah penelusuran-mesin SEO topic, tidak ada Google Penelusuran quotes — sources adalah Chrome/MDN/web.dev.
MDN — apa ini adalah dan melakukan
«- “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).” Jump to quote » (Terjemahan) (Ringkasan bahasa Indonesia untuk bagian sembilan puluh satu, bagian kecil satu: teks sumber dipertahankan agar dapat diperiksa dalam tinjauan penutur asli.)
Chrome — Google Search’s own usage ( strongest proof poin)
- “One of the first uses of speculation rules was to prefetch the first two search results.” (terjemahan) “Satu dari pertama menggunakan dari speculation aturan adalah untuk prefetch pertama dua hasil pencarian.” — Chrome untuk Developers blog. Jump untuk quote
- pada Android Chrome, LCP untuk clicks dari Google Search adalah “reduced by 67 milliseconds.” (terjemahan) “reduced oleh 67 milliseconds.” Jump untuk quote
- pada desktop, sebuah “similar improvement in LCP of 58.6 milliseconds.” (terjemahan) “similar improvement di LCP dari 58,6 milliseconds.” Jump untuk quote
Speculation aturan cheat sheet
Prefetch vs. prerender
| Prefetch | Prerender | |
|---|---|---|
| Apa ini melakukan | Downloads halaman’s HTML document hanya | Fully fetches, renders, dan berjalan JS di sebuah invisible tab |
| Metrics ini improves | TTFB | TTFB + FCP + LCP |
| Cost / risk | Lebih rendah | Lebih tinggi (memory, bandwidth, side effects) |
| Bagaimana banyak untuk gunakan | Broadly adalah OK | 1–2 tinggi-confidence halaman max |
| Di mana ini caches | HTTP cache | di-memory cache (juga populates HTTP cache) |
Eagerness — ketika sebuah aturan fires (independent dari yang URLs)
| tingkat | Fires ketika… |
|---|---|
immediate | segera setelah aturan adalah parsed (pemuatan halaman) |
eager | pada slightest sinyal toward sebuah tautan |
moderate | ~200ms hover (pointerdown pada touch) |
conservative | Pointer/touch-down — pengunjung memiliki semua tetapi clicked |
Chrome’s hard caps (regardless dari Anda config)
immediateaturan: 50 prefetches / 10 prerenders.- Interaction-based (
moderate/conservative) aturan: 2 FIFO slots.
Cross-origin quick reference
- Prerender: sama-origin oleh default; cross-origin sama-situs perlu target untuk
kirim
Supports-Loading-Mode: credentialed-prerender; cross-situs prerender tidak mungkin. - Prefetch: sama-situs dan cross-situs keduanya berfungsi, gated oleh Tidak-destination-cookies privacy aturan.
Fast facts
- mendukung: Chromium-hanya (Chrome/Edge 109+). Tidak Baseline. Firefox = prefetch standards position hanya (unshipped); Safari = behind sebuah flag, off oleh default.
- Declared sebagai JSON: inline
<script type="speculationrules">atau sebuahSpeculation-Rulesheader HTTP. - CSP: inline blocks perlu
'inline-speculation-rules'(atau hash/nonce) discript-src. - Detect sebuah speculative muat:
document.prerendering,prerenderingchangeevent, atauSec-Purposepermintaan header. - Tidak sebuah Google peringkat/crawl sinyal. Google Search menggunakan ini (top-2 hasil, ~58–67ms LCP). WordPress 6.8+ = conservative, prefetch-hanya, logged-out, pada oleh default.
Apa tidak untuk melakukan
Speculating state-mengubah GET URLs.
sebuah speculative fetch adalah sebuah nyata permintaan. tidak pernah prefetch atau prerender logout,
tambahkan-untuk-cart, currency/language switchers, OTP-triggering sign-di alur, atau
allowance-incrementing URLs. nyata perbaiki adalah design: itu tindakan tidak seharusnya menjadi
plain GET tautan sebuah aturan dapat fetch. ini adalah terdokumentasi di keduanya MDN dan Chrome’s
implementation guide.
Prerendering broadly atau dengan sebuah wildcard. Chrome caps ini dan warns terhadap di atas-prerendering di sebuah cost dari pengguna resources; Harry Roberts panggilan sebuah wildcard-like match too greedy. pertahankan prerenders untuk satu atau dua tinggi-confidence halaman.
Assuming Anda analytics adalah fine.
jika sebuah prerendered halaman fires sebuah pageview pada muat, Anda’ll inflate GA4 dengan visits itu
tidak pernah happened. GA4’s gtag.js menangani ini — tetapi GTM custom tags, Meta Pixel, dan
homegrown scripts sering jangan. WordPress 6.8 situs reportedly logged GA4/Meta ghost
visits setelah fitur auto-enabled. Gate tracking pada document.prerendering /
prerenderingchange.
Forgetting Anda CSP.
sebuah inline <script type="speculationrules"> silently fails di bawah sebuah konten Security
Policy unless script-src memungkinkan 'inline-speculation-rules' (atau sebuah hash/nonce).
Expecting ini untuk help crawling atau rankings. ini tidak touch Googlebot. Selling ini internally sebagai sebuah “SEO fix for crawl budget or rankings” (terjemahan) “SEO perbaiki untuk anggaran crawling atau rankings” sets wrong expectation — pitch ini sebagai sebuah Core Web Vitals / conversion win untuk nyata Chromium pengunjung.
di atas-estimating reach. ini adalah Chromium-hanya. Firefox dan Safari pengguna mendapatkan tidak ada apa pun oleh default, so jangan model ROI sebagai jika ini applies untuk semua traffic.
Worked contoh
Minimal, illustrative aturan blocks. Adapt targeting untuk Anda own situs dan selalu exclude state-mengubah URLs.
1. Prefetch dua jelas URLs (safest starting poin)
<script type="speculationrules">
{
"prefetch": [
{ "urls": ["/pricing/", "/features/"] }
]
}
</script>2. Document aturan — prefetch sama-situs tautan pada hover (moderate)
<script type="speculationrules">
{
"prefetch": [
{
"where": { "href_matches": "/*" },
"eagerness": "moderate"
}
]
}
</script>3. Prerender satu tinggi-confidence halaman, excluding dangerous paths
<script type="speculationrules">
{
"prerender": [
{
"where": {
"and": [
{ "href_matches": "/*" },
{ "not": { "href_matches": "/logout*" } },
{ "not": { "href_matches": "/cart*" } }
]
},
"eagerness": "conservative"
}
]
}
</script>4. Deliver aturan melalui header HTTP alih-alih sebuah inline script
Speculation-Rules: "/speculation-rules.json"…di mana /speculation-rules.json mengembalikan yang sama JSON dengan sebuah
application/speculationrules+json konten jenis. berguna ketika sebuah strict CSP membuat
inline scripts painful.
5. Guard analytics terhadap firing selama prerender
if (document.prerendering) {
document.addEventListener('prerenderingchange', sendPageview, { once: true });
} else {
sendPageview();
}ini defers pageview until halaman adalah sebenarnya activated — yang sama pattern GA4’s own script menggunakan.
Analytics jumped setelah prerender shipped
- Pause prerender aturan, tidak seluruh performa program. pertahankan sebuah copy dari deployed aturan dan switch affected path back untuk prefetch atau Tidak speculation. jika unexplained traffic berhenti, continue dengan prerender investigation.
- Terpisah activation dari background muat. Reproduce di Chromium dan inspect
document.prerenderingsebelum navigation. jika analytics fires sementara ini adalahtrue, tag records sebuah halaman pengunjung memiliki tidak activated. - Identify firing owner. periksa GA4, custom GTM tags, ad pixels, dan homegrown events independently. jika hanya satu sumber inflates, perbaiki itu integration rather daripada weakening setiap aturan.
- Gate event. Delay pageview atau impression until
prerenderingchange/activation. jika provider sudah mendukung prerendering, hapus duplicate custom firing logic. - Replay abandoned-navigation case. Trigger sebuah prerender tetapi melakukan tidak click. event harus tetap absent. lalu activate halaman setelah dan konfirmasi persis satu event adalah recorded.
- Restore narrowly. Re-enable satu tinggi-confidence prerender target, bandingkan activated navigations dengan analytics events, dan expand hanya ketika counts tetap aligned.
Review sebuah aturan set untuk 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 sebuah 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 missing 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 rilis checklist
- browser-mendukung data justifies sebuah Chromium-hanya progressive enhancement.
- Awal rollout menggunakan prefetch; prerender adalah limited untuk satu atau dua tinggi-confidence destinations.
- Logout, cart mutation, login/OTP, language/currency, allowance-mengubah, dan lainnya state-mengubah Mendapatkan routes adalah excluded.
- Prerendered halaman melakukan tidak mutate storage atau fire impressions sebelum activation.
- Session-storage-dependent logic adalah tested keduanya sebelum dan setelah
prerenderingchange(sebuah prerendering halaman dimulai dengan sebuah storage clone itu’s discarded di activation). - apa pun cross-origin prerender target mengirim
Mendukung-Loading-Mode: credentialed-prerender; cross-situs prerender tidak attempted di semua. - Custom analytics dan pixels periksa
document.prerenderingdan tunggu untukprerenderingchangeketika necessary. - CSP permits inline atau external speculation-aturan pengiriman metode.
- Targeting dan eagerness come dari observed navigation perilaku, tidak sebuah wildcard guess.
- DevTools mengonfirmasi aturan adalah valid, eligible, dan digunakan hanya untuk yang dimaksud URLs.
- sebuah abandoned speculative muat records Tidak pageview, conversion, atau state perubahan.
- Safari dan Firefox masih menerima sebuah fully functional wajar navigation.
- performa dan business outcomes adalah diukur pada activated navigations, dengan wasted speculation tracked secara terpisah.
Activation dan analytics integrity
Test untuk jalankan: Trigger sebuah prerender tanpa clicking, lalu repeat dan activate halaman setelah sementara observing analytics dan custom pixel permintaan.
Yang diharapkan hasil: abandoned prerender records Tidak pageview atau impression; activated navigation records persis satu.
Failure interpretation: sebuah tag fires pada background muat atau duplicate activation logic records yang sama visit twice.
Monitoring window: Test sebelum rilis, immediately setelah rilis, dan setelah tag manager atau analytics-library perubahan.
Rollback trigger: Disable prerender untuk affected route jika speculative memuat inflate sessions, impressions, conversions, atau attribution.
Navigation performa dan waste
Test untuk jalankan: Bandingkan cocok activated navigations dengan dan tanpa aturan, dan count speculations itu adalah tidak pernah activated.
Yang diharapkan hasil: Targeted Chromium navigations tampilkan sebelumnya document/paint timing tanpa sebuah unacceptable volume dari unused berfungsi atau saat ini-halaman regressions.
Failure interpretation: prediction adalah weak, eagerness adalah too aggressive, atau background berfungsi competes dengan saat ini halaman.
Monitoring window: Review selama sebuah limited rollout di seluruh representative devices dan connection classes sebelum expanding cakupan.
Rollback trigger: langkah back dari prerender untuk prefetch, atau hapus aturan, jika unused permintaan atau regressions outweigh diukur activated-navigation benefit.
Side-effect exclusion
Test untuk jalankan: Exercise setiap cocok route tanpa activation dan inspect server state, authentication, cart contents, messaging, dan usage counters.
Yang diharapkan hasil: Tidak speculative permintaan perubahan pengguna atau server state.
Failure interpretation: sebuah state-mengubah Mendapatkan route adalah cocok atau sebuah halaman executes side effects selama background muat.
Monitoring window: Re-jalankan ketika routes, document-aturan selectors, atau application side effects perubahan.
Rollback trigger: hapus match immediately jika sebuah speculative permintaan logs out sebuah pengguna, perubahan sebuah cart, mengirim sebuah message, consumes sebuah allowance, atau records sebuah conversion.
Speculative-navigation scorecard
Metric: Activated-navigation performa untuk eligible Chromium pengguna, paired dengan speculation activation rate dan analytics-event accuracy.
Apa ini tells Anda: Apakah prediction membuat nyata berikutnya-halaman navigations lebih cepat, bagaimana sering prefetched/prerendered berfungsi adalah sebenarnya digunakan, dan apakah pengukuran tetap trustworthy.
cara pull ini: Segment nyata-pengguna navigation dan paint timings oleh browser dan aturan exposure; log speculation candidates dan activations; bandingkan activated pageviews dengan analytics events. pertahankan prefetch dan prerender cohorts terpisah.
Benchmark atau realistic range: gunakan situs’s own pre-rilis distribution dan sebuah controlled holdout. tidak ada honest universal activation-rate atau conversion target; browser mix, path predictability, halaman weight, dan intent differ oleh situs.
Cadence: Watch resource gunakan dan analytics integrity selama rollout, review performa dan activation weekly sementara tuning aturan, dan re-audit setelah navigation, tagging, CSP, atau browser-mendukung perubahan.
Resources worth Anda time
My related writing
- Beginner’s Guide untuk SEO teknis — di mana halaman-experience dan performa topics like ini fit di bigger picture.
- Core Web Vitals: Apa mereka adalah dan cara meningkatkan Them — LCP/INP metrics itu Speculation aturan sebenarnya moves untuk pengguna nyata. (Note: I jangan namun memiliki sebuah dedicated Ahrefs guide secara khusus pada Speculation aturan API — ini piece adalah deep dive; tautan di sini adalah my closest berdekatan coverage.)
My speaking
- apa Berikutnya untuk pengalaman halaman — SMX Berikutnya 2021 (SlideShare) — my halaman-experience talk itu flagged early-memuat techniques (sebuah “Mendapatkan Hal Sebelumnya” (terjemahan) “Mendapatkan Hal Sebelumnya” slide linking untuk lalu-experimental speculative prerendering), yang lebih lama dari modern Speculation aturan API tetapi poin di yang sama idea.
- Bagaimana Penelusuran berfungsi (SlideShare) — crawling, rendering, pengindeksan, dan peringkat, berguna untuk mempertahankan browser layer terpisah dari crawler layer. (My standing disclaimer applies: “Ini adalah my understanding dari sistem… tidak going untuk menjadi 100% menyelesaikan atau accurate.” (terjemahan) “ini adalah my understanding dari sistem… tidak going untuk menjadi 100% menyelesaikan atau accurate.”)
«From around the industry
- Google Search now uses the Speculation Rules API (Chrome for Developers) — Google’s own usage, with the LCP/FCP millisecond deltas.
- How Ray-Ban doubled conversion rate… through prerendering (web.dev) — the best business-impact case study on prerendering.
- A Layered Approach to Speculation Rules (Harry Roberts, CSS Wizardry) — the strongest independent-expert implementation write-up, including the “prefetch for TTFB, prerender for LCP” model.
- Google Explains Why Its Crawler Ignores Your Resource Hints (Search Engine Journal) — Illyes’ Feb 2026 comments on why Googlebot doesn’t benefit from resource hints (general, not Speculation-Rules-specific).
- Google Search now uses Speculation Rules API to make search faster (Search Engine Land) — trade-press corroboration of the Chrome announcement.
- Prevent skewed analytics when using Speculation Rules (Erwin Hofman) — an in-depth fix for the GA4 contamination problem.
» (Terjemahan) (Ringkasan bahasa Indonesia untuk bagian seratus tujuh puluh sembilan, bagian kecil satu: teks sumber dipertahankan agar dapat diperiksa dalam tinjauan penutur asli.)
«- Eagerly Prerender Key URLs with Speculative Loading in WordPress (Weston Ruter, Google/WordPress core) — how to customize WordPress 6.8’s default via the
wp_speculation_rules_configurationfilter. - Blazing Fast Websites with Speculation Rules (DebugBear) — a performance-tool vendor’s practical walkthrough. » (Terjemahan) (Ringkasan bahasa Indonesia untuk bagian seratus tujuh puluh sembilan, bagian kecil dua: teks sumber dipertahankan agar dapat diperiksa dalam tinjauan penutur asli.)
Uji pemahaman Anda: Speculation aturan
Five quick pertanyaan pada apa Speculation aturan API melakukan — dan tidak — melakukan. Pick sebuah jawaban untuk setiap, lalu periksa.
Log perubahan
Diperbarui 18 Jul 2026.
Ringkasan editorial dan detail perubahan yang tercatat.Detail perubahan
-
Catatan perubahan terperinci saat ini tersedia dalam bahasa Inggris.
-
Catatan perubahan terperinci saat ini tersedia dalam bahasa Inggris.
Perbandingan lengkap tidak tersedia — tidak ada cuplikan sebelumnya yang diarsipkan untuk revisi ini.