Google Search Console

FID (First Input Delay)

Thời gian trễ giữa tương tác đầu tiên của người dùng (như click) và phản hồi của trình duyệt, nay thay bằng INP.

5 lượt xem Cập nhật: 26/05/2026

FID (First Input Delay) là gì?

FID (First Input Delay) là chỉ số đo thời gian trễ giữa lần tương tác đầu tiên của người dùng với trang web — như nhấn nút, click vào liên kết hoặc nhập liệu — và thời điểm trình duyệt bắt đầu xử lý sự kiện đó. Giá trị FID được tính bằng mili giây (ms), và chỉ được ghi nhận khi người dùng thực hiện một hành động nhập liệu hợp lệ trong vòng 5 giây sau khi trang tải xong phần nội dung chính (tức sau First Contentful Paint).

Lưu ý quan trọng: Từ tháng 3/2024, Google chính thức loại bỏ FID khỏi bộ chỉ số Core Web Vitals trong báo cáo Google Search Console và thay thế bằng INP (Interaction to Next Paint). FID không còn được sử dụng để đánh giá trải nghiệm người dùng trong các công cụ chính thức của Google như PageSpeed Insights, Search Console hay Chrome User Experience Report (CrUX). Tuy nhiên, hiểu FID vẫn hữu ích để nắm bối cảnh phát triển của các chỉ số hiệu năng web.

Tại sao quan trọng trong SEO?

FID từng là một trong ba chỉ số Core Web Vitals (cùng LCP và CLS), do đó ảnh hưởng trực tiếp đến xếp hạng tìm kiếm trên thiết bị di động từ năm 2021. Google xác nhận rằng trải nghiệm người dùng là yếu tố xếp hạng — và FID phản ánh khả năng phản hồi tức thì của trang khi người dùng muốn tương tác.

Mặc dù FID đã bị thay thế, việc tối ưu hóa cho FID trước đây đồng nghĩa với việc giảm khối lượng JavaScript chặn hiển thị, tinh chỉnh logic xử lý sự kiện và cải thiện khả năng phản hồi — những yếu tố vẫn giữ nguyên giá trị với INP ngày nay. Vì vậy, hiểu FID giúp bạn đọc hiểu sâu hơn về cách Google đánh giá “độ mượt” của trang.

Điều cần nhớ: Không có ngưỡng FID “tốt” nào còn được Google cập nhật chính thức sau khi ngừng hỗ trợ. Các ngưỡng cũ (ví dụ: <100 ms = tốt, 100–300 ms = cần cải thiện, >300 ms = kém) chỉ mang tính tham khảo lịch sử.

Cách hoạt động

FID đo thời gian từ khoảnh khắc người dùng tương tác (ví dụ: click chuột, chạm màn hình, nhấn phím) đến khi trình duyệt có thể bắt đầu thực thi hàm xử lý sự kiện (event handler). Thời gian này không bao gồm thời gian chạy hàm xử lý — chỉ tính phần chờ do trình duyệt đang bận (ví dụ: đang parse HTML, chạy script nặng, render lại layout).

Trình duyệt chỉ ghi nhận FID nếu:

  • Tương tác xảy ra trong vòng 5 giây kể từ First Contentful Paint (FCP);
  • Sự kiện thuộc nhóm “input” hợp lệ: click, tap, keydown, input (trên thẻ form), nhưng không bao gồm scroll, hover hay mouse move;
  • Không có sự kiện nào khác được ghi nhận trước đó trên cùng trang (FID chỉ lấy giá trị đầu tiên).

Nếu người dùng không tương tác trong 5 giây đầu, FID sẽ không được báo cáo — điều này giải thích vì sao nhiều trang có dữ liệu FID thiếu hoặc bằng 0 trong CrUX.

Hướng dẫn thực hiện

Dù FID không còn được báo cáo, các bước tối ưu dưới đây vẫn áp dụng trực tiếp cho INP và cải thiện trải nghiệm người dùng tổng thể:

  1. Giảm JavaScript chặn hiển thị: Loại bỏ hoặc trì hoãn các script không cần thiết ở giai đoạn đầu (dùng defer hoặc async), chia nhỏ bundle (code splitting), và loại bỏ polyfill thừa.
  2. Tối ưu hóa xử lý sự kiện: Tránh chạy logic nặng trong hàm onclick hoặc oninput; dùng debounce hoặc throttle cho sự kiện nhập liệu thường xuyên (như tìm kiếm tự động).
  3. Giảm thời gian thực thi dài (Long Tasks): Phân chia tác vụ nặng thành các phần nhỏ hơn (<50 ms mỗi phần) để trình duyệt còn thời gian phản hồi sự kiện.
  4. Sử dụng Web Workers: Dời các phép tính phức tạp (xử lý ảnh, mã hóa, phân tích dữ liệu) ra khỏi luồng chính.
  5. Kiểm tra bằng công cụ: Dùng Chrome DevTools > Tab Performance để ghi lại tương tác và tìm các Long Tasks; kiểm tra INP qua PageSpeed Insights hoặc Search Console (dưới mục Core Web Vitals > Experience > INP).

Lỗi thường gặp

Lỗi Nguyên nhân Cách khắc phục
FID cao dù trang tải nhanh JavaScript nặng chạy ngay sau tải, chiếm luồng chính khi người dùng click Chuyển script sang defer; tách logic xử lý sự kiện thành các phần nhỏ; dùng requestIdleCallback cho tác vụ nền
Không có dữ liệu FID trong Search Console Người dùng không tương tác trong 5s đầu; hoặc trang chủ yếu dùng scroll/hover thay vì click Thêm nút CTA rõ ràng ngay trên màn hình đầu (ví dụ: "Đăng ký ngay", "Xem sản phẩm"); kiểm tra bằng công cụ lab như Lighthouse để mô phỏng tương tác
FID báo cáo 0 ms nhưng trang vẫn chậm phản hồi FID chỉ đo lần tương tác đầu tiên — nếu người dùng click vào phần tử không có event handler, trình duyệt không ghi nhận độ trễ Dùng INP thay thế (đo tất cả tương tác trong suốt phiên); đảm bảo mọi nút đều có handler tối thiểu (dù chỉ là event.preventDefault()) để được theo dõi

Ví dụ thực tế

Một trang thương mại điện tử có nút "Thêm vào giỏ" ở vị trí đầu trang. Khi người dùng nhấn nút ngay sau khi trang hiện nội dung, trình duyệt mất 320 ms mới bắt đầu chạy hàm xử lý — do một script phân tích hành vi đang chạy liên tục trên luồng chính. Kết quả: FID = 320 ms (xếp loại "kém" theo tiêu chuẩn cũ).

Sau khi tối ưu: đội ngũ chuyển script phân tích sang Web Worker, thêm defer cho các thư viện không khẩn cấp, và đơn giản hóa hàm xử lý nút giỏ (chỉ gửi ID sản phẩm, không tải lại giỏ ngay lập tức). FID giảm xuống còn 42 ms. Đồng thời, INP cũng cải thiện từ 410 ms xuống còn 86 ms — phù hợp ngưỡng "tốt" hiện hành (<200 ms).

Lưu ý: Trong ví dụ này, việc cải thiện FID không làm tăng tốc độ tải trang, nhưng khiến trang cảm giác “nhanh hơn” khi người dùng muốn hành động — yếu tố then chốt cho tỷ lệ thoát và chuyển đổi.

Câu hỏi thường gặp

FID có còn ảnh hưởng đến thứ hạng Google không?

Không. Từ tháng 3/2024, Google không còn sử dụng FID trong bất kỳ hệ thống đánh giá nào của mình. Thứ hạng hiện dựa trên INP (cùng LCP và CLS) cho chỉ số Core Web Vitals. Việc duy trì FID thấp không còn mang lại lợi ích xếp hạng trực tiếp.

FID và INP khác nhau thế nào?

FID chỉ đo một lần tương tác đầu tiên trong 5 giây đầu, trong khi INP đo tất cả các tương tác trong suốt phiên người dùng và chọn giá trị xấu nhất (worst interaction) để đại diện. INP phản ánh trải nghiệm toàn cục chính xác hơn, đặc biệt với trang có nhiều thành phần tương tác như dashboard hoặc ứng dụng web.

Có nên vẫn theo dõi FID không?

Tùy trường hợp. Nếu bạn đang phân tích dữ liệu lịch sử (trước Q2/2024) hoặc hỗ trợ khách hàng dùng báo cáo cũ, FID vẫn có giá trị tham chiếu. Nhưng với mục đích tối ưu hiện tại, nên tập trung vào INP, kết hợp với các chỉ số như TTFB, Load Delay và Total Blocking Time (TBT) để đánh giá toàn diện.