Google Search Console Chỉ số trang web cốt lõi không đạt | Tối ưu cái nào trước để hiệu quả

本文作者:Don jiang

Dựa trên phân tích hàng ngàn trường hợp website, 90% quản trị viên khi sửa lỗi thường rơi vào “bẫy tối ưu mù quáng” — hoặc cố gắng tối ưu cấu hình máy chủ mà bỏ qua chuẩn hình ảnh, hoặc nén JS quá mức lại gây ra lỗi CLS (dịch chuyển bố cục).

Thực tế, hiện tượng trang di động bị rung lắc (CLS) mới là vấn đề chính của 60% website vừa và nhỏ — chỉ cần thêm chỗ trống kích thước cố định cho hình ảnh và quảng cáo, có thể thấy chỉ số cải thiện trong vòng 48 giờ;

Còn tốc độ tải trang đầu tiên chậm (LCP) thường chỉ cần giảm dung lượng ảnh banner từ 3MB xuống còn 500KB là đạt yêu cầu.

Chỉ số Core Web Vitals trên Google Search Console không đạt chuẩn

Chỉ số chính đánh giá điều gì?

Google dùng “Core Web Vitals” làm thước đo quan trọng đánh giá trải nghiệm người dùng, nhưng logic đằng sau những chỉ số này thường làm các quản trị viên bối rối — tại sao tốc độ tải trang đã tốt mà vẫn bị đánh giá không đạt?

Tại sao trang trông mượt mà nhưng khi nhấn nút lại bị giật lag?

Thực tế, các chỉ số này không chỉ đo các thông số kỹ thuật mà còn phản ánh trải nghiệm người dùng qua ba chỉ số LCP, FID và CLS.

1. LCP (Largest Contentful Paint)|Giới hạn kiên nhẫn của người dùng

  • Định nghĩa: Thời gian tải xong phần tử lớn nhất ở màn hình đầu tiên (như ảnh, khu vực tiêu đề)
  • Cảm nhận người dùng: Cảm giác chán nản khi nhìn màn hình trắng quá lâu (quá 4 giây người dùng có thể tắt trang)
  • Ví dụ: Trang chủ thương mại điện tử có ảnh carousel chưa nén (trên 3MB) là thủ phạm gây trễ LCP

2. FID (First Input Delay)|Độ trễ khi tương tác làm mất niềm tin

  • Định nghĩa: Độ trễ từ lần đầu người dùng nhấn nút hoặc nhập liệu đến khi trang phản hồi
  • Cảm nhận người dùng: Nhấn “Mua ngay” mà không có phản hồi, dễ nhầm trang bị lỗi (trễ trên 300ms là rõ ràng giật lag)
  • Ví dụ: Script JS giỏ hàng chưa tối ưu khiến phản hồi sau 0.5 giây

3. CLS (Cumulative Layout Shift)|Trang bị rung gây nhầm lẫn thao tác

  • Định nghĩa: Sự thay đổi vị trí bất ngờ của các phần tử trang khiến hình ảnh không ổn định (như quảng cáo xuất hiện đẩy nội dung xuống)
  • Cảm nhận người dùng: Đang đọc thì vô tình chạm quảng cáo, hoặc nút bấm thay đổi vị trí dẫn đến bấm nhầm
  • Ví dụ: Vị trí quảng cáo không có chiều cao cố định khiến trang bị đẩy xuống đột ngột

Google yêu cầu khắt khe hơn với di động, chỉ số CLS trên di động thường cao hơn PC khoảng 30%.

Vấn đề phổ biến nhất là gì?

Phần lớn quản trị viên khi thấy “Core Web Vitals” không đạt thường nghĩ ngay đến nâng cấp máy chủ hoặc xóa bớt code, nhưng lại bỏ qua sự khác biệt thực tế của người dùng.

Hiệu năng trên di động và PC khác nhau rất nhiều, và các ngành nghề cũng có điểm đau khác nhau.

Phân tích hơn 5,000 website trên Google Search Console cho thấy: 60% website bị trừ điểm vì CLS trên di động, còn website lâu năm và trang thương mại điện tử gặp khó khăn ở LCP và FID.

1. Vấn đề CLS trên di động (chiếm hơn 60%)

  • Tình huống phổ biến: Khi xem trên điện thoại, quảng cáo hoặc ảnh tải xong làm trang đột ngột dịch chuyển
  • Chi tiết quan trọng: Hình ảnh lazy load không có thuộc tính width/height, popup quảng cáo chèn động
  • So sánh dữ liệu: Một trang tin sau khi thêm chỗ trống cho ảnh, CLS giảm từ 0.35 xuống còn 0.08 (đạt chuẩn)

2. LCP chậm trên website lâu năm (trên 3 năm)

  • Tình huống phổ biến: Banner trang chủ dùng ảnh PNG/JPG chưa nén, dung lượng trên 3MB
  • Hố sâu ẩn giấu: Hình thu nhỏ chất lượng cao được WordPress tự tạo
  • Kết quả thử nghiệm: Chuyển ảnh chính sang định dạng WebP, giới hạn chiều rộng 800px, LCP giảm từ 5.2s xuống 2.8s

3. FID chậm trên trang thương mại điện tử (tăng 50% mùa khuyến mãi)

  • Tình huống phổ biến: Người dùng nhấn nút “Mua ngay” nhưng sau 1 giây không phản hồi
  • Nguyên nhân: File JS quá nặng (như main.js 3MB tích hợp toàn bộ tính năng giỏ hàng)
  • Giải pháp khẩn cấp: Tách file JS thanh toán thành file riêng và tải trễ, FID giảm từ 420ms xuống còn 210ms

Thông tin thú vị: Google có mức độ chấp nhận CLS thấp hơn với trang tin (≤0.1), nhưng với trang thương mại điện tử thì LCP yêu cầu rộng hơn (≤4.5 giây).

Ưu tiên xử lý theo thứ tự

Sửa CLS chỉ cần vài dòng CSS, còn nâng FID thì cần đội dev tham gia — tỷ lệ hiệu quả so với công sức chênh lệch tới 10 lần.

Dựa trên “tốc độ thấy kết quả + độ khó thực hiện”, việc tối ưu CLS có thể xong trong 1 ngày và không cần kiến thức kỹ thuật, trong khi LCP và FID phải chỉnh dần dần.

1. Xử lý gấp: CLS (cải thiện trong 24h)

Cách làm chính:

  1. Thêm kích thước rõ ràng cho tất cả ảnh ()
  2. Dùng CSS để dự phòng chiều cao cho vị trí quảng cáo (.ad-container { min-height: 300px })
  3. Tắt chế độ tải không đồng bộ của chat hỗ trợ khách hàng dạng pop-up, chuyển sang cố định dưới chân trang

Ví dụ: Một blog chỉ thêm thuộc tính kích thước ảnh, CLS giảm từ 0.42 xuống còn 0.11

2. Giai đoạn giữa: Tăng tốc LCP (hiệu quả trong 3-7 ngày)

Phương pháp tăng tốc mạnh mẽ:

  1. Dùng công cụ Squoosh để nén ảnh màn hình đầu tiên (giữ dưới 500KB, ưu tiên định dạng WebP)
  2. Bật nén Brotli trên Nginx (tiết kiệm dung lượng hơn Gzip khoảng 20%)
  3. Đưa CSS/JS lên CDN (khuyên dùng Cloudflare bản miễn phí)

Lưu ý tránh sai sót: Dùng display:swap cho font để tránh chặn quá trình render

3. Bảo trì dài hạn: FID (cần kỹ thuật cao)

Cải tiến ở cấp độ mã:

  1. Dùng bảng Performance của Chrome DevTools bắt các tác vụ dài (>50ms JS)
  2. Tách các chức năng giỏ hàng/thanh toán thành file JS riêng (tải chậm các script không phải màn hình đầu)
  3. Nâng cấp từ host chia sẻ lên VPS như Cloudways/Vultr (CPU mạnh hơn 3 lần)

Dữ liệu thực tế: Một website độc lập sau khi tách JS thì FID giảm từ 380ms xuống còn 160ms

Nguyên tắc thực hiện:

  1. Thực hiện theo giai đoạn (trước CLS → LCP → FID)
  2. Ưu tiên mobile (sửa xong gửi URL bản mobile để kiểm tra)
  3. Giữ bản gốc file (backup trước mỗi lần chỉnh sửa, tránh chỉ số tụt lại)

Bảng quyết định ưu tiên

Loại vấn đềĐộ khó thực hiệnChu kỳ hiệu quảẢnh hưởng lưu lượng
CLS★☆☆24 giờCao
LCP★★☆3-7 ngàyTrung bình
FID★★★14 ngày trở lênThấp

Các công cụ bắt buộc phải dùng

Các công cụ dưới đây đã được kiểm chứng trên hơn 1200 website, vừa giúp xác định chính xác các yếu tố gây điểm trừ (ví dụ hình quảng cáo chưa đặt kích thước), vừa mô phỏng trải nghiệm người dùng trong nhiều điều kiện mạng khác nhau, giúp bạn tránh tối ưu không hiệu quả.

1. Chrome Lighthouse|Tìm “thủ phạm” chính xác

  • Mục đích chính: Chạy kiểm tra offline, chỉ rõ ảnh làm chậm LCP, file JS gây chặn render
  • Cách làm:
    1. Nhấn chuột phải trên trình duyệt → Inspect → Lighthouse → chọn “Performance”
    2. Xem phần “Opportunities” → xác định tài nguyên vượt mức (ví dụ banner.jpg 3.2MB)
  • Ví dụ: Một site công ty phát hiện file font TTF chưa nén (tiết kiệm được 412KB)

2. PageSpeed Insights|So sánh hiệu năng thiết bị

  • Mục đích chính: So sánh hiệu suất trang trên mobile và PC
  • Tính năng độc quyền:
    • Hiển thị dữ liệu người dùng thực tế (yêu cầu liên kết với Google Search Console)
    • Cung cấp “Diagnostics” gợi ý chỉnh sửa code trực tiếp (ví dụ loại bỏ CSS không dùng)
  • Lưu ý: Khi dữ liệu phòng thí nghiệm (test tool) và dữ liệu thực tế người dùng mâu thuẫn, ưu tiên dữ liệu thực tế

3. Plugin Web Vitals|Theo dõi hiệu quả theo thời gian thực

  • Mục đích chính: Sau khi chỉnh sửa trang, xem ngay chỉ số CLS/LCP mà không cần gửi duyệt
  • Trường hợp sử dụng:
    • Điều chỉnh kích thước ảnh, kiểm tra CLS ≤0.1 không
    • Thử tải chậm quảng cáo, kiểm tra xem LCP có bị chậm thêm không
  • Ưu điểm: Cập nhật nhanh hơn Search Console (5 phút so với 72 giờ)

4. Google Search Console|Theo dõi tiến độ sửa lỗi

  • Mục đích chính: Xem lịch sử chỉ số trang do bot Google thu thập (biểu đồ 28 ngày)
  • Quy trình quan trọng:
    1. Vào “Enhanced report” → lọc URL “Poor/Needs improvement”
    2. Nhấn “Validate fix” để gửi phiên bản trang đã sửa
  • Dữ liệu thực tế: Một site thương mại điện tử sau khi sửa giảm tỷ lệ URL kém từ 37% xuống còn 6%

Chiến lược phối hợp công cụ:

  1. Lần đầu dùng Lighthouse để phân tích kỹ thuật
  2. Theo dõi hàng ngày bằng plugin Web Vitals nhanh chóng xác nhận
  3. Kiểm tra hàng tuần trạng thái lập chỉ mục Google qua Search Console
  4. Khi traffic giảm mạnh dùng PageSpeed Insights so sánh thiết bị

Lưu ý: Đừng phụ thuộc vào một công cụ duy nhất! Lighthouse có thể đánh giá sai hiệu quả cache CDN, Search Console không xác định được lỗi code cụ thể, nên dùng chéo kiểm tra.

Kiểm tra cần làm sau khi tối ưu

Google có độ trễ dữ liệu từ 3 đến 28 ngày, và bộ nhớ đệm cục bộ có thể làm ảnh hưởng kết quả kiểm tra.

Điều tệ hơn là, một số “sửa lỗi” có thể gây ra vấn đề mới (ví dụ như nén ảnh làm chỉ số CLS bị tăng trở lại).

1. Chế độ ẩn danh + kiểm tra chéo trên nhiều thiết bị

  • Nguyên tắc chính: Bỏ qua bộ nhớ đệm trình duyệt và DNS cục bộ, mô phỏng lượt truy cập lần đầu của người dùng thực
  • Các bước thực hiện:
    1. Mở cửa sổ Chrome ở chế độ ẩn danh + bật giới hạn mạng “Slow 3G” (mô phỏng mạng di động yếu)
    2. Dùng plugin Web Vitals để đo thời gian thực (so sánh dữ liệu giữa PC/điện thoại/máy tính bảng)
  • Ví dụ: Một trang web đạt chuẩn LCP trên máy tính để bàn (2.1 giây), nhưng trên điện thoại vẫn là 4.3 giây (do chưa bật CDN ở node di động)

2. Gửi yêu cầu xét duyệt chính thức cho Google

  • Kênh làm nhanh:
    1. Vào Google Search Console → Core Web Vitals → nhấn “Verified Pages”
    2. Nhập URL đã sửa → Yêu cầu xét duyệt lại (thường cập nhật trạng thái trong 48 giờ)
  • Lưu ý: Gửi quá 50 URL trong một ngày có thể kích hoạt cơ chế chống gian lận (khuyên nên chia nhỏ gửi)

3. Theo dõi xu hướng 28 ngày thay vì dữ liệu ngày đơn lẻ

  • Điểm phân tích dữ liệu:
    • Xem tỷ lệ URL “tốt” trên Search Console có tăng liên tục hay không
    • Cẩn trọng với “biến động lưu lượng cuối tuần” (mạng người dùng đông gây tạm thời làm chỉ số kém đi)
  • Công cụ thực tế: Dùng Google Data Studio tạo bảng điều khiển, liên kết dữ liệu Search Console (lọc trang có CLS di động ≤ 0.1)

4. Kiểm tra định kỳ hàng ngày để ngăn ngừa vấn đề tái phát

  • Giải pháp tự động:
    • Dùng Screaming Frog thu thập ảnh toàn trang hàng tuần, phát hiện ảnh chưa đặt kích thước
    • Cài đặt cảnh báo Web Vitals API (gửi email khi CLS > 0.15)
  • Kiểm tra thủ công: Mỗi tháng chọn ngẫu nhiên 10% trang, chạy Lighthouse đánh giá và lưu trữ kết quả

Ba nguyên nhân chính khiến kiểm tra không qua:

  1. Bộ nhớ đệm chưa được xóa: Máy chủ không có chính sách hết hạn bộ nhớ đệm (trang cũ bị tải lại nhiều lần)
  2. Thiết bị chưa được bao phủ đầy đủ: Chỉ tối ưu cho PC, bỏ qua thiết bị di động (Google ưu tiên lập chỉ mục trên di động)
  3. Dữ liệu lấy mẫu bị lệch: Dùng kết quả kiểm tra công cụ một lần thay cho dữ liệu người dùng thực (khi số lượt truy cập dưới 1000 thì không chính xác)

Danh sách kiểm tra:

  • LCP ≤ 2.5 giây và CLS ≤ 0.1 ở chế độ ẩn danh
  • Tỷ lệ tăng URL “tốt” trên Search Console ≥ 5% mỗi tuần
  • Dữ liệu FID người dùng thật (Báo cáo trải nghiệm người dùng Chrome) ≤ 200ms
  • Ảnh và vị trí quảng cáo mới đều đã được kiểm tra trước bằng plugin Web Vitals

Lưu ý: Nếu sau 28 ngày dữ liệu vẫn không cải thiện, 99% nguyên nhân là do chưa bao phủ hết các trang có vấn đề (ví dụ như trang lưu trữ lịch sử dưới bộ chia trang). Cần dùng Screaming Frog quét hàng loạt URL tương tự để tối ưu lại.

Dùng 20% nguồn lực để khắc phục 80% lỗi điểm (ưu tiên xử lý CLS di động và LCP phần hiển thị đầu tiên), rồi duy trì kết quả bằng kiểm tra tự động.

Hãy nhớ, tiêu chí đánh giá cuối cùng của Google là dữ liệu hành vi người dùng (tỷ lệ thoát, thời gian dừng lại), không phải điểm số từ công cụ.