Google tìm, đọc và xếp hạng trang web thế nào: từ thu thập tới lập chỉ mục
Một trang chỉ được xếp hạng khi đã đi qua đủ bốn bước: Google phát hiện địa chỉ, tải trang về, chạy JavaScript để hiển thị và quyết định lưu vào chỉ mục. Phần lớn câu hỏi vì sao không lên Google là trang đang kẹt ở một trong các bước đó.
Google đưa một trang lên kết quả tìm kiếm qua bốn bước nối tiếp: phát hiện địa chỉ trang, thu thập (tải trang về), hiển thị (chạy JavaScript để thấy trang như trình duyệt thấy) và lập chỉ mục (phân tích nội dung, quyết định có lưu vào kho hay không). Chỉ trang đã nằm trong chỉ mục mới được xếp hạng khi có người tìm. Mỗi bước có thể hỏng riêng, và phần lớn câu hỏi "vì sao site không lên Google" thực ra là câu hỏi "trang kẹt ở bước nào".
Hiểu đúng thứ tự này giúp bạn khỏi làm việc thừa: không ai tối ưu tiêu đề cho một trang Google còn chưa tải về được, và không có thủ thuật xếp hạng nào cứu một trang đang bị chặn lập chỉ mục.
Bước 1: Phát hiện — Google biết trang tồn tại bằng cách nào
Google không có danh sách mọi trang web. Nó biết tới một địa chỉ khi gặp địa chỉ đó ở đâu đó: một liên kết trên trang đã biết, một dòng trong sitemap, một lần bạn gửi qua công cụ Kiểm tra URL của Search Console. Liên kết từ trang khác vẫn là nguồn phát hiện chính.
Hệ quả thực tế:
- Trang mồ côi (không trang nào trong site trỏ tới) gần như vô hình, kể cả khi có trong sitemap. Sitemap giúp phát hiện, nhưng thiếu liên kết nội bộ thì Google ít lý do để coi trang đó quan trọng.
- Liên kết phải là thẻ
<a href="...">thật. Nút bấm chuyển trang bằng sự kiện JavaScript (onclick) không cho Google một địa chỉ để đi theo. - Site mới tinh, chưa ai liên kết tới, thì việc đầu tiên là khai báo trong Search Console và gửi sitemap — xem bài sitemap XML làm thế nào cho đúng.
Bước 2: Thu thập — Googlebot tải trang về
Googlebot là chương trình tải trang của Google. Từ khi Google chuyển hẳn sang lập chỉ mục ưu tiên thiết bị di động, phần lớn lượt thu thập đến từ Googlebot dạng điện thoại. Nghĩa là thứ Google đánh giá là bản điện thoại của trang; nội dung chỉ hiện trên máy tính coi như không tồn tại.
Trước khi tải một địa chỉ, Googlebot đọc robots.txt của tên miền đó. Nếu robots.txt chặn đường dẫn, Google không tải trang. Nếu máy chủ trả lỗi 5xx hoặc trả chậm liên tục, Google tự giảm nhịp thu thập để khỏi làm sập site — chi tiết trong bài ngân sách thu thập.
Ở bước này, mã trạng thái HTTP quyết định mọi thứ:
| Mã trả về | Google hiểu là |
|---|---|
| 200 | Trang có nội dung, chuyển sang bước tiếp |
| 301, 308 | Trang đã dời hẳn; tín hiệu dồn về địa chỉ mới |
| 302, 307 | Dời tạm; lâu dần Google có thể coi như 301, nhưng đừng trông cậy |
| 404, 410 | Không có trang; trang cũ trong chỉ mục sẽ bị gỡ dần |
| 5xx, 429 | Máy chủ có vấn đề; Google thử lại sau và giảm nhịp thu thập |
Một ca hay gặp ở site Việt: trang "không tìm thấy" vẫn trả mã 200 kèm dòng chữ "Trang không tồn tại". Google gọi đó là soft 404 (lỗi 404 giả) và thường loại khỏi chỉ mục, nhưng vẫn tốn lượt thu thập cho nó.
Bước 3: Hiển thị — chạy JavaScript như một trình duyệt
Sau khi tải HTML, Google đưa trang vào hàng đợi hiển thị, nơi một bản Chromium chạy JavaScript và dựng ra trang hoàn chỉnh. Google nói phần lớn trang được hiển thị khá nhanh, nhưng đây vẫn là một bước thêm, có hàng đợi, và có thể thất bại: tệp JS bị robots.txt chặn, lệnh gọi API hết thời gian chờ, nội dung chỉ tải khi người dùng cuộn hoặc bấm.
Quy tắc an toàn: những thứ quan trọng cho SEO — tiêu đề, mô tả, thẻ canonical, nội dung chính, liên kết — nên có sẵn ngay trong HTML máy chủ trả về. Trang dựng hoàn toàn bằng JavaScript vẫn có thể lên Google, nhưng chậm hơn và dễ hỏng hơn. Bài site dựng bằng JavaScript đi sâu vào chuyện này.
Bước 4: Lập chỉ mục — trang có được lưu vào kho không
Đây là bước nhiều người tưởng là tự động nhưng không phải. Google phân tích nội dung, thẻ tiêu đề, dữ liệu có cấu trúc, ngôn ngữ, rồi làm hai việc quan trọng:
- Gom trùng lặp. Các địa chỉ có nội dung giống hoặc gần giống nhau được gom thành một nhóm, và Google chọn một địa chỉ làm bản chính tắc (canonical) đại diện cho nhóm. Chỉ bản chính tắc được hiện trên kết quả. Thẻ canonical của bạn là một gợi ý cho lựa chọn này, không phải mệnh lệnh — xem bài thẻ canonical.
- Quyết định có lưu hay không. Google không lưu mọi trang tải về được. Trang mỏng, trùng lặp, chất lượng thấp, hoặc thuộc site Google đánh giá thấp có thể nằm mãi ở trạng thái "Đã thu thập dữ liệu – hiện chưa được lập chỉ mục".
Thẻ <meta name="robots" content="noindex"> hoặc dòng X-Robots-Tag: noindex nói thẳng với Google: đừng lưu trang này. Lưu ý trái trực giác: để Google thấy được noindex thì trang phải được thu thập. Chặn trang trong robots.txt rồi thêm noindex là tự mâu thuẫn — Google không tải trang nên không đọc được noindex, và địa chỉ đó vẫn có thể hiện trên kết quả (không có đoạn mô tả) nếu có nhiều liên kết trỏ tới.
Sau bốn bước: xếp hạng khi có người tìm
Xếp hạng diễn ra lúc có truy vấn, không phải lúc lập chỉ mục. Google dùng nhiều hệ thống xếp hạng: hiểu ý định truy vấn, mức liên quan của nội dung, chất lượng và độ tin cậy của trang và site, trải nghiệm trang, vị trí người tìm, ngôn ngữ. Từ tháng 03/2024, hệ thống "nội dung hữu ích" đã được gộp vào hệ thống xếp hạng lõi, nên chất lượng nội dung không còn là một "bộ lọc" tách riêng mà nằm trong mọi lần xếp hạng.
Điều người mới hay quên: kỹ thuật tốt chỉ đưa trang tới vạch xuất phát. Một trang được lập chỉ mục hoàn hảo mà không trả lời tốt hơn các trang khác thì vẫn nằm trang 5. Ngược lại, nội dung xuất sắc trên một trang không lập chỉ mục được thì không có cơ hội nào.
Bảng chẩn đoán: trang của bạn đang kẹt ở bước nào
| Dấu hiệu | Kẹt ở bước | Kiểm gì trước |
|---|---|---|
| Search Console không biết địa chỉ này | Phát hiện | Liên kết nội bộ, sitemap |
| "Đã phát hiện – hiện chưa được lập chỉ mục" | Thu thập | Tốc độ máy chủ, số lượng URL rác, liên kết nội bộ |
| "Bị chặn bởi robots.txt" | Thu thập | Quy tắc Disallow trong robots.txt |
| Kiểm tra URL thấy trang trống hoặc thiếu nội dung | Hiển thị | Tệp JS bị chặn, nội dung tải chậm |
| "Bị loại trừ bởi thẻ noindex" | Lập chỉ mục | Thẻ meta robots, X-Robots-Tag, cài đặt plugin SEO |
| "Google chọn trang chính tắc khác" | Lập chỉ mục | Nội dung trùng, canonical, liên kết nội bộ trỏ về đâu |
| "Đã thu thập dữ liệu – hiện chưa được lập chỉ mục" | Lập chỉ mục | Chất lượng, độ trùng, độ dày nội dung |
| Đã lập chỉ mục nhưng không có lượt hiển thị | Xếp hạng | Từ khoá, ý định tìm kiếm, đối thủ |
Danh sách đầy đủ các trạng thái và cách xử lý từng cái có trong bài vì sao trang không được lập chỉ mục.
Lỗi hay gặp
- Đo "đã lên Google chưa" bằng lệnh
site:. Lệnhsite:tenmien.comcho con số ước lượng, lên xuống thất thường và không đầy đủ. Dùng nó để xem nhanh thì được, còn số liệu thật nằm ở báo cáo Lập chỉ mục trang trong Search Console và công cụ Kiểm tra URL. - Bấm "Yêu cầu lập chỉ mục" hằng ngày. Nút này đưa địa chỉ vào hàng đợi thu thập ưu tiên, có hạn mức mỗi ngày, và không ép Google lưu trang. Trang đã bị đánh giá thấp thì bấm bao nhiêu lần cũng vậy.
- Tưởng thu thập là lập chỉ mục. Nhật ký máy chủ có Googlebot ghé không có nghĩa trang được lưu. Rất nhiều trang được tải hàng trăm lần mà vẫn không vào chỉ mục.
- Chặn tệp CSS/JS trong robots.txt theo một hướng dẫn cũ. Google cần các tệp này để hiển thị trang; chặn đi thì Google thấy một trang vỡ bố cục.
- Để môi trường thử nghiệm lọt ra ngoài. Tên miền phụ kiểu
dev.,test.không đặt mật khẩu, không noindex, có thể bị Google lập chỉ mục và cạnh tranh trùng lặp với site thật. Lỗi ngược lại cũng phổ biến: chép nguyên cấu hình từ bản thử lên bản thật, mang theo cả thẻ noindex.
Kiểm bằng SEO Gốc
Công cụ chấm điểm SEO của SEO Gốc đi đúng đường Googlebot đi ở hai bước đầu: tải trang chủ qua HTTPS như khách thật, đọc mã trạng thái, robots.txt, sitemap, thẻ noindex và canonical. Nếu điểm mục "cho phép lập chỉ mục" bằng 0 thì đó là việc phải sửa trước mọi thứ khác. Công cụ không thay được Search Console — chỉ Google mới biết trang có nằm trong chỉ mục hay không — nhưng nó cho bạn biết trong 30 giây những chặn cửa kỹ thuật hiển nhiên nhất.
Tài liệu gốc của Google về quy trình này: How Google Search works.
Hỏi đáp
Thu thập và lập chỉ mục khác nhau thế nào?
Thu thập là Googlebot tải trang về. Lập chỉ mục là Google phân tích trang đó và quyết định có lưu vào kho để hiện trên kết quả hay không. Một trang có thể được thu thập nhiều lần mà vẫn không được lập chỉ mục.
Bao lâu thì trang mới lên Google?
Không có con số cố định. Site đã có uy tín và liên kết nội bộ tốt có thể thấy trang mới trong vài giờ đến vài ngày; site mới tinh có thể mất vài tuần. Gửi sitemap và liên kết trang mới từ trang đã được lập chỉ mục là hai việc rút ngắn thời gian rõ nhất.
Chặn trang bằng robots.txt có làm trang biến khỏi Google không?
Không chắc. robots.txt chỉ ngăn Google tải trang; địa chỉ vẫn có thể hiện trên kết quả nếu có liên kết trỏ tới. Muốn gỡ khỏi kết quả thì để Google thu thập được và dùng noindex.
Google đánh giá bản điện thoại hay bản máy tính?
Bản điện thoại. Google lập chỉ mục ưu tiên thiết bị di động, nên nội dung, liên kết và dữ liệu có cấu trúc chỉ có trên bản máy tính coi như không được tính.
Đọc tiếp
Vì sao trang không được lập chỉ mục: đọc đúng trạng thái trong Search Console và cách kiểm từng nguyên nhân
Trang không vào chỉ mục vì Google bị chặn (noindex, robots.txt, lỗi máy chủ, 404) hoặc vì Google chọn không lưu (trùng lặp, nội dung mỏng).…
Ngân sách thu thập (crawl budget): khi nào site nhỏ cần quan tâm, khi nào không
Ngân sách thu thập là số địa chỉ Googlebot sẵn lòng và có thể tải trên site trong một khoảng thời gian. Site vài trăm đến vài chục nghìn tr…
robots.txt: chặn thu thập không phải chặn lập chỉ mục
robots.txt quyết định máy thu thập có được tải một đường dẫn hay không, không quyết định trang có nằm trong chỉ mục. Muốn gỡ trang khỏi Goo…
Thẻ canonical: viết đúng, các lỗi hay gặp và lúc Google bỏ qua nó
Thẻ canonical cho Google biết đâu là địa chỉ chính khi một nội dung có nhiều địa chỉ. Viết đúng là địa chỉ tuyệt đối, https, đúng tên miền…