Sitemap XML là gì? Có Sitemap rồi tại sao Google vẫn không Index?

    14/11/2026    47    4.67/5 trong 3 lượt 
Sitemap XML là gì? Có Sitemap rồi tại sao Google vẫn không Index?
Sitemap XML giúp Google khám phá những URL quan trọng của website nhưng không đảm bảo chúng được index. Nha chia sẻ cách tạo sitemap, dùng lastmod đúng, loại URL không nên đưa vào và cách tổ chức sitemap cho blog lâu năm.

Xem nhanh:

Có một suy nghĩ Nha từng thấy khá hợp lý:

URL đã nằm trong sitemap rồi thì Google phải biết.

Google biết rồi thì chắc phải index.

Nghe rất logic.

Nhưng thiếu một đoạn.

Có trong Sitemap ↓ Google có thể khám phá URL ↓ Google có thể crawl ↓ Google có thể index ↓ Google có thể hiển thị

Mỗi mũi tên ở đây đều có chữ:

có thể.

Không phải:

chắc chắn.

Đó cũng là lý do một website hoàn toàn có thể có sitemap đẹp, Search Console đọc sitemap thành công nhưng vẫn có những URL:

Discovered - currently not indexed.

hoặc:

Crawled - currently not indexed.

Sitemap làm một việc rất hữu ích.

Nhưng nó không làm tất cả.

Sitemap là gì?

Sitemap là một tập tin giúp công cụ tìm kiếm biết những URL mà chủ website muốn giới thiệu để crawl.

Với Sitemap XML, một phiên bản rất đơn giản có thể như sau:

<?xml version="1.0" encoding="UTF-8"?> <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">

<url>

<loc>https://example.com/bai-viet-a</loc>

<lastmod>2026-11-13</lastmod>

</url>

<url>

<loc>https://example.com/bai-viet-b</loc>

<lastmod>2026-11-10</lastmod>

</url>

</urlset>

Nhìn khá đơn giản.

Mỗi URL có:

  • <loc> – địa chỉ URL;
  • <lastmod> – thời điểm URL được cập nhật đáng kể gần nhất.

Nhưng sitemap tốt không nằm ở việc XML đẹp.

Nó nằm ở câu hỏi:

URL nào thực sự đáng có mặt trong sitemap?

Sitemap có giúp SEO không?

Có.

Nhưng theo cách thực tế hơn câu:

Có sitemap thì tăng ranking.

Sitemap chủ yếu giúp Google:

  • khám phá URL;
  • biết những URL chủ website xem là quan trọng;
  • nhận biết URL canonical mà website muốn xuất hiện;
  • biết một số URL vừa được cập nhật;
  • khám phá nội dung ở website lớn hoặc có cấu trúc phức tạp.

Nhưng sitemap không:

  • bảo đảm URL được crawl;
  • bảo đảm URL được index;
  • bảo đảm URL được ranking;
  • bảo đảm URL xuất hiện trong AI Overview.

Nói ngắn:

Sitemap giúp Google tìm đường.

Nó không bắt Google phải thuê căn nhà nằm cuối con đường đó.

Google nói gì khi Submit Sitemap?

Google hiện nói khá rõ rằng việc submit sitemap chỉ là một:

hint – tín hiệu gợi ý.

Nó không bảo đảm Google sẽ:

  • download sitemap ngay;
  • crawl tất cả URL;
  • hay index các URL đó.

Đây là điểm rất giống canonical.

Website cung cấp tín hiệu.

Google còn sử dụng các hệ thống khác để quyết định.

Có Sitemap rồi tại sao Google vẫn không Index?

Vì:

Discovery và Indexing là hai việc khác nhau.

Sitemap có thể giúp Google biết:

URL A tồn tại.

Nhưng sau đó Google vẫn phải:

  • crawl;
  • render nếu cần;
  • phân tích nội dung;
  • xác định canonical;
  • đánh giá duplicate;
  • và quyết định có đưa URL vào index hay không.

Nha đã nói kỹ hơn chuyện này trong bài về Indexing:

Crawl được không đồng nghĩa Index được. Index được cũng không đồng nghĩa Rank được.

URL nào nên nằm trong Sitemap?

Nguyên tắc Nha thấy dễ nhớ nhất:

Chỉ đưa những URL mà mình thực sự muốn Google xem là ứng viên xuất hiện trên Search.

Thông thường đó là:

  • HTTP 200;
  • indexable;
  • canonical;
  • có nội dung thực;
  • và có giá trị với người tìm kiếm.

Ví dụ:

  • bài viết;
  • category có nội dung giá trị;
  • trang tác giả;
  • About;
  • một số tag page đủ tốt;
  • landing page quan trọng.

URL nào không nên nằm trong Sitemap?

Nha không đưa những URL sau vào nếu không có lý do đặc biệt:

Redirect URL

/old-page 301 → /new-page

Sitemap nên chứa:

/new-page

Không phải URL cũ.

404 hoặc 410

Trang đã biến mất thì không nên tiếp tục giới thiệu nó trong sitemap.

noindex

Nếu trang nói:

<meta name="robots" content="noindex">

nhưng sitemap lại nói:

Google ơi, URL này quan trọng.

thì hơi mâu thuẫn.

Duplicate URL

Nếu:

A canonical → B

thì sitemap nên ưu tiên:

B

Nha đã nói kỹ hơn về chuyện này trong bài Canonical URL là gì? Vì sao Google chọn URL khác?.

Tracking Parameter

/bai-viet?utm_source=facebook

không cần nếu canonical là:

/bai-viet

Search Result nội bộ

Ví dụ:

/search?q=seo

thường không phải URL Nha muốn Google index.

Tag mỏng

Ví dụ tag:

/tag/abc.php

chỉ có đúng một bài.

Không mô tả.

Không có nội dung bổ sung.

Nha sẽ cân nhắc liệu nó có thực sự cần được index, chứ chưa nói tới việc đưa vào sitemap.

Sitemap nên chứa Canonical URL

Google hiện khuyến nghị sitemap chứa những URL mà website muốn dùng làm canonical.

Ví dụ cùng một bài có:

https://example.com/bai-viet https://example.com/bai-viet?ref=facebook https://example.com/bai-viet?utm_source=email

Nếu URL chính là:

https://example.com/bai-viet

thì sitemap chỉ cần URL đó.

Điều này giúp những tín hiệu nói cùng một câu chuyện:

Canonical       ↓ Sitemap       ↓ Internal Link       ↓ URL chính

Ít mâu thuẫn hơn.

Ít việc cho Google đoán hơn.

lastmod là gì?

<lastmod> cho biết thời điểm URL được cập nhật đáng kể gần nhất.

Ví dụ:

<lastmod>2026-11-13</lastmod>

Đây là một trường rất hữu ích.

Nhưng cũng rất dễ bị dùng sai.

Google có thực sự dùng lastmod không?

Có thể dùng.

Google hiện nói rằng họ sử dụng lastmod nếu giá trị này:

  • chính xác;
  • nhất quán;
  • và Google có thể kiểm chứng qua thời gian.

Đây là đoạn đáng nhớ.

Nếu sitemap mỗi ngày đều nói:

Tất cả 500 bài đều vừa được cập nhật hôm nay.

trong khi không bài nào thay đổi...

Google hoàn toàn có khả năng học được rằng:

lastmod của website này không đáng tin lắm.

Khi nào nên đổi lastmod?

Google đưa ra một số ví dụ khá rõ.

Thay đổi đáng kể có thể gồm:

Nha cũng sẽ cập nhật lastmod khi:

  • viết lại đáng kể bài cũ;
  • cập nhật nguồn;
  • sửa thông tin lỗi thời;
  • bổ sung một phần kiến thức lớn;
  • thay đổi mục đích hoặc cấu trúc quan trọng của trang.

Khi nào không nên đổi lastmod?

Ví dụ:

  • footer đổi © 2025 thành © 2026;
  • counter lượt xem tăng;
  • quảng cáo thay đổi;
  • một widget chung thay đổi;
  • server render lại trang nhưng nội dung không thay đổi.

Đặc biệt:

Không đổi lastmod chỉ để Google tưởng bài mới.

Đây là cùng nguyên tắc với dateModified trong BlogPosting.

dateModified và lastmod có nên giống nhau không?

Trong rất nhiều trường hợp:

nên phản ánh cùng một lần cập nhật đáng kể.

Ví dụ:

BlogPosting.dateModified: 2026-11-13  Sitemap lastmod: 2026-11-13

Nhưng chúng phục vụ hai ngữ cảnh khác nhau.

dateModified mô tả nội dung.

lastmod nằm trong sitemap để báo lần thay đổi đáng kể của URL.

Nha không cần cố đồng bộ từng giây.

Chỉ cần:

đừng tự mâu thuẫn.

Một thay đổi Internal Link có được xem là cập nhật đáng kể không?

Google hiện liệt kê thay đổi link trên trang là một trong những thay đổi có thể đủ đáng kể để cập nhật lastmod.

Điều này khá hợp với cách Nha đang làm.

Ví dụ một bài năm 2018 được cập nhật để:

  • link tới kiến thức mới năm 2026;
  • bổ sung nguồn;
  • sửa nội dung;
  • nối vào topical cluster;

thì việc cập nhật lastmod hợp lý.

Nhưng chỉ thêm một link footer toàn site thì Nha không coi đó là lý do đổi lastmod cho 500 bài.

priority trong Sitemap còn ý nghĩa không?

Đây là một phần rất hay tồn tại trong sitemap cũ.

<priority>1.0</priority>

Homepage:

1.0

Category:

0.8

Article:

0.7

Google hiện nói rất thẳng:

Google bỏ qua giá trị priority.

Vậy không cần ngồi tranh luận:

Bài này quan trọng 0.8 hay 0.9?

Google không quan tâm con số đó.

changefreq thì sao?

Tương tự.

<changefreq>daily</changefreq>

hoặc:

<changefreq>weekly</changefreq>

Google hiện:

bỏ qua changefreq.

Nếu sitemap của website cũ vẫn có thì không phải thảm họa.

Nhưng nếu xây mới, Nha không cần thêm.

Một sitemap gọn có thể chỉ cần:

<url>

<loc>URL</loc>

<lastmod>DATE</lastmod> </url>

Một Sitemap được chứa tối đa bao nhiêu URL?

Google hiện áp dụng giới hạn:

  • 50.000 URL cho một sitemap;
  • hoặc 50 MB khi chưa nén.

Chạm một trong hai giới hạn thì phải chia sitemap.

Ví dụ:

sitemap-posts-1.xml sitemap-posts-2.xml sitemap-products-1.xml ...

Sau đó dùng Sitemap Index.

Sitemap Index là gì?

Sitemap Index là một file chứa danh sách các sitemap khác.

Ví dụ:

<?xml version="1.0" encoding="UTF-8"?>

<sitemapindex

xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">

<sitemap>

<loc>https://example.com/sitemap-posts.xml</loc>

</sitemap>

<sitemap>

<loc>https://example.com/sitemap-pages.xml</loc>

</sitemap>

</sitemapindex>

Đây không chỉ hữu ích khi có hơn 50.000 URL.

Nha còn thích dùng nó để phân nhóm.

Nha sẽ tổ chức Sitemap cho manhtunha.com thế nào?

manhtunha.com không phải website hàng triệu URL.

Vì vậy về kỹ thuật, một sitemap cũng có thể đủ.

Nhưng nếu muốn audit và theo dõi dễ hơn, Nha thích cấu trúc:

sitemap_index.xml │ ├── sitemap-posts.xml │ ├── sitemap-pages.xml │ ├── sitemap-categories.xml │ └── sitemap-tags.xml

Không phải vì Google cần bốn file.

Mà vì Nha cần biết:

Nhóm URL nào đang có vấn đề?

Ví dụ Search Console cho thấy:

Posts: 500 submitted 490 indexed  Tags: 200 submitted 45 indexed

Thì câu hỏi xuất hiện ngay:

200 tag này có thực sự cần index không?

Đây là giá trị vận hành khá lớn.

Sitemap Tags trên manhtunha.com cần cẩn thận

Nha đang xây nhiều tag page.

Ví dụ tag:

Một tag đủ tốt có thể trở thành landing page chủ đề.

Nó có:

  • mô tả riêng;
  • nhiều bài liên quan;
  • Internal Link;
  • mục đích rõ.

Những tag như vậy có thể đáng index.

Nhưng nếu tag:

/tag/foo.php

chỉ chứa đúng một bài và không có nội dung bổ sung thì Nha sẽ đặt câu hỏi:

Trang này mang lại gì ngoài việc lặp lại article listing?

Nếu không đáng index:

thì cũng không nên có mặt trong sitemap indexable.

Có nên đưa Pagination vào Sitemap?

Không có quy tắc:

Pagination tuyệt đối không được có trong sitemap.

Nhưng Nha quay lại nguyên tắc:

Sitemap chứa những URL mình thực sự muốn Google xem là ứng viên hiển thị trên Search.

Ví dụ:

/online-marketing.php /online-marketing-p2.php /online-marketing-p3.php

Các trang pagination vẫn cần crawlable để Google đi tới những bài sâu hơn.

Nhưng không có nghĩa mọi pagination bắt buộc phải nằm trong sitemap.

Quan trọng hơn là:

  • link pagination crawlable;
  • mỗi page dùng self-canonical đúng;
  • page 1 dùng URL sạch;
  • không canonical tất cả về page 1.

Pagination xứng đáng một bài riêng.

Nha để dành.

Có cần Image Sitemap không?

XML Sitemap hỗ trợ thêm thông tin về:

  • image;
  • video;
  • news;
  • các phiên bản ngôn ngữ.

Nhưng blog bình thường không nhất thiết phải lập một Image Sitemap riêng chỉ vì có ảnh.

Nếu ảnh:

  • xuất hiện trong HTML;
  • Googlebot crawl được;
  • URL ảnh ổn định;
  • không bị robots chặn;

Google vẫn có thể khám phá ảnh qua trang.

Image Sitemap hữu ích hơn ở những website phụ thuộc nhiều vào Search hình ảnh hoặc ảnh khó khám phá bằng HTML thông thường.

Sitemap có cần đặt ở root không?

Google khuyến nghị sitemap đặt ở root của website nếu muốn nó có phạm vi toàn site.

Ví dụ:

https://manhtunha.com/sitemap.xml

dễ hiểu hơn việc để:

https://manhtunha.com/tools/seo/files/sitemap.xml

nếu sitemap đó dành cho toàn website.

Về kỹ thuật có nhiều cách submit khác nhau.

Nhưng đơn giản vẫn thường tốt.

URL trong Sitemap nên là URL tuyệt đối

Dùng:

https://manhtunha.com/bai-viet.php

Không dùng:

/bai-viet.php

Google yêu cầu sitemap sử dụng fully-qualified absolute URL.

www và non-www phải thống nhất

Nếu canonical site là:

https://manhtunha.com/

thì sitemap cũng nên chứa:

https://manhtunha.com/...

Không nên lúc:

https://www.manhtunha.com/

lúc:

http://manhtunha.com/

Canonical.

Redirect.

Internal Link.

Sitemap.

Nên cùng nói về một URL.

Thứ tự URL trong Sitemap có quan trọng không?

Không.

Google nói thứ tự URL trong sitemap không có ý nghĩa.

Không cần:

Đưa bài quan trọng lên đầu file để Google crawl trước.

XML không phải bảng xếp hạng.

Submit Sitemap bằng cách nào?

Có vài cách.

Google Search Console

Vào:

Search Console → Sitemaps → Add a new sitemap

Đây là cách Nha thích nhất vì có thể xem:

  • Google đã đọc sitemap chưa;
  • lần crawl;
  • trạng thái;
  • lỗi parsing nếu có.

robots.txt

Có thể khai:

Sitemap: https://example.com/sitemap.xml

Google sẽ phát hiện khi crawl robots.txt.

Search Console API

Phù hợp với hệ thống cần automation.

RSS / Atom

Google cũng chấp nhận RSS hoặc Atom như một dạng sitemap cho nội dung gần đây.

Có nên Submit Sitemap lại mỗi khi đăng bài?

Không cần.

Nếu sitemap động:

  • URL mới tự xuất hiện;
  • lastmod đúng;
  • Google đã biết sitemap;

thì không cần mỗi bài mới lại:

Delete Sitemap → Submit lại.

Google sẽ quay lại crawl sitemap.

Search Console cũng không cần được nhấn nút liên tục để chứng minh mình đang chăm SEO. 😄

Sitemap tĩnh hay Sitemap động?

Với blog đã có hàng trăm bài, Nha chọn:

động.

Tức là hệ thống sinh sitemap từ database.

Ví dụ logic:

SELECT URL, ModifiedDate FROM Content WHERE:

Published = 1

AND NoIndex = 0

AND HTTPStatus = 200

AND IsCanonical = 1

Sau đó sinh:

<url>

<loc>URL</loc>

<lastmod>ModifiedDate</lastmod> </url>

Không cần ngồi mở sitemap.xml rồi thêm URL bằng tay mỗi lần đăng bài.

Nha từng là lập trình viên nên phần này Nha khá thích.

Thứ gì database biết rồi...

đừng bắt con người nhập lại.

Nhưng đừng dùng UpdatedDate của database một cách mù quáng

Đây là cái bẫy kỹ thuật.

Giả sử bảng có:

UpdatedDate

nhưng field này đổi mỗi khi:

  • tăng view count;
  • cập nhật rating;
  • cache;
  • admin mở rồi save;
  • một job hệ thống chạy.

Nếu dùng nó làm:

<lastmod>

thì sitemap có thể báo bài được cập nhật mỗi ngày dù content không đổi.

Tốt hơn là có một field riêng kiểu:

ContentModifiedDate

hoặc:

SEOUpdatedDate

chỉ thay đổi khi nội dung có chỉnh sửa đáng kể.

Đây là chi tiết nhỏ nhưng Nha nghĩ rất đáng làm với một CMS tự phát triển.

Sitemap và Search Console nên được dùng để Audit

Nha không muốn Search Console Sitemap chỉ có:

Success.

rồi xong.

Nha muốn dùng sitemap như một inventory.

Ví dụ:

Sitemap Articles: 600 URLs  Indexed: 550  Not Indexed: 50

Sau đó xem 50 URL đó nằm ở nhóm nào:

  • Discovered;
  • Crawled not indexed;
  • Canonical issue;
  • Soft 404;
  • Duplicate.

Như vậy sitemap trở thành:

Danh sách URL mình muốn Google index để so sánh với thứ Google thực sự đang index.

Đây là giá trị rất lớn.

Sitemap và Indexing nên nói cùng một câu chuyện

Nếu sitemap có 1.000 URL nhưng chỉ 300 URL thực sự đáng index thì vấn đề không phải:

Làm sao ép Google index 700 URL còn lại?

Có thể câu hỏi đúng là:

Tại sao 700 URL đó có mặt trong sitemap?

Đây là chỗ bài Sitemap nối trực tiếp với bài Indexing.

Áp dụng cho manhtunha.com

Với một blog gần 10 năm tuổi, Nha sẽ dùng sitemap không chỉ để submit bài mới.

Nha muốn sitemap phản ánh phiên bản website hiện tại.

Tức là:

Articles

Chỉ những bài:

  • đang publish;
  • canonical;
  • HTTP 200;
  • indexable.

Pages

Ví dụ:

  • homepage;
  • trang tác giả;
  • những trang giới thiệu quan trọng.

Categories

Những category thực sự có nội dung và muốn xuất hiện trên Search.

Tags

Chỉ tag đủ chất lượng.

Không phải cứ database có tag là sitemap phải có tag.

Một nguyên tắc Nha sẽ dùng từ bây giờ

Mỗi URL trong sitemap phải trả lời được:

Tại sao tôi muốn Google index URL này?

Nếu câu trả lời là:

Vì hệ thống tự sinh nó.

thì chưa đủ.

Checklist Sitemap XML Nha sẽ dùng

  • Sitemap có truy cập được không?
  • HTTP status có 200 không?
  • XML có hợp lệ không?
  • UTF-8 chưa?
  • URL có dùng HTTPS chuẩn không?
  • URL có phải absolute URL không?
  • Chỉ chứa canonical URL chưa?
  • Có redirect URL không?
  • Có 404 không?
  • Có noindex URL không?
  • Có parameter URL không cần thiết không?
  • lastmod có chính xác không?
  • lastmod có bị đổi mỗi ngày giả tạo không?
  • Có còn priority/changefreq không cần thiết không?
  • Tag sitemap có chứa thin tag không?
  • Sitemap đã submit Search Console chưa?
  • robots.txt có khai Sitemap không?
  • Số URL submitted và indexed chênh lệch thế nào?

Những điều Nha không làm với Sitemap

  • Không submit lại sitemap mỗi ngày.
  • Không nghĩ sitemap đảm bảo indexing.
  • Không đưa mọi URL database sinh ra vào sitemap.
  • Không đổi lastmod hàng loạt để giả freshness.
  • Không ngồi chỉnh priority từ 0.8 thành 0.9.
  • Không dùng changefreq với hy vọng Google crawl nhanh hơn.
  • Không đưa redirect, 404 hoặc noindex URL vào sitemap chính.
  • Không xem Sitemap Success trong Search Console là SEO đã xong.

Sitemap có còn quan trọng trong thời AI Search không?

Có.

Không phải vì sitemap là một kỹ thuật GEO mới.

Mà vì một nguyên tắc cũ vẫn còn nguyên:

Muốn Google sử dụng một trang thì trước hết Google phải tìm thấy trang đó.

AI Overview.

AI Mode.

AEO.

GEO.

Nghe mới.

Nhưng phía dưới vẫn còn:

Discovery ↓ Crawling ↓ Indexing ↓ Understanding ↓ Retrieval

Sitemap nằm khá gần đầu chuỗi.

Không hào nhoáng.

Nhưng cần.

Bạn nên mang gì về sau bài này?

  • Sitemap giúp Google khám phá URL, không đảm bảo URL được crawl hoặc index.
  • Sitemap nên chứa những canonical URL mà website thực sự muốn xuất hiện trên Search.
  • Redirect, 404, noindex và duplicate URL thường không nên nằm trong sitemap chính.
  • Google bỏ qua priority và changefreq.
  • Google có thể dùng lastmod nếu website cung cấp nó chính xác và nhất quán.
  • lastmod chỉ nên thay đổi khi trang có thay đổi đáng kể.
  • Mỗi sitemap tối đa 50.000 URL hoặc 50 MB khi chưa nén.
  • Website lớn có thể dùng Sitemap Index để chia nhiều sitemap.
  • Thứ tự URL trong sitemap không quan trọng với Google.
  • Sitemap tốt không phải sitemap có nhiều URL nhất, mà là sitemap phản ánh đúng những URL mình thực sự muốn Google index.

Ngày trước Nha nhìn sitemap giống một danh sách:

Đây là tất cả URL website của tôi.

Bây giờ Nha thích nhìn nó theo cách khác:

Đây là những URL tôi tin là phiên bản chính, có giá trị và đáng để công cụ tìm kiếm quan tâm.

Khác nhau một chút.

Nhưng cách thứ hai khiến việc audit website dễ hơn rất nhiều.

Và đôi khi vấn đề không phải Google không chịu index URL.

Mà là chính mình chưa quyết định rõ:

URL nào thực sự đáng được index.

Nguồn và tài liệu tham khảo

Nha ưu tiên tài liệu chính thức của Google và kiểm tra lại vào tháng 11/2026.

Lưu ý: Sitemap là công cụ hỗ trợ discovery và crawling, không phải cơ chế để ép Google index một URL. Một URL có trong sitemap nhưng không được index cần được đánh giá thêm về kỹ thuật, canonical, nội dung và vai trò của URL trong website.

Cảm ơn bạn đã đọc hết bài viết!

Nha thân tặng bộ source code blog này cho những ai quan tâm.
☕

Mời tác giả tách cà phê / Tiếp sức cho Blog

Nếu nội dung này hữu ích với bạn, hãy ủng hộ một khoản nhỏ để tiếp thêm động lực cho tác giả duy trì và chia sẻ nhiều kiến thức chất lượng hơn!

Giới thiệu

Tìm kiếm Google

Tài trợ

Liên kết

Mạng thư viện
Quà tặng con gái và con trai
Dotgrid Planner 2023
Mua hàng tại amazone
Bàn phím cơ