Kiểm Tra Thẻ Meta
Công cụ kiểm tra thẻ meta đo thay vì đếm: tiêu đề và meta description của trang được đo bằng pixel, đúng chỗ kết quả của Google cắt chúng, rồi cho biết trang có thể được lập chỉ mục không và liên kết trông thế nào khi được chia sẻ.
Chúng tôi đọc trang từ máy chủ của mình theo cách Google đọc phần head, và đo tiêu đề cùng mô tả bằng pixel.
Meta description nên dài bao nhiêu ký tự?
Đủ dài để mô tả trang: Google không đặt mức tối đa và cắt đoạn trích cho vừa độ rộng màn hình, chứ không theo số ký tự. Bên thứ ba đo khoảng hiển thị đó vào khoảng 920 pixel trên máy tính và 680 trên điện thoại; theo số đo của chúng tôi, một câu tiếng Việt thông thường lấp đầy khoảng đó ở khoảng 140 và 105 ký tự.
Theo lời Google: “Không có giới hạn về độ dài của meta description, nhưng đoạn trích sẽ bị cắt bớt trong kết quả Google Tìm kiếm khi cần, thường là để vừa với chiều rộng của thiết bị” (Google). Đơn vị là độ rộng, nên chính các chữ cái quyết định. Đo bằng Arial cỡ 14 px, iiiiii rộng 19 px còn WWWWWW rộng 79 px; chữ tiếng Nhật là ký tự full-width (rộng trọn một ô vuông), nên cùng khoảng hiển thị chỉ chứa được khoảng một nửa số ký tự, còn tiếng Hàn, vốn viết có dấu cách, chứa được khoảng hai phần ba.
Vì thế con số quen thuộc “155 đến 160 ký tự” chỉ là quy tắc ước chừng, không phải giới hạn, và một công cụ kiểm tra meta description chỉ đếm ký tự có thể sai theo cả hai chiều. Mô tả mẫu bên dưới dài 129 ký tự: viết như câu bình thường, nó rộng 825 px và vừa với kết quả trên máy tính, còn dư chỗ; cùng những từ đó viết hoa toàn bộ thì vượt quá mép 111 px. Những lời khuyên kiểu “50–60 ký tự, tức là 580 pixel” coi hai đơn vị như có thể thay cho nhau, nhưng thực ra không phải vậy.
Độ dài không ảnh hưởng gì đến thứ hạng: năm 2009, Google cho biết không dùng mô tả để xếp hạng, và tài liệu của Google không nêu hình phạt nào cho mô tả dài hay thiếu mô tả. Google cũng thường tự viết đoạn trích từ trang; hai nghiên cứu của bên thứ ba thấy Google thay mô tả ở khoảng hai trên ba kết quả. Hãy viết cho người đọc: riêng cho từng trang, tóm tắt thật sự, không bao giờ là một danh sách từ khóa, với những từ quan trọng đặt trước.
Nơi duy nhất Google thực sự đếm ký tự là quy tắc robots max-snippet: con số của nó là số ký tự, với 0 nghĩa là không có đoạn trích và -1 để Google tự chọn (Google).
Miễn phí đổi trả cho mọi đôi giày leo núi. Da chống nước, đế bám tốt và bảo hành hai năm. Đặt trước 15 giờ để nhận hàng ngày mai.
MIỄN PHÍ ĐỔI TRẢ CHO MỌI ĐÔI GIÀY LEO NÚI. DA CHỐNG NƯỚC, ĐẾ BÁM TỐT VÀ BẢO HÀNH HAI NĂM. ĐẶT TRƯỚC 15 GIỜ ĐỂ NHẬN HÀNG NGÀY MAI.
Khoảng hiển thị do bên thứ ba quan sát; Google không công bố khoảng nào.

Đo, không đếmTiêu đề và mô tả ở đúng cỡ mà trang kết quả vẽ chúng, với thước cho thấy chỗ mỗi phần bị cắt trên máy tính và trên điện thoại.Lập chỉ mục, theo từng công cụ tìm kiếmThẻ meta robots và header X-Robots-Tag, đọc theo đúng cách Google, Bing và Yandex mỗi bên đọc.Những gì Google không bao giờ đọcMột phần tử kết thúc head quá sớm, dòng của nó, và mọi thẻ mà nó che đi.Trông thế nào khi được chia sẻCác card mà Facebook và X dựng từ các thẻ, kèm kích thước thật của ảnh đọc từ tệp.Thẻ title nên dài bao nhiêu?
Đủ dài để gọi đúng tên trang, và đủ ngắn để vừa khoảng 600 pixel, khoảng hiển thị mà bên thứ ba đo cho đường liên kết tiêu đề trên máy tính: theo họ là khoảng 50 đến 60 ký tự tiếng Anh thông thường, và theo số đo của chúng tôi, tiêu đề tiếng Việt cũng vào khoảng đó. Bản thân Google không đặt giới hạn và cắt đường liên kết tiêu đề “cho vừa với chiều rộng thiết bị”.
Hướng dẫn về đường liên kết tiêu đề của Google viết rằng “không có giới hạn về độ dài của phần tử <title>”, nhưng đề nghị tránh văn bản “dài dòng hoặc rườm rà không cần thiết”. Một nghiên cứu trên 80.959 tiêu đề của 2.370 website cho thấy Google viết lại tiêu đề dài hơn 70 ký tự gần như mọi lần, và tiêu đề 51 đến 55 ký tự khoảng 40% số lần.
<title> là một đầu vào, không phải đầu ra. Google tự động tạo đường liên kết tiêu đề từ phần tử title, tiêu đề chính hiển thị trên trang, các heading như <h1>, og:title, văn bản nổi bật khác, anchor text, văn bản của các liên kết trỏ đến trang, và dữ liệu có cấu trúc WebSite. Google thay thế tiêu đề bị thiếu, rập khuôn, nhồi từ khóa, hoặc khác ngôn ngữ hay hệ chữ với trang.
Vì vậy, hãy đặt cho mỗi trang một tiêu đề mô tả riêng, đặt tên website một lần ở đầu hoặc ở cuối, ngăn cách bằng một dấu phân cách như dấu gạch đứng, và tránh những tiêu đề mơ hồ như “Trang chủ”. Trình kiểm tra ở trên cũng đọc <h1> đầu tiên của trang, vì Google có thể lấy đường liên kết tiêu đề từ một trong hai.
- 1Phần tử title
- 2Tiêu đề chính hiển thị trên trang
- 3Các heading như h1
- 4Thẻ og:title
- 5Văn bản lớn, nổi bật khác
- 6Văn bản khác trên trang
- 7Anchor text trên trang
- 8Văn bản của các liên kết trỏ đến trang
- 9Dữ liệu có cấu trúc WebSite
Kiểm tra noindex: làm sao biết một trang có noindex?
Hãy xem hai nơi: thẻ meta robots trong HTML và header HTTP X-Robots-Tag. Header không bao giờ hiện trong mã nguồn trang, nên một công cụ kiểm tra noindex chỉ đọc HTML có thể báo trang lập chỉ mục được trong khi thực tế không; công cụ này đọc cả hai, cho Google, Bing và Yandex.
Thẻ noindex và header mang cùng các quy tắc, và Google cộng gộp chúng: với noindex trong header và all trong thẻ, trang là noindex, vì “quy tắc hạn chế hơn sẽ được áp dụng” (Google). none nghĩa là noindex, nofollow; chính trang về noindex của Google gọi nofollow là gợi ý. Khi không có thẻ nào, mặc định là index, follow. Công cụ Kiểm tra HTTP Header hiển thị mọi header mà trang gửi.
Yandex giải quyết xung đột theo hướng ngược lại: “Các chỉ thị cho phép được ưu tiên khi kết hợp với các chỉ thị cấm”, nên all bên cạnh noindex, follow vẫn được lập chỉ mục ở đó (Yandex). Vì vậy kết luận ở trên được đưa ra cho từng công cụ tìm kiếm, không phải một lần cho tất cả.
Cái bẫy là robots.txt. URL bị chặn ở đó không bao giờ được tải, nên noindex của nó không bao giờ được đọc, và URL vẫn có thể xuất hiện trong kết quả khi trang khác liên kết tới (Google). Để loại một trang, hãy cho phép thu thập dữ liệu và gắn noindex; noindex viết trong robots.txt hoàn toàn không được hỗ trợ. Và noindex mới chỉ có hiệu lực khi Google thu thập lại trang, việc có thể mất hàng tháng.
X-Robots-Tag: noindex| Công cụ tìm kiếm | Cách giải quyết xung đột | Trang này |
|---|---|---|
| Quy tắc hạn chế nhất được áp dụng | Bị loại | |
| Bing | Quy tắc hạn chế nhất được áp dụngKhông công bố quy tắc; đọc như Google | Bị loại |
| Yandex | Quy tắc cho phép được ưu tiên | Có thể lập chỉ mục |
Bị chặn trong robots.txt: trang không bao giờ được tải, nên noindex của nó không bao giờ được đọc.
Vì sao Google bỏ qua một số thẻ meta của tôi?
Thường là vì một phần tử không thuộc về <head>, như <img> hay <iframe>, nằm phía trên chúng. Google coi phần tử đó là điểm kết thúc của head và bỏ qua mọi phần tử sau nó (Google).
Chỉ có tám phần tử hợp lệ trong head: title, meta, link, script, style, base, noscript và template. Một pixel theo dõi dán vào cùng đoạn mã gắn thẻ, một <div> lạc chỗ hay một <iframe> nhúng sẽ kết thúc head sớm, và canonical, các liên kết hreflang và mô tả bên dưới bị mất mà không có lỗi nào ở đâu cả. Một công cụ phân tích thẻ meta chỉ gom mọi thẻ trong tệp vẫn báo tất cả đều có mặt.
Không phải mọi thứ đều mất. Google tôn trọng thẻ meta robots cả trong body, nên noindex sau điểm cắt vẫn có hiệu lực. Canonical thì không: Google chỉ chấp nhận nó trong head (Google). Trình kiểm tra ở trên nêu tên phần tử và dòng của nó, và liệt kê những thẻ Google không còn đọc.
Các thẻ do JavaScript thêm hoặc thay đổi là điểm mù còn lại. Google khuyên tránh điều đó khi có thể và đặt canonical trong mã nguồn HTML (Google), nên trình kiểm tra này đọc HTML mà máy chủ gửi.
<meta charset="utf-8"><title>Giày leo núi chống nước cho nam và nữ – Đổi …</title><link rel="stylesheet" href="/theme.css"><img src="https://px.example/p.gif" alt="">Google dừng ở đây<meta name="description" content="Miễn phí đổi trả cho m…">Google bỏ qua<link rel="canonical" href="https://store.example/boots">Google bỏ qua<link rel="alternate" hreflang="de" href="https://store.example/de/stiefel">Google bỏ qua<meta name="robots" content="max-snippet:160">Vẫn áp dụng: thẻ robots có hiệu lực cả trong bodyThẻ canonical có tác dụng gì?
Nó cho công cụ tìm kiếm biết bạn muốn hiển thị URL nào trong số nhiều URL có cùng nội dung, và đó là gợi ý, không phải quy tắc: “Google có thể chọn một trang khác làm trang chính tắc so với trang bạn chọn” (Google).
Google cân nhắc nó cùng các tín hiệu khác: chuyển hướng là mạnh nhất, rel=canonical là tín hiệu mạnh, sitemap là tín hiệu yếu, và không cái nào là bắt buộc (Google). Hãy đặt canonical tự tham chiếu trên trang bạn muốn hiển thị, viết nó dưới dạng URL tuyệt đối, giữ nó trong <head>, và đừng thêm hreflang, lang, media hay type vào nó, nếu không Google sẽ bỏ qua nó khi chọn canonical. Công cụ Kiểm tra Redirect theo từng bước của một chuyển hướng.
Có hai xung đột cần tránh. Canonical trên trang noindex gửi đi các tín hiệu mâu thuẫn nhau, và Google khuyên hoàn toàn không dùng noindex để chọn canonical. Còn canonical trỏ đến một website khác mà không ai ở đây đặt thì đáng xem kỹ: Google liệt kê canonical khác miền bị chèn vào là một dấu hiệu của website bị tấn công.
Các phiên bản ngôn ngữ thì được ghép với nhau bằng hreflang: mỗi phiên bản liệt kê chính nó và tất cả các phiên bản khác bằng URL đầy đủ, và hai trang không trỏ đến nhau sẽ bị bỏ qua. Mã là ngôn ngữ ISO 639-1 kèm mã vùng ISO 3166-1 tùy chọn: en-GB, không bao giờ là en-UK, và es-419 không được hỗ trợ (Google). Hãy trỏ canonical của mỗi phiên bản ngôn ngữ đến một URL cùng ngôn ngữ đó.
Cùng nội dung, nhiều URL
http://store.example/bootshttps://store.example/boots?utm_source=mailhttps://www.store.example/bootshttps://store.example/boots/https://store.example/bootsGợi ý: Google có thể chọn trang khácTín hiệu, mạnh nhất trước
rel=canonicalSitemapMột cặp hreflang
/en/boots/de/stiefelCả hai liên kết ngược: được dùng
/en/boots/fr/bottesChỉ một chiều: bị bỏ qua
Google thực sự dùng những thẻ meta nào?
Một danh sách ngắn: description, robots và googlebot, notranslate, nopagereadaloud, google-site-verification, khai báo Content-Type và charset, refresh, viewport và rating. Google đơn giản là bỏ qua những thẻ meta mà Google không hỗ trợ (Google).
Thẻ meta keywords là thẻ bị bỏ qua nổi tiếng nhất: tài liệu của Google nói thẻ này “không được Google Tìm kiếm sử dụng và hoàn toàn không ảnh hưởng đến việc lập chỉ mục và xếp hạng”, và năm 2009, Google đã thông báo ngừng dùng nó. Google cũng không dùng thuộc tính lang để nhận biết ngôn ngữ của trang, còn rel=next và rel=prev không còn tác dụng gì. Trong các thẻ Open Graph, Google chỉ ghi nhận og:title, như một nguồn cho đường liên kết tiêu đề.
Một số thẻ vẫn quan trọng dù Google không tính đến. Trình đọc màn hình và trình duyệt dùng lang. Không có thẻ viewport, điện thoại dàn trang rộng khoảng 980 pixel CSS rồi thu nhỏ, nên các kiểu viết cho màn hình hẹp không bao giờ được áp dụng (MDN); Google cho biết sự có mặt của thẻ này cho Google biết trang thân thiện với thiết bị di động. Và <meta charset> phải nằm trong 1.024 byte đầu tiên của tệp, phần duy nhất trình duyệt tìm nó (HTML).
Còn hai thẻ đáng xem. refresh hoạt động như một chuyển hướng, nhưng Google khuyên dùng 301 phía máy chủ thay thế. Và noarchive, đã bị Google ngừng dùng, vẫn quyết định ở Bing liệu nội dung có được xuất hiện trong câu trả lời chat hay không (Bing).
Google dùng
<meta name="description">Đôi khi trở thành đoạn tríchrobots · googlebotQuy tắc lập chỉ mục và đoạn trích<title>Một nguồn của đường liên kết tiêu đềog:titleMột nguồn khác của đường liên kết tiêu đềviewportĐược đọc như dấu hiệu trang thân thiện với di độngcharsetChỉ được tìm trong 1.024 byte đầu tiênrefreshHoạt động, nhưng 301 tốt hơnGoogle bỏ qua
keywordsKhông ảnh hưởng đến lập chỉ mục hay xếp hạngrel=next · rel=prevKhông còn được dùngKhông dành cho Google, vẫn quan trọng
<html lang>Không dùng để nhận biết ngôn ngữ; trình đọc màn hình có dùngog:imageFacebook và X dùngnoarchiveGoogle đã ngừng dùng, Bing vẫn dùngNguồn
- Google Search Central: đoạn trích, đường liên kết tiêu đề, thẻ meta robots và X-Robots-Tag, noindex, các thẻ meta Google hỗ trợ, siêu dữ liệu hợp lệ của trang, URL chính tắc và các phiên bản bản địa hóa
- HTML Living Standard (title, description, mã hóa ký tự) và MDN về thẻ meta viewport
- The Open Graph protocol và Meta for Developers về ảnh chia sẻ
- Tài liệu về card mà X công bố lần cuối, đọc từ Internet Archive: markup và summary_large_image
- Yandex về các chỉ thị meta robots và Bing Webmaster Blog
- Số quan sát, không phải số Google công bố: khoảng hiển thị và tỷ lệ viết lại từ các nghiên cứu của bên thứ ba như nghiên cứu tiêu đề của Zyppy; các độ rộng trên trang này là số đo của chính chúng tôi bằng Arial
Câu hỏi thường gặp về kiểm tra thẻ meta
Giới hạn ký tự của meta description là bao nhiêu?
Thẻ title nên dài bao nhiêu ký tự?
Làm sao kiểm tra một trang có noindex hay không?
noindex, nofollow nghĩa là gì?
Nên chặn trang bằng robots.txt hay dùng noindex?
Thẻ meta robots và X-Robots-Tag khác nhau thế nào?
Vì sao Google hiển thị meta title và mô tả khác với của tôi?
Làm sao kiểm tra thẻ Open Graph cho Facebook?
Twitter Card Validator còn dùng được không?
Google còn dùng thẻ meta keywords không?
Tôi có cần thẻ meta viewport không?
Trình kiểm tra thẻ meta này có chạy JavaScript không?
Còn thiếu điều gì?Đề xuất tính năng hoặc công cụ mới
Thêm công cụ về website và SEO
Phân Tích Liên Kết
Phân tích tất cả liên kết trên trang web với phát hiện dofollow/nofollow và kiểm tra trạng thái HTTP
Kiểm tra Redirect
Kiểm tra chuyển hướng URL, chuỗi chuyển hướng và mã trạng thái HTTP cho SEO
Kiểm tra HTTP Header
Phân tích header phản hồi HTTP và chấm điểm header bảo mật
Check CMS Website
Website dùng CMS, theme, plugin và công nghệ gì, kèm bằng chứng cho từng mục
Thẻ Open Graph và Twitter Card là gì?
Đó là các thẻ meta quyết định tiêu đề, văn bản và hình ảnh mà một liên kết hiển thị khi được chia sẻ. Open Graph có bốn thuộc tính bắt buộc,
og:title,og:type,og:imagevàog:url(OGP); X đọc các thẻtwitter:riêng và dùng các thẻ og này cho phần còn lại.Facebook yêu cầu ảnh tối thiểu 1200 × 630 px, gần tỷ lệ 1,91:1 và không quá 8 MB; 600 × 315 px là mức tối thiểu cho bài đăng liên kết, và ảnh dưới 200 × 200 px không được chấp nhận (Facebook). Hãy thêm
og:image:widthvàog:image:height: không có chúng, trình thu thập phải tải ảnh về trước, nên người đầu tiên chia sẻ liên kết sẽ không thấy ảnh. Là một công cụ kiểm tra Open Graph, trang này đọc kích thước thật của ảnh từ chính tệp ảnh.Tài liệu về card mà X công bố lần cuối, được lưu trữ vào tháng 12 năm 2023, yêu cầu ảnh tỷ lệ 2:1 tối thiểu 300 × 157 px cho
summary_large_image, ảnh vuông tối thiểu 144 × 144 px chosummary, dưới 5 MB và không bao giờ là SVG (X, bản lưu trữ). Khi không có thẻtwitter:, X dùngog:title,og:descriptionvàog:image, nhưng có thể chỉ hiển thị card summary nhỏ cho đến khitwitter:cardyêu cầu card lớn.Cả hai mạng đều lưu bộ nhớ đệm những gì chúng đọc: Facebook giữ một ảnh cho đến khi URL của ảnh thay đổi. Sharing Debugger của Facebook thu thập lại trang và cần đăng nhập Facebook. X không còn Card Validator công khai nào hoạt động: ngày 26 tháng 10 năm 2026, địa chỉ của nó chỉ dẫn đến trang đăng nhập rồi báo lỗi. Cách kiểm tra thực tế còn lại là dán liên kết vào một bài đăng mới mà không đăng.
summary_large_imagesummaryKhông có thẻ twitter:? X dùng og:title, og:description và og:image thay thế.