互動到下一次繪製(INP)是什麼?|SEO・GEO 百科

INP(互動到下一次繪製)是核心網頁指標之一,衡量使用者點按、輸入之後畫面多快給出反應,良好門檻是 200 毫秒以內。說明一次互動的三階段延遲、它與舊指標 FID 的差別,以及常見迷思。

INP(互動到下一次繪製)是核心網頁指標之一,用來衡量「使用者在你的網頁上點按、輸入之後,畫面要多久才會給出反應」。簡單說,它量的就是一個網頁「反應靈不靈敏、會不會卡」。

這篇文章會用新手角度說明:INP 是什麼、200 毫秒的良好門檻怎麼來、一次互動的延遲是由哪三段組成、它和被取代的 FID 差在哪,以及實際上要怎麼檢查與改善。

重點速覽

  • INP 是核心網頁指標之一,量的是使用者點擊、輸入之後畫面的反應速度,良好門檻是 200 毫秒以內。
  • 一次互動延遲由輸入延遲、處理時間、呈現延遲三段組成,最大元凶是主執行緒上跑超過 50 毫秒的「長工作」。
  • INP 在 2024 年 3 月 12 日正式取代舊的 FID,衡量範圍從「只看第一次互動」擴大到「整頁所有互動」。

INP 是什麼?

依 web.dev(Google 的開發者資源)的定義,INP 會觀察使用者在整個造訪期間「所有的互動」——點擊、觸控、按鍵——的反應延遲,再回報一個數值,代表幾乎所有互動都在這個時間之內完成。

和量「載入速度」的 LCP、量「視覺穩定度」的 CLS 不同,INP 量的是第三件事:互動的「反應速度」。

要記住一件事:INP 的單位是毫秒(ms),數字越小越好,代表你點下去之後畫面越快回應。

它取的接近你整頁體驗裡「最慢的那幾次互動」,所以只要有幾個按鈕特別卡,整頁的 INP 就會被拉高。

官方建議的門檻整理如下表:

評級INP 數值代表意義
良好≤ 200 毫秒反應靈敏,幾乎不卡頓
待改善200 – 500 毫秒偶爾會感覺到延遲
不佳> 500 毫秒常常一點就卡,體驗很差

和其他核心網頁指標一樣,Google 是用「真實使用者數據」的第 75 百分位數(p75)來判定,並把行動裝置與桌機分開看。

白話說,就是要有 75% 的造訪,INP 都在 200 毫秒以內,這一頁才算「良好」。


用白話文怎麼說?

你可以把網頁想成一個店員。你問他一句話(按一個按鈕),他要多久才抬頭回應你?

如果幾乎是秒回,你會覺得這家店很俐落;如果你每問一句,他都要愣個兩三秒才動,你就會開始煩躁,覺得這網站「很鈍」。

INP 量的,就是這個「從你出手到畫面有反應」的等待感。

更具體一點:你在手機上點「加入購物車」,結果按鈕按下去沒動靜,過了半秒畫面才更新——你甚至會懷疑自己是不是沒點到,忍不住又戳一次。

那種延遲,就是 INP 想抓出來的東西。

你可以這樣記:LCP 顧的是「畫面多快出現」,CLS 顧的是「出現之後穩不穩」,INP 顧的是「你動手之後它多快回應」。三個合起來,才是完整的好體驗。


INP 實際上要做什麼?

第一步,先拆解「一次互動的延遲是由哪三段組成的」,你才知道要救哪一段。web.dev 把每一次互動拆成三段:

  • 輸入延遲(input delay):從你按下去,到瀏覽器「開始」跑對應程式之間的等待。如果這時主執行緒正忙著別的工作,你的點擊就得排隊。
  • 處理時間(processing duration):事件處理程式(通常是 JavaScript)實際執行、算出該做什麼所花的時間。
  • 呈現延遲(presentation delay):程式跑完後,瀏覽器重新計算版面、把更新後的下一個畫面畫到螢幕上所花的時間。

這三段加起來,就是這一次互動的延遲;INP 取的,是你整頁裡數一數二長的那一次。

第二步,認識最大元凶:「長工作」。依 web.dev,任何在主執行緒上一口氣跑超過 50 毫秒的工作,就算一個「長工作(long task)」。

主執行緒一次只能做一件事,當它被一段長工作卡住,你此刻的點擊就只能乾等——這正是輸入延遲變長的主因。

第三步,對症下藥。常見且有效的改善方向包括:

  • 把長工作切小:別讓一段 JavaScript 一口氣跑很久,把它切成多個小段,中間「讓出」主執行緒,瀏覽器才有空先回應使用者。
  • 善用 scheduler.yield():這是較新的排程 API,用來在長工作中間主動讓步;和傳統的 setTimeout 不同,它會保留原本的優先順序,讓你的程式在處理完使用者輸入後盡快接著跑。
  • 事件處理程式裡少做事:使用者一點就要跑的程式,原則是「能少做就少做」,把不急的運算延後或搬走。
  • 把粗重運算丟給 Web Worker:耗時的計算可以交給背景執行緒(Web Worker)去算,主執行緒只負責把結果畫出來,畫面就不會被卡住。
  • 控制 DOM 與版面複雜度:頁面元素太多、太複雜,瀏覽器「畫下一張」就會變慢,呈現延遲跟著拉長。

第四步,照這個流程檢查:

  • STEP 1 看真實數據:到 Google Search Console 的「核心網頁指標」報表,或 PageSpeed Insights 看田野數據裡的 INP。
  • STEP 2 現場重現:用 Chrome 開發者工具的 Performance 面板,或 web-vitals 套件,邊操作邊看哪個互動最慢、卡在三段裡的哪一段。
  • STEP 3 對症處理:依上面方向,先救最慢、又最常被點的那幾個互動。
  • STEP 4 過幾週再回看:田野數據以 28 天滾動計算,別期待今天改、明天就變綠。

關於 INP 的常見迷思

迷思一:INP 和舊的 FID 是同一回事

不是。INP 在 2024 年 3 月 12 日正式取代 FID,成為核心網頁指標。

兩者差很多:FID 只量「第一次互動」、而且只量三段裡的「輸入延遲」那一段;INP 量的是「所有互動」、而且涵蓋輸入延遲、處理時間、呈現延遲完整三段。

所以 INP 嚴格得多——很多在 FID 時代看起來很順的網站,換到 INP 就現出原形。

迷思二:只要把第一次點擊弄快就好

不對,那是 FID 的舊思維。INP 看的是你整頁體驗裡偏慢的那幾次互動,不是只看開場第一下。

所以就算首次互動很快,只要中後段有某個按鈕、某個展開動作特別卡,INP 一樣會被拉高。

迷思三:INP 高,就是因為我的網路太慢

多半不是。INP 衡量的是「裝置上的反應速度」,主要卡在 JavaScript 佔住主執行緒、運算太重,跟你的下載頻寬是兩回事。

網路慢通常先反映在 LCP(載入),而不是 INP(反應)。

迷思四:分數沒到綠色,Google 就會把我大降排名

沒這麼直接。核心網頁指標是排名的考量之一,但只是「眾多訊號裡的一個」,通常在內容相近、難分高下時才比較看得出差別。

INP 該顧,但它是體驗的基本功,不是排名的開關。


總結

如果只記一句話:INP 量的是「你在網頁上點下去之後,畫面多快給你反應」,單位是毫秒,良好門檻是 200 毫秒以內(p75)。

新手可以記住三件事。

  • 第一,先到 Google Search Console 看自己的 INP 落在哪一級,再用開發者工具找出最卡的那幾個互動。
  • 第二,判斷延遲是卡在輸入延遲、處理時間還是呈現延遲,再從「把長工作切小、事件處理程式裡少做事」開始改。
  • 第三,記得 INP 已在 2024 年 3 月 12 日取代 FID,衡量的是整頁所有互動,不是只看開場第一次點擊。

參考資料