Đẩy 606 URL qua Indexing API, Google báo chưa biết hơn nửa

Ảnh bìa: đẩy 606 URL qua Indexing API, Google báo chưa biết 315 URL

Bài viết do Nguyễn Nhật Ánh Dương thực hiện, biên soạn theo Chính sách nội dung của Marketing365. Cập nhật lần cuối .

Nội dung
  1. Đẩy 606 URL, Google báo chưa biết 315 cái
  2. Nhưng nói API không làm gì thì cũng sai
  3. Chia theo tuổi bài để so cho công bằng
  4. Đẩy 95 URL rồi tra lại sau 40 giờ
  5. Cái 35 URL kia còn lộ ra một lỗi khác
  6. Đọc lại tài liệu của Google thì đã thấy trước
  7. Vậy thì làm gì thay vì đẩy API
  8. Cách tự kiểm trên site của bạn

Google có một API tên là Indexing API. Bạn gửi một URL vào đó, nhận về 200 OK, và theo phần lớn hướng dẫn SEO tiếng Việt thì bài sẽ vào chỉ mục nhanh hơn. Nghe rất gọn, lại miễn phí, hạn mức 200 URL mỗi ngày.

Marketing365 chạy hai script đẩy tự động từ đầu tháng 7. Đến 13/08/2026 đã đẩy 606 URL. Hôm đó tôi ngồi tra lại từng URL bằng URL Inspection API — cũng là API của Google — để xem đẩy xong thì được gì. Kết quả không giống cái tôi tưởng.

Biểu đồ so sánh trạng thái chỉ mục giữa 590 URL đã đẩy qua Indexing API và 1.076 URL chưa đẩy
1.666 URL của marketing365.vn, tra bằng URL Inspection API ngày 13/08/2026. Nhóm đã đẩy có nhiều URL “đã biết” hơn, nhưng vào chỉ mục thì không hơn.

Đẩy 606 URL, Google báo chưa biết 315 cái

Trong 606 URL đã đẩy, 590 cái tra được trạng thái. Con số như sau:

315  (53,4%)  URL is unknown to Google
172  (29,2%)  Discovered - currently not indexed
101  (17,1%)  Submitted and indexed

Dòng đầu là dòng khó nuốt nhất. URL is unknown to Google nghĩa là Google nói nó không biết URL này. Không phải “biết rồi nhưng chưa xếp hạng”, cũng không phải “đã ghé qua rồi bỏ” — mà là không biết. Cả 315 URL đó đều không có mốc thời gian bò nào được ghi nhận.

Mà mỗi URL trong số đó đã được gửi vào Indexing API của chính Google, và lần gửi nào cũng trả về 200. Không có lỗi, không có cảnh báo, không có gì để mà sửa.

Nhưng nói API không làm gì thì cũng sai

Đặt hai nhóm cạnh nhau mới thấy chỗ thú vị. Trong 1.076 URL chưa từng đẩy lần nào, tỉ lệ “Google chưa biết” là 64,0%. Nhóm đã đẩy là 53,4%. Còn nhóm “đã biết nhưng chưa lập chỉ mục” thì ngược lại: 29,2% ở nhóm đã đẩy so với 14,9% ở nhóm chưa đẩy — gần gấp đôi.

Nói cách khác, cái API đó làm một việc, chỉ là không phải việc người ta quảng cáo. Nó kéo URL từ ô “chưa biết” sang ô “đã biết”. Còn từ “đã biết” sang “đã vào chỉ mục” thì nó đứng ngoài: 17,1% ở nhóm đã đẩy, 19,0% ở nhóm chưa đẩy.

Trước khi kết luận nhóm đã đẩy tệ hơn, phải nói ngay một chuyện: hai nhóm không so được trực tiếp. Script đẩy hằng ngày lấy bài mới nhất, mà bài mới thì đương nhiên chưa kịp vào chỉ mục. Nghĩa là nhóm “đã đẩy” trẻ hơn nhóm “chưa đẩy” một cách có hệ thống. Chênh lệch 17,1% so với 19,0% phần lớn là do tuổi bài, không phải do API.

Chia theo tuổi bài để so cho công bằng

Cách xử lý là ghép mỗi URL với ngày đăng của bài, rồi chỉ so trong cùng khoảng tuổi. Bỏ nhóm backfill ra vì nhóm đó được chọn chưa vào chỉ mục, đem so là gian lận. Còn lại nhóm đẩy hằng ngày so với nhóm chưa đẩy bao giờ:

tuổi bài      đẩy hằng ngày      chưa đẩy bao giờ
 0-14 ngày       2/53   ( 4%)      0/147  ( 0%)
15-29 ngày       0/90   ( 0%)      8/372  ( 2%)
30-44 ngày      12/282  ( 4%)     23/273  ( 8%)
45-59 ngày      17/23   (74%)    165/271  (61%)

Bốn dòng, hai dòng nghiêng về bên đẩy, hai dòng nghiêng về bên không đẩy. Ô 74% trông đẹp nhưng chỉ có 23 URL, chỉ cần vài cái đổi trạng thái là con số nhảy hơn chục điểm phần trăm. Đọc thẳng thắn thì bảng này không cho thấy tác dụng nào, mà cũng không đủ mạnh để nói là không có tác dụng. Nó chỉ nói: nếu có lợi ích thì lợi ích đó nhỏ hơn nhiễu.

Đẩy 95 URL rồi tra lại sau 40 giờ

Bảng trên vẫn là số liệu quan sát, đầy yếu tố nhiễu. Thứ sạch hơn là đẩy một lô rồi tra lại chính lô đó sau một quãng thời gian.

16h40 ngày 13/08, script backfill đẩy 95 URL. 19h55 cùng ngày — khoảng ba tiếng sau — tra lần một. Sáng 14/08, khoảng 40 giờ sau lần đẩy, tra lần hai bằng đúng cách đó:

Đọc thêm: Cách Tối Ưu Url Chuẩn Seo Cho Website

                                 sau 3 giờ    sau 40 giờ
URL is unknown to Google             47           50
Submitted and indexed                35           35
Discovered - currently not indexed   12            9
Crawled - currently not indexed       1            1

số URL mới vào chỉ mục:  0
số URL tụt từ "đã biết" về "chưa biết":  4

Không cái nào vào chỉ mục. Bốn cái đi lùi. Cột “đã vào chỉ mục” đứng nguyên ở 35 — và 35 cái đó vốn đã ở đó từ lần tra sau ba tiếng, nghĩa là chúng vào chỉ mục trước khi được đẩy chứ không phải nhờ đẩy.

Chỗ này cần thành thật: 40 giờ là ngắn. Google hoàn toàn có thể xử lý lô này sau vài tuần. Cái thí nghiệm này bác được là “đẩy API cho vào chỉ mục nhanh” — nó không bác được “đẩy API rồi cuối cùng cũng có tác dụng”. Tôi sẽ tra lại lô này sau một tháng và cập nhật vào bài.

Cái 35 URL kia còn lộ ra một lỗi khác

Script backfill chọn URL để đẩy dựa trên một file trạng thái chỉ mục lưu sẵn, và file đó cho phép cũ tới 14 ngày. Trong 95 URL nó chọn ra vì “chưa vào chỉ mục”, có 35 cái tra lại thì đã vào chỉ mục rồi — 36,8%.

Nghĩa là hơn một phần ba hạn mức của ngày hôm đó bị tiêu vào những URL không cần đẩy. Hạn mức chỉ có 200 URL một ngày và site đang có hơn một nghìn URL Google chưa biết, nên chỗ lãng phí này là thật. Bài học không nằm ở Indexing API mà ở chỗ quen thuộc hơn: dữ liệu cũ dùng để chọn việc thì việc chọn ra cũng cũ theo.

Đọc lại tài liệu của Google thì đã thấy trước

Phần đáng nói nhất là chuyện này không phải bí mật. Tài liệu chính thức của Indexing API ghi rõ nó dùng cho trang có dữ liệu có cấu trúc JobPosting hoặc BroadcastEvent — tin tuyển dụng và sự kiện phát trực tiếp, hai loại nội dung hết hạn rất nhanh. Không có dòng nào nói nó dùng được cho bài blog hay bài tin thường.

API vẫn nhận URL của bạn và vẫn trả 200, vì nó không kiểm nội dung lúc nhận. Cái 200 đó chỉ có nghĩa là “đã nhận yêu cầu”, không có nghĩa là “sẽ làm gì đó với nó”. Suốt hai tháng tôi đọc 200 như một lời hứa, trong khi nó chỉ là một biên nhận.

Vậy thì làm gì thay vì đẩy API

Số liệu ở trên không nói “hãy tắt script đi”. Nó nói việc đẩy API là thứ rẻ tiền, để chạy nền cũng được, nhưng đừng tính nó vào kế hoạch. Chỗ đáng đổ công nằm ở nơi khác.

Cái nút thắt thật của site này là tốc độ bò: mỗi ngày sitemap dày thêm hàng chục URL trong khi Googlebot chỉ đọc được vài trang HTML — tôi đã đo và viết riêng trong bài mỗi ngày thêm 27 trang mới, Googlebot đọc 8. Khi hàng đợi bò đã tắc thì báo thêm cho Google biết một URL nữa chẳng giải quyết gì; nó chỉ làm cái hàng đợi dài thêm.

Ba việc có ích hơn, xếp theo thứ tự tôi sẽ làm:

  1. Giảm số URL mới mỗi ngày, hoặc gộp bớt trang mỏng. Một hàng đợi ngắn hơn là thứ duy nhất bạn kiểm soát được trực tiếp.
  2. Thêm liên kết nội bộ trỏ vào những trang đang nằm ở ô “Google chưa biết”. Đường dẫn từ trang được bò thường xuyên là cách để Google biết tới một URL, và cách này không có hạn mức.
  3. Theo dõi bằng Google Search Console, đừng theo dõi bằng mã trả về của API. Trạng thái chỉ mục là thứ duy nhất đáng nhìn.

Cách tự kiểm trên site của bạn

Nếu bạn cũng đang chạy script đẩy Indexing API, bài kiểm nhẹ nhất là mở Search Console, vào URL Inspection, dán vào vài URL đã đẩy cách đây trên một tuần. Nếu thấy “URL không có trên Google” kèm dòng ghi chưa từng thu thập dữ liệu, thì script của bạn đang chạy giống script của tôi: không lỗi, và không tác dụng.

Làm kỹ hơn thì cần một lần tra hàng loạt bằng URL Inspection API, chia theo tuổi bài như bảng ở trên. Hạn mức tra là 2.000 URL mỗi ngày, đủ cho hầu hết site vừa. Thứ bạn cần là hai con số cho cùng một khoảng tuổi bài: tỉ lệ vào chỉ mục của nhóm đã đẩy và của nhóm chưa đẩy. Nếu hai con số đó bằng nhau, bạn vừa mua lại được thời gian mà mình đang bỏ vào một việc không có tác dụng.

Có thể bạn thích

Để lại bình luận