Schema AggregateRating
Cách triển khai markup schema AggregateRating cho điểm sao, yêu cầu Review snippet của Google, điều kiện hiển thị và chính sách spam.
Ngôn ngữ
1 tín hiệu bằng chứng trên trang này
- Công cụ trực tuyến liên quanSchema Markup Validator
AggregateRating đánh dấu điểm trung bình của nhiều lượt đánh giá về một mục. Google yêu cầu ratingValue, ít nhất một trong ratingCount hoặc reviewCount, và itemReviewed khi không lồng. Đánh giá self-serving chỉ không đủ điều kiện có sao trên LocalBusiness và Organization; Product cùng các loại hỗ trợ khác vẫn đủ điều kiện nếu đánh giá là thật. Markup hợp lệ tạo điều kiện hiển thị, không tạo thứ hạng.
Tóm tắt — AggregateRating là đoạn code thêm vào trang để nói rằng “điểm trung bình của mục này là 4,6 sao, dựa trên từng này lượt đánh giá”. Đây là dữ liệu tạo nên ⭐ đoạn trích có sao dưới một số kết quả tìm kiếm. Thông thường, bạn lồng nó bên trong markup của đối tượng được đánh giá — sản phẩm, công thức hoặc doanh nghiệp. Google cũng cho phép dạng độc lập nêu trực tiếp mục được đánh giá, nhưng lồng ghép là mẫu phổ biến. Và bạn không thể tự đánh giá doanh nghiệp của mình rồi mong có sao; Google chặn trường hợp đó.
Schema AggregateRating là gì
Khi trang hiển thị “4.6 ★ (218 ratings)” (bản dịch) «4,6 ★ (218 lượt đánh giá)», con người hiểu ngay. Công cụ tìm kiếm chỉ thấy văn bản thuần và phải đoán các con số có nghĩa gì. AggregateRating diễn đạt rõ trong code bằng bộ từ vựng chung schema.org: nó gắn nhãn điểm trung bình, số lượt đánh giá làm cơ sở và thang điểm.
Evidence for this claim Schema.org AggregateRating represents a rating based on a collection of ratings or reviews and is attached to the item being rated. Scope: Schema.org vocabulary; Google feature eligibility depends on the host type and documented requirements. Confidence: high · Verified: Schema.org: AggregateRatingTừ quan trọng là aggregate — đây là trung bình của nhiều lượt đánh giá. Nó khác schema Review, vốn đánh dấu ý kiến bằng văn bản của một người. Phần lớn trang có cả hai sẽ dùng chúng cùng nhau: một AggregateRating cho điểm trung bình tổng thể và một số Review riêng lẻ.
Nó gần như luôn được viết dưới dạng JSON-LD — một khối code nhỏ nằm trong trang mà không làm thay đổi giao diện.
Vì sao đáng triển khai
Lợi ích là đoạn trích kết quả nhiều định dạng có sao: các ngôi sao vàng và số lượt đánh giá dưới kết quả tìm kiếm. Kết quả có sao nổi bật và có thể nhận thêm lượt nhấp. Để đủ điều kiện, Google cần một số thành phần:
ratingValue— điểm trung bình, chẳng hạn4.6.- ít nhất một trường đếm —
ratingCount(tổng số lượt chấm điểm) hoặcreviewCount(số người để lại review, có hoặc không kèm điểm sao). Bạn cần một trong hai. itemReviewed— đối tượng được đánh giá. Nếu lồng AggregateRating trong Product, Recipe hoặc loại khác, quan hệ lồng ghép đã thể hiện điều này nên có thể bỏ qua trường đó; dù theo cách nào, đối tượng được đánh giá vẫn cần tên. Evidence for this claim Google supports aggregate ratings in review snippets only for eligible item types and qualifying content. Scope: Google Search review snippet requirements; stars are not guaranteed. Confidence: high · Verified: Google: Review snippet structured data
Ngoài ra, bestRating và worstRating mô tả thang điểm; Google mặc định là 1–5 nếu bạn không khai báo.
Điều nhiều người hiểu sai nhất
Bạn không thể thêm AggregateRating cho chính doanh nghiệp của mình để nhận sao. Nếu vận hành doanh nghiệp địa phương hoặc website công ty rồi đánh dấu “our customers rate us 4.9 stars” (bản dịch) «khách hàng chấm chúng tôi 4,9 sao», Google sẽ không hiển thị các ngôi sao đó. Google gọi đây là đánh giá self-serving — doanh nghiệp tự đánh giá chính mình — và chặn riêng trên markup LocalBusiness cùng Organization.
Nhưng đây không phải quy tắc chung rằng “you can’t rate your own stuff” (bản dịch) «bạn không được đánh giá mọi thứ mình bán». Cửa hàng trực tuyến có thể hiển thị hợp lệ đánh giá sao trên trang sản phẩm của mình. Lệnh chặn nhắm tới doanh nghiệp tự đánh giá chính doanh nghiệp, không phải cửa hàng hiển thị đánh giá thật của khách hàng về sản phẩm đang bán.
Hai lỗi nhập môn khác:
- Luôn phải có số lượng, không chỉ điểm trung bình. Chỉ ghi “4.6 stars” (bản dịch) «4,6 sao» mà không có số lượt đánh giá làm cơ sở là chưa đủ.
- Đánh giá phải là thật. Làm giả hoặc mua đánh giá không chỉ vi phạm quy tắc; trang có thể chịu manual action và mất kết quả nhiều định dạng.
Muốn xem chính xác các thuộc tính bắt buộc, khác biệt giữa ratingCount và reviewCount, toàn bộ phạm vi đánh giá self-serving và cách sửa lỗi Search Console phổ biến? Hãy chuyển sang thẻ Nâng cao.
Tóm tắt —
AggregateRatingthường được lồng trong thuộc tínhaggregateRatingcủa loại cha nhưProduct,LocalBusiness,Recipe,Book,Course,Event,Movie,SoftwareApplicationvà các loại khác. Vì vậy ví dụ lồng ghép bỏitemReviewed; tuy nhiên đặc tả Google cũng hỗ trợAggregateRatingkhông lồng ghép nếu nó nêu trực tiếpitemReviewed. Dù dùng cách nào, mục được đánh giá vẫn cần tên. Thuộc tính Google bắt buộc để đủ điều kiện cho kết quả có sao làratingValue, ít nhất một trongratingCount/reviewCount, vàitemReviewedkhi không lồng;bestRating/worstRatingđược khuyến nghị, đặc biệt cần thiết với thang khác 1–5. Quy tắc đủ điều kiện phải hiểu chính xác: đánh giá self-serving không đủ điều kiện hiển thị sao riêng trênLocalBusiness/Organization— doanh nghiệp tự đánh giá chính mình — cònProduct,Recipe,Movievà phần lớn loại được hỗ trợ khác vẫn đủ điều kiện nếu đánh giá là thật.ratingCount— mọi lượt chấm điểm, kể cả chỉ chọn sao — vàreviewCount— số người để lại review, có hoặc không có điểm — là hai con số khác nhau. Markup hợp lệ chỉ tạo điều kiện hiển thị, không tạo thứ hạng; đánh giá giả có thể dẫn đến manual action về dữ liệu có cấu trúc. Chủ đề này xuất hiện cả trong dữ liệu có cấu trúc và SEO ecommerce vì markup đánh giá là hạng mục audit thường xuyên.
AggregateRating so với Review — khác biệt quyết định mọi thứ
Nhiều hướng dẫn của đối thủ gộp hai loại này thành một danh sách yêu cầu phẳng. Thực tế chúng khác nhau:
Reviewđánh dấu ý kiến của một người về một mục — một reviewer, mộtreviewRatingvà phần văn bản review.AggregateRatingđánh dấu trung bình thống kê của nhiều lượt đánh giá —ratingValuecộng với một trường đếm.
Nhiều triển khai thực tế dùng cả hai và lồng trong cùng một loại cha: aggregateRating cho điểm tổng thể và mảng đối tượng review cho từng ý kiến. Hướng dẫn Google đi theo một chiều: nếu đã đánh dấu nhiều review riêng lẻ, hãy thêm aggregate rating bên cạnh. Điều đó không có nghĩa một AggregateRating độc lập cần các đối tượng Review bịa thêm; trang chỉ có điểm tổng hợp mà không có review riêng lẻ vẫn là triển khai bình thường, đầy đủ. Chỉ cần nhớ: Review = một ý kiến; AggregateRating = trung bình của nhiều ý kiến. Với trường hợp một reviewer, xem bài schema Review liên quan.
Lồng ghép và không lồng ghép — hai cách gắn hợp lệ
AggregateRating không có ý nghĩa độc lập trên trang nếu thiếu đối tượng, nhưng cũng không phải “nest it or nothing” (bản dịch) «phải lồng ghép hoặc không dùng». Google hỗ trợ hai dạng:
- Lồng ghép — mẫu phổ biến —
AggregateRatingnằm trong thuộc tínhaggregateRatingcủa loại khác nhưProduct,LocalBusiness,Recipevà các loại được hỗ trợ bên dưới. Vì loại cha đã xác định đối tượng,AggregateRatinglồng ghép bỏitemReviewed, nhưng mục cha vẫn cầnname. - Không lồng ghép —
AggregateRatingcũng có thể đứng riêng nếu cung cấpitemReviewedđể nêu tên đối tượng được đánh giá. Cách này ít phổ biến hơn nhưng là đường dẫn hợp lệ có tài liệu, không phải giải pháp lách.
Cả hai dạng đều cần tên của mục được đánh giá ở đâu đó — trên loại cha khi lồng, hoặc trong itemReviewed khi không lồng. Google chỉ hỗ trợ một danh sách hữu hạn loại chủ cho kết quả review/sao: Book, Course, Event, LocalBusiness, Movie, Product, Recipe, Software App, cùng các loại lồng ghép bổ sung như CreativeWorkSeason, CreativeWorkSeries, Episode, Game, MediaObject, MusicPlaylist, MusicRecording và Organization.
Hệ quả thực tế: đặt aggregateRating trên loại không được hỗ trợ sẽ không hiển thị sao ngay cả khi markup vượt qua kiểm tra hợp lệ. Tính hợp lệ và điều kiện cho kết quả nhiều định dạng là hai ngưỡng khác nhau.
Thuộc tính bắt buộc và được khuyến nghị
Đặc tả Google cho kết quả có sao nghiêm ngặt hơn schema.org cơ bản. Hàng itemReviewed phụ thuộc vào dạng bạn dùng:
| Thuộc tính | Trạng thái | Ý nghĩa |
|---|---|---|
itemReviewed | Bắt buộc nếu không lồng; bỏ nếu lồng | Mục được đánh giá. Khi lồng trong loại cha, quan hệ lồng ghép và name của mục cha đã thể hiện điều này; chỉ đặt rõ khi AggregateRating đứng riêng |
ratingValue | Bắt buộc | Điểm trung bình, ví dụ 4.6 |
ratingCount hoặc reviewCount | Bắt buộc một trường | Cỡ mẫu đứng sau điểm trung bình |
bestRating | Khuyến nghị | Đỉnh thang điểm, mặc định 5 |
worstRating | Khuyến nghị | Đáy thang điểm, mặc định 1 |
Hai quy tắc định dạng từ ghi chú sử dụng của schema.org thường gây lỗi xác thực có thể tránh: dùng ký tự số thật (0–9) thay vì ký hiệu Unicode trông giống số, và dùng dấu chấm làm dấu thập phân, không dùng dấu phẩy. "4,6" là lỗi phổ biến ở locale dùng dấu phẩy thập phân.
ratingCount và reviewCount — khác biệt thực sự
Nhiều hướng dẫn dùng hai trường thay thế nhau hoặc thu hẹp reviewCount thành “written reviews” (bản dịch) «review có văn bản». Định nghĩa thuộc tính hiện tại của Google cụ thể hơn:
ratingCount— tổng số lượt chấm điểm, bao gồm lượt chỉ chọn sao mà không có văn bản review.reviewCount— số người đã cung cấp review, có hoặc không kèm điểm. Nó không chỉ là “written reviews only” (bản dịch) «chỉ review có văn bản»; trường này đếm người đã review dù họ có để lại điểm số hay không.
Trong thực tế, phần lớn nền tảng đánh giá vẫn tạo ra hai con số khác nhau vì không phải ai chấm sao cũng viết review và không phải ai viết review cũng gắn sao. Cửa hàng có thể hiển thị 4,6 sao từ ratingCount là 1 200, trong đó 340 người — reviewCount — thực sự viết nội dung. Hãy ánh xạ định nghĩa trên vào cách nền tảng của bạn phân tách “đã chấm điểm” và “đã review”, thay vì cho rằng hệ thống phải khớp chính xác ví dụ này. Google yêu cầu ít nhất một trong hai trường; hãy cung cấp trường khớp dữ liệu nền tảng thật sự theo dõi và đừng nâng số vượt quá bằng chứng trên trang.
bestRating / worstRating — khai báo khi khác thang mặc định
Google giả định thang 1–5 khi hai trường này vắng mặt. Nếu dùng thang 1–10, 100 điểm hoặc bất kỳ phạm vi không mặc định nào, bạn phải đặt bestRating/worstRating; nếu không, Google có thể hiểu sai. Điểm 9.2 trên thang 10 mà không có mô tả sẽ bị hiểu là 9,2 trên 5, rõ ràng vô lý.
Quy tắc đánh giá self-serving — phạm vi chính xác
Đây là điểm bị diễn giải sai nhiều nhất trong chủ đề, nên cần nêu thật chính xác.
Google viết: “If the entity that’s being reviewed controls the reviews about itself, their pages that use LocalBusiness or any other type of Organization structured data are ineligible for star review feature.” (bản dịch) «Nếu thực thể được đánh giá kiểm soát các đánh giá về chính mình, các trang dùng LocalBusiness hoặc bất kỳ loại dữ liệu có cấu trúc Organization nào khác sẽ không đủ điều kiện cho tính năng review có sao.» Hãy đọc kỹ phạm vi: câu này nêu LocalBusiness và Organization cùng các loại con. Nó nói về doanh nghiệp tự đánh giá chính doanh nghiệp. Evidence for this claim Google requires ratings represented in structured data to be visible to users and prohibits misleading or fabricated review markup. Scope: Google Search structured-data and review snippet policies; violations can remove feature eligibility. Confidence: high · Verified: Google: Review snippet structured data
Quy tắc không áp dụng cho Product. Một webshop có thể hiển thị hợp lệ đánh giá sao trên trang sản phẩm của chính mình — đó là trung bình đánh giá thật của khách hàng về sản phẩm được bán, không phải doanh nghiệp tự đánh giá chính mình. Recipe, Movie, Book, SoftwareApplication và các loại còn lại trong danh sách hỗ trợ cũng đủ điều kiện nếu đánh giá là thật.
Quy tắc bắt nguồn từ thay đổi chính sách Google tháng 9 năm 2019 — “Making Review Rich Results more helpful” (bản dịch) «Làm cho kết quả nhiều định dạng về review hữu ích hơn» — đưa ra khái niệm “self-serving”, bao gồm review doanh nghiệp của bạn được nhúng trực tiếp hoặc lấy qua widget bên thứ ba. Tôi đang diễn giải lý do trong thông báo thay vì trích nguyên văn; phát biểu hiện hành có thể trích dẫn nằm trong tài liệu Review snippet ở trên. Kết luận: widget review bên thứ ba trên trang LocalBusiness/Organization của bạn vẫn là self-serving và vẫn không đủ điều kiện nhận sao.
Organization chính là lý do bài schema Organization liên quan ở đây — đây là một trong hai loại chủ mà đánh giá tự lưu trữ không đem lại sao.
Chỉ dùng đánh giá thật — chính sách spam và manual action
Hai quy tắc rõ ràng trong hướng dẫn Google:
- Không tổng hợp từ website khác. Google viết: “Don’t aggregate reviews or ratings from other websites.” (bản dịch) «Không tổng hợp review hoặc lượt chấm điểm từ website khác.» Việc thu thập điểm từ nơi khác rồi đưa vào markup của bạn là không được phép.
- Đánh giá phải đến từ người dùng thật. Chính sách dữ liệu có cấu trúc của Google xem đánh giá thật là yêu cầu được thực thi, không phải nguyện vọng. Ví dụ riêng cho công thức nấu ăn ghi rằng “reviews or ratings not by actual users may result in manual action.” (bản dịch) «review hoặc lượt chấm điểm không đến từ người dùng thật có thể dẫn đến manual action». Nguyên tắc này áp dụng rộng cho chính sách review trên các loại.
Manual action về dữ liệu có cấu trúc do đánh giá gây hiểu lầm hoặc giả sẽ loại trang khỏi điều kiện hiển thị kết quả nhiều định dạng. Đây là biện pháp thực thi thật. Nội dung review cũng phải hiện diện thực sự trên trang; Google yêu cầu điểm được đánh dấu phải dễ dàng tiếp cận với người dùng trên cùng trang và nói về một mục cụ thể, không phải category hay danh sách.
AggregateRating trong bức tranh rộng hơn
Giống mọi dữ liệu có cấu trúc, AggregateRating ảnh hưởng đến điều kiện cho kết quả nhiều định dạng, không phải thứ hạng. Các hub Schema Markup và Structured Data giải thích đầy đủ nên tôi không lặp lại ở đây. aggregateRating là thuộc tính được khuyến nghị trên Product — loại chủ phổ biến nhất — và trên ProductGroup để tổng hợp điểm theo variant; cả hai là bài đọc tiếp theo tự nhiên. Hãy dùng JSON-LD, định dạng Google khuyến nghị và được dùng trong mọi ví dụ của bài này.
Bing và công cụ khác: schema.org là bộ từ vựng chung của Google, Microsoft, Yahoo và Yandex; tài liệu dữ liệu có cấu trúc tổng quát của Bing xác nhận Bing đọc markup schema.org/JSON-LD. Điều hiện chưa thể xác minh từ tài liệu Microsoft chính thức là tuyên bố rằng yêu cầu AggregateRating của Bing giống Google. Bing không công bố bảng bắt buộc/khuyến nghị theo loại tương đương, cũng không có tài liệu chính sách review self-serving như Google; bề mặt kết quả nhiều định dạng về điểm số hẹp và ít tài liệu hơn. Đừng mặc định quy tắc đủ điều kiện của Bing khớp Google từng điểm; hãy coi đây là câu hỏi mở cho đến khi Bing công bố hướng dẫn riêng về AggregateRating.
Tóm tắt AI
Bản cô đọng của phần Nâng cao:
- Nó là gì: markup
schema.org/AggregateRating, thường là JSON-LD, cho trung bình của nhiều lượt chấm điểm/review về một mục; khácReview, vốn là ý kiến của một reviewer. Nhiều trang dùng cả hai; Google yêu cầu aggregate khi bạn đã đánh dấu nhiều review riêng lẻ, không phải chiều ngược lại. - Lồng hoặc không lồng:
AggregateRatingthường nằm trong thuộc tínhaggregateRatingcủa loại cha nhưProduct,LocalBusiness,Recipe,Book,Course,Event,Movie,SoftwareApplicationvà các loại khác; vì vậy ví dụ lồng bỏitemReviewed. Google cũng hỗ trợAggregateRatingkhông lồng nếu nêu trực tiếpitemReviewed. Dù dùng cách nào, mục được đánh giá cần tên. - Bắt buộc để đủ điều kiện có sao:
ratingValue, ít nhất một trongratingCount/reviewCount, vàitemReviewedkhi không lồng. Khuyến nghị:bestRating/worstRating, đặc biệt cần khi khác thang 1–5 mặc định. ratingCountso vớireviewCount:ratingCountlà mọi lượt chấm điểm, kể cả chỉ chọn sao;reviewCountlà số người để lại review, có hoặc không có điểm. Hai con số khác nhau; cần một trong hai.- Quy tắc self-serving, được giới hạn chính xác: đánh giá self-serving chỉ không đủ điều kiện hiển thị sao trên
LocalBusiness/Organization— doanh nghiệp tự đánh giá chính mình — từ tháng 9/2019.Product,Recipe,Movievà loại khác vẫn đủ điều kiện nếu đánh giá là thật. Widget bên thứ ba chứa review về chính doanh nghiệp vẫn là self-serving. - Loại chủ được hỗ trợ là hữu hạn: Book, Course, Event, LocalBusiness, Movie, Product, Recipe, Software App và một số loại lồng bổ sung. Với loại không hỗ trợ, sao không xuất hiện dù markup hợp lệ.
- Chỉ dùng đánh giá thật: “Don’t aggregate reviews or ratings from other websites,” (bản dịch) «Không tổng hợp review hoặc lượt chấm điểm từ website khác», và đánh giá giả hay được khuyến khích có thể dẫn đến manual action về dữ liệu có cấu trúc, làm mất điều kiện hiển thị.
- Định dạng: chữ số thật (0–9), dấu chấm thập phân, không dùng dấu phẩy.
- Đủ điều kiện không đồng nghĩa xếp hạng: markup hợp lệ chỉ làm trang có khả năng nhận sao, không phải yếu tố xếp hạng. Bing dùng cùng bộ từ vựng nhưng không có tài liệu điều kiện tương đương.
Tài liệu chính thức
Tài liệu nguồn chính về AggregateRating.
schema.org — bộ từ vựng
- Loại AggregateRating — định nghĩa cơ bản, danh sách thuộc tính (
itemReviewed,ratingCount,reviewCount, cùngratingValue/bestRating/worstRatingkế thừa) và ghi chú về chữ số cùng dấu thập phân.
Google — điều kiện và yêu cầu
- Dữ liệu có cấu trúc Review snippet (Review, AggregateRating) — đặc tả có thẩm quyền: thuộc tính bắt buộc, danh sách loại chủ hỗ trợ, phạm vi review self-serving (LocalBusiness/Organization) và quy tắc “don’t aggregate from other websites” (bản dịch) «không tổng hợp từ website khác».
- Hướng dẫn chung về dữ liệu có cấu trúc — chính sách spam, câu chữ manual action và yêu cầu đánh giá thật.
- Making Review Rich Results more helpful (tháng 9/2019) — nguồn gốc chính sách review self-serving, được dẫn cho bối cảnh thay đổi khi nào và vì sao.
- Rich Results Test — xác thực markup và kiểm tra điều kiện có sao.
Bing / Microsoft
- Đánh dấu website bằng dữ liệu có cấu trúc — hỗ trợ dữ liệu có cấu trúc tổng quát của Bing như schema.org và JSON-LD.
Trích dẫn từ nguồn
Các phát biểu được ghi nhận từ schema.org và Google. Khi trang nguồn để lộ văn bản, liên kết sâu sẽ nhảy đến đoạn được trích.
schema.org — định nghĩa loại
- “The average rating based on multiple ratings or reviews.” (bản dịch) «Điểm trung bình dựa trên nhiều lượt chấm điểm hoặc review.» Đi đến trích dẫn
Tài liệu Google — đánh dấu điểm tổng hợp
- “Make sure to mark up an aggregate evaluation of an item by many people with schema.org/AggregateRating.” (bản dịch) «Hãy bảo đảm đánh dấu đánh giá tổng hợp của nhiều người về một mục bằng schema.org/AggregateRating.» Đi đến trích dẫn
Tài liệu Google — quy tắc review self-serving, giới hạn ở LocalBusiness/Organization
- “If the entity that’s being reviewed controls the reviews about itself, their pages that use LocalBusiness or any other type of Organization structured data are ineligible for star review feature.” (bản dịch) «Nếu thực thể được đánh giá kiểm soát các đánh giá về chính mình, các trang dùng LocalBusiness hoặc bất kỳ loại dữ liệu có cấu trúc Organization nào khác sẽ không đủ điều kiện cho tính năng review có sao.» Đi đến trích dẫn
Tài liệu Google — không tổng hợp từ website khác
- “Don’t aggregate reviews or ratings from other websites.” (bản dịch) «Không tổng hợp review hoặc lượt chấm điểm từ website khác.» Đi đến trích dẫn
Google — chính sách dữ liệu có cấu trúc về lừa dối và manual action
- “Don’t use structured data to deceive or mislead users. Don’t impersonate any person or organization.” (bản dịch) «Không dùng dữ liệu có cấu trúc để lừa dối hoặc gây hiểu lầm cho người dùng. Không mạo danh bất kỳ cá nhân hay tổ chức nào.» Đi đến trích dẫn
- Về đánh giá thật — ví dụ riêng cho công thức nhưng có thể khái quát cho chính sách review: “reviews or ratings not by actual users may result in manual action.” (bản dịch) «review hoặc lượt chấm điểm không đến từ người dùng thật có thể dẫn đến manual action». Hướng dẫn chung về dữ liệu có cấu trúc
AggregateRating so với Review — tôi cần loại nào?
Đi lần lượt qua các câu hỏi:
1. Bạn đang đánh dấu ý kiến của một người hay trung bình của nhiều người?
- Ý kiến của một reviewer — một điểm cộng văn bản review — → dùng schema Review, không phải AggregateRating.
- Trung bình của nhiều lượt đánh giá → dùng AggregateRating rồi tiếp tục.
- Cả hai — điểm tổng thể và từng ý kiến — → dùng cả hai, lồng cùng loại cha: một
aggregateRatingcộng với mảng đối tượngreview.
2. Bạn lồng nó hay để nó đứng riêng?
- Lồng trong
ProducthoặcProductGroup,Recipe,Movie,Book,Course,EventhaySoftwareApplication→ loại chủ được hỗ trợ; đánh giá thật thường đủ điều kiện có sao và có thể bỏitemReviewedvì mục cha đã có tên. Tiếp tục. - Đánh giá về chính
LocalBusinesshoặcOrganization→ dừng. Đánh giá self-serving ở đây không đủ điều kiện hiển thị sao, dù markup hợp lệ. - Không lồng → vẫn hợp lệ nếu
AggregateRatingcung cấpitemReviewednêu trực tiếp mục được đánh giá. - Loại cha khác không có trong danh sách hỗ trợ của Google → markup có thể hợp lệ nhưng không hiển thị sao.
3. Bạn có đủ thuộc tính bắt buộc không?
- Xác nhận
ratingValuevà ít nhất một trongratingCount/reviewCount. Nếu không lồng, đặt thêmitemReviewed; dù cách nào, mục được đánh giá vẫn cần tên. Thiếu trường đếm là lỗi số một. - Dùng thang khác 1–5? Thêm
bestRating/worstRatingđể Google không hiểu sai.
4. Đánh giá có thật và hiện trên trang không?
- Đến từ người dùng thật, nói về mục cụ thể này và hiển thị trên cùng trang → đạt.
- Tổng hợp từ website khác, bịa đặt hoặc được khuyến khích → không dùng; bạn có nguy cơ chịu manual action về dữ liệu có cấu trúc, không chỉ mất đoạn trích.
Quy tắc kinh nghiệm: Review là một ý kiến; AggregateRating là trung bình của nhiều ý kiến. Product và các loại tương tự có thể hiển thị sao từ đánh giá thật; doanh nghiệp không thể tự đánh giá chính mình.
Những hiểu lầm và lỗi AggregateRating cần tránh
Hiểu lầm: “Tôi có thể thêm AggregateRating vào schema Organization/LocalBusiness và nhận sao như sản phẩm.”
Không. Google loại rõ đánh giá self-serving trên LocalBusiness/Organization khỏi tính năng review có sao: “pages that use LocalBusiness or any other type of Organization structured data are ineligible for star review feature” (bản dịch) «các trang dùng LocalBusiness hoặc bất kỳ loại dữ liệu có cấu trúc Organization nào khác không đủ điều kiện cho tính năng review có sao» khi thực thể kiểm soát review về chính mình. Quy tắc có từ thay đổi chính sách tháng 9/2019. Doanh nghiệp tự đánh giá chính mình không nhận sao; cửa hàng đánh giá sản phẩm vẫn có thể.
Hiểu lầm: “AggregateRating và Review là cùng một thứ.”
Review đánh dấu ý kiến của một reviewer; AggregateRating đánh dấu trung bình của nhiều người. Đây là hai loại khác nhau với thuộc tính bắt buộc khác nhau. Nhiều trang lồng cả hai cùng nhau, nhưng chúng không thể thay thế nhau; dùng aggregate không buộc bạn bịa các đối tượng Review riêng lẻ đi kèm.
Hiểu lầm: “Tôi chỉ cần ratingValue; số lượng không quan trọng.”
Google yêu cầu ít nhất một trong ratingCount hoặc reviewCount bên cạnh ratingValue. Điểm trung bình không có cỡ mẫu làm cơ sở sẽ không đủ điều kiện.
Hiểu lầm: “ratingCount và reviewCount là cùng một con số.”
Chúng khác nhau. ratingCount gồm lượt chỉ chọn sao không có văn bản; reviewCount là số người để lại review, có hoặc không kèm điểm — không chỉ giới hạn ở “written reviews” (bản dịch) «review có văn bản». Một trang có thể có 1 200 lượt chấm điểm nhưng chỉ 340 người để lại review. Hãy cung cấp trường nền tảng thật sự theo dõi và không thổi phồng trường nào.
Hiểu lầm: “Widget review bên thứ ba trên trang doanh nghiệp tự động đủ điều kiện nhận sao.”
Nếu widget hiển thị review về chính doanh nghiệp/tổ chức của bạn, dù lấy từ nền tảng bên thứ ba, nó vẫn là self-serving và không đủ điều kiện hiển thị sao cho LocalBusiness/Organization.
Hiểu lầm: “Đánh giá 5 sao giả hoặc được khuyến khích chỉ có nguy cơ làm đoạn trích không xuất hiện.” Google xem yêu cầu chỉ dùng đánh giá thật là chính sách được thực thi. Đánh giá bịa đặt có thể dẫn đến manual action về dữ liệu có cấu trúc, làm trang mất điều kiện cho kết quả nhiều định dạng, chứ không chỉ ẩn đoạn trích.
Hiểu lầm: “Schema AggregateRating cải thiện thứ hạng.” Giống mọi markup schema, nó ảnh hưởng đến điều kiện cho kết quả nhiều định dạng, không phải thứ hạng. Nó tạo khả năng có sao chứ không tạo vị trí. Hub Structured Data trình bày đầy đủ vấn đề này.
Lỗi: tổng hợp điểm từ website khác. Hướng dẫn Google nói thẳng “Don’t aggregate reviews or ratings from other websites.” (bản dịch) «Không tổng hợp review hoặc lượt chấm điểm từ website khác.» Chỉ dùng đánh giá mà trang của bạn thực sự thu thập.
Lỗi: ratingValue sai định dạng. Dùng chữ số thật và dấu chấm thập phân — 4.6, không phải 4,6 hoặc ký tự Unicode trông giống số. Dấu phẩy thập phân là lỗi xác thực phổ biến và có thể tránh.
Lỗi: aggregateRating trên loại chủ không được hỗ trợ. AggregateRating đứng riêng với itemReviewed là hợp lệ, và lồng trong loại được hỗ trợ là mẫu phổ biến. Nhưng theo cách nào, loại mục vẫn phải nằm trong danh sách Google hỗ trợ. Đặt trên loại không hỗ trợ có thể vượt kiểm tra hợp lệ nhưng không hiển thị sao.
JSON-LD AggregateRating đúng và sai
Điểm tổng hợp được lồng đúng
AggregateRating được lồng đúng trong Product, có điểm trung bình hợp lệ, trường đếm và thang điểm rõ ràng — cùng một review riêng lẻ bên cạnh, là mẫu thực tế phổ biến:
{
"@context": "https://schema.org/",
"@type": "Product",
"name": "Trailhead 30L Hiking Backpack",
"image": "https://example.com/img/backpack.jpg",
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.6",
"bestRating": "5",
"worstRating": "1",
"ratingCount": "1200",
"reviewCount": "340"
},
"review": [
{
"@type": "Review",
"author": { "@type": "Person", "name": "James Smith" },
"reviewRating": {
"@type": "Rating",
"ratingValue": "5",
"bestRating": "5"
},
"reviewBody": "Comfortable on long days, great ventilation."
}
]
}Lưu ý ratingCount — tổng 1 200 lượt chấm điểm — và reviewCount — 340 người để lại review — là hai con số khác nhau, như thường thấy trong thực tế.
Dạng không lồng ghép
Lồng ghép là mẫu phổ biến, nhưng AggregateRating không bắt buộc nằm trong Product hoặc loại chủ khác. Nó có thể đứng riêng nếu cung cấp itemReviewed nêu tên mục được đánh giá; đây là dạng hợp lệ có tài liệu, không phải giải pháp lách:
{
"@context": "https://schema.org/",
"@type": "AggregateRating",
"itemReviewed": {
"@type": "Product",
"name": "Trailhead 30L Hiking Backpack"
},
"ratingValue": "4.6",
"bestRating": "5",
"worstRating": "1",
"ratingCount": "1200",
"reviewCount": "340"
}Cùng thuộc tính, cùng quy tắc đủ điều kiện; khác biệt duy nhất là itemReviewed nằm ở đâu. Khi lồng, loại cha ngầm thể hiện nên thường bỏ trường này; khi không lồng, phải khai báo rõ.
Cùng aggregate đó nhưng bị lỗi
Mỗi dòng được đánh dấu dưới đây là lỗi xác thực thật và phổ biến:
{
"@context": "https://schema.org/",
"@type": "Product",
"name": "Trailhead 30L Hiking Backpack",
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4,6"
}
}Các lỗi gồm:
- Không có
ratingCounthoặcreviewCount— tạo lỗi kinh điển “Either ‘ratingCount’ or ‘reviewCount’ should be specified” (bản dịch) «Phải chỉ định ratingCount hoặc reviewCount». Aggregate cần cỡ mẫu. ratingValue: "4,6"— dùng dấu phẩy thập phân. Hãy dùng dấu chấm:"4.6".- Không có
bestRating/worstRating— có thể chấp nhận với thang 1–5, nhưng nếu bỏ trên thang không mặc định, Google sẽ hiểu sai.
Một lỗi khác vượt kiểm tra hợp lệ nhưng vẫn không có sao là đặt chính aggregateRating này trên LocalBusiness hoặc Organization tự đánh giá chính mình. Đây là self-serving và không đủ điều kiện hiển thị sao dù markup sạch.
Lỗi Search Console / Rich Results Test phổ biến → cách sửa
| Chuỗi lỗi | Nguyên nhân có thể | Cách sửa |
|---|---|---|
Either 'ratingCount' or 'reviewCount' should be specified | Chưa cung cấp trường đếm | Thêm ratingCount hoặc reviewCount |
Missing field 'ratingValue' | Thiếu điểm trung bình | Thêm ratingValue với chữ số thật và dấu chấm thập phân |
Missing field 'itemReviewed' | Không có mục được đánh giá rõ ràng | Lồng trong loại chủ được hỗ trợ hoặc đặt itemReviewed |
The best rating value must be greater than the worst rating value | bestRating <= worstRating | Đặt thang hợp lệ, ví dụ worstRating: 1, bestRating: 5 |
| Markup hợp lệ nhưng không có sao | Self-serving trên LocalBusiness/Organization hoặc loại chủ không hỗ trợ | Chuyển sang loại mục được hỗ trợ; doanh nghiệp không thể tự đánh giá mình |
Công cụ xây dựng và kiểm tra markup AggregateRating
Trình xác thực Schema Markup của tôi là nơi nên bắt đầu sau khi viết JSON-LD. Dán khối code hoặc toàn trang; công cụ chạy kiểm tra theo mức độ nghiêm trọng dựa trên bộ từ vựng AggregateRating của schema.org và yêu cầu kết quả nhiều định dạng Google. Nó bắt lỗi thiếu trường đếm, dấu phẩy thập phân và thang bestRating/worstRating, rồi trả lại khối JSON-LD đã sửa để sao chép.
Trình kiểm tra điều kiện Rich Result trả lời câu hỏi khác: không phải “JSON-LD có hợp lệ không” mà là “trang cụ thể này có đủ điều kiện cho kết quả sao của Google không”. Dán JSON-LD, trang HTML hoặc lấy URL trực tiếp; công cụ cho biết theo từng loại các trường bắt buộc itemReviewed, ratingValue, ratingCount/reviewCount đang có hay thiếu, cùng trường khuyến nghị bestRating, worstRating còn bỏ trên thang mặc định.
Nếu bắt đầu từ trang trắng thay vì sửa markup hiện có, Trình tạo Schema Markup có biểu mẫu tập trung để xây aggregateRating lồng trong Product hoặc loại chủ được hỗ trợ khác mà không cần viết JSON-LD thủ công. Khi điền, công cụ chỉ rõ thuộc tính nào Google bắt buộc, Google khuyến nghị hay chỉ thuộc schema.org.
Sau khi markup vượt hai kiểm tra đó, chạy trang qua Rich Results Test của Google. Đây là công cụ Google dùng để quyết định điều kiện, nên là kết luận cuối trước khi phát hành.
Vấn đề AggregateRating phổ biến và cách sửa
Markup hợp lệ nhưng không bao giờ có sao trong kết quả tìm kiếm
Nguyên nhân có khả năng nhất là quy tắc review self-serving: aggregateRating được lồng trong LocalBusiness hoặc Organization và doanh nghiệp tự đánh giá chính mình. Google loại hoàn toàn tổ hợp đó khỏi tính năng sao dù JSON-LD sạch. Hãy kiểm tra loại cha trước; nếu là LocalBusiness hoặc Organization, chuyển sang review thật ở cấp sản phẩm vì doanh nghiệp không thể tự nhận sao nhưng cửa hàng có thể đánh giá sản phẩm. Nguyên nhân có khả năng thứ hai là loại chủ không được hỗ trợ. aggregateRating lồng trong loại ngoài danh sách Google — Book, Course, Event, LocalBusiness, Movie, Product, Recipe, SoftwareApplication và danh sách nhỏ bổ sung — có thể hợp lệ nhưng không hiển thị sao.
Rich Results Test hoặc Search Console báo “Either ‘ratingCount’ or ‘reviewCount’ should be specified”
Đối tượng aggregateRating thiếu thuộc tính cỡ mẫu. Chỉ ratingValue là chưa đủ; Google yêu cầu ít nhất một trong ratingCount hoặc reviewCount. Hãy thêm trường khớp dữ liệu nền tảng thật sự theo dõi — tổng lượt chấm điểm kể cả chỉ chọn sao, hoặc số người để lại review — rồi kiểm tra lại.
ratingValue không vượt xác thực dù con số trông đúng
Kiểm tra dấu phẩy thập phân — "4,6" thay vì "4.6" — hoặc ký tự Unicode trông giống số thay cho chữ số thật 0–9. Cả hai đều phổ biến ở locale dùng dấu phẩy thập phân và khó nhận thấy cho đến khi validator báo lỗi.
Lỗi validator: “The best rating value must be greater than the worst rating value” (bản dịch) «Giá trị điểm tốt nhất phải lớn hơn giá trị điểm thấp nhất»
bestRating và worstRating bị đặt ngược, hoặc thiếu worstRating khiến mặc định 1–5 của Google không khớp thang thật. Điểm 1–10 hoặc trên 100 mà không mô tả sẽ bị hiểu theo mặc định 1–5. Hãy đặt rõ cả hai, ví dụ worstRating: 1, bestRating: 5, khi thang không phải mặc định.
Search Console báo mục hợp lệ nhưng SERP trực tiếp vẫn không có sao
Vượt kiểm tra hợp lệ và trạng thái “valid” trong Search Console chỉ có nghĩa trang đủ điều kiện cho kết quả có sao; Google không bảo đảm sẽ hiển thị. Đây là hành vi dự kiến, không phải lỗi cần đuổi theo: điều kiện kết quả nhiều định dạng không phải lời hứa hiển thị hoặc xếp hạng. Nếu markup thật sự hợp lệ và đủ điều kiện, không còn gì để sửa ở phía markup.
Kết quả nhiều định dạng biến mất sau khi từng hiển thị
Manual action về dữ liệu có cấu trúc do đánh giá giả hoặc tổng hợp từ nơi khác sẽ loại trang khỏi điều kiện kết quả nhiều định dạng. Hãy kiểm tra báo cáo Manual Actions trong Search Console trước. Nếu không có manual action, xác thực lại markup hiện hành; thay đổi template hoặc CMS có thể âm thầm làm mất một thuộc tính như trường đếm hay viết lại thang điểm từng đúng.
Chứng minh thay đổi AggregateRating đã hoạt động
Kiểm thử 1: cú pháp JSON-LD và thuộc tính bắt buộc
Cách kiểm thử: Dán JSON-LD đã cập nhật vào Trình xác thực Schema Markup của tôi hoặc chạy URL trực tiếp qua Rich Results Test của Google.
Kết quả mong đợi: Không có lỗi trên khối AggregateRating; có ratingValue bằng chữ số thật và dấu chấm thập phân, cùng ít nhất một trong ratingCount hoặc reviewCount.
Diễn giải thất bại: Thuộc tính thiếu bị báo nghĩa là nó thực sự không có trong markup đã phát hành, không phải lỗi cache hay render; hãy kiểm tra lại nguồn JSON-LD.
Thời gian theo dõi: Ngay lập tức; cả hai công cụ đọc trực tiếp markup, không chờ crawl.
Điều kiện rollback: Xác thực vẫn thất bại sau sửa trực tiếp; hoàn nguyên thay đổi template và so sánh với JSON-LD tốt gần nhất.
Kiểm thử 2: điều kiện kết quả nhiều định dạng của loại chủ cụ thể
Cách kiểm thử: Chạy Trình kiểm tra điều kiện Rich Result của tôi với URL trực tiếp.
Kết quả mong đợi: Loại cha của trang, chẳng hạn Product, được báo đủ điều kiện cho kết quả review/sao và itemReviewed được phân giải đúng.
Diễn giải thất bại: Nếu loại cha là LocalBusiness hoặc Organization, “not eligible” (bản dịch) «không đủ điều kiện» là hành vi dự kiến do quy tắc self-serving, không phải bug. Xác nhận loại chủ trước khi coi là lỗi.
Thời gian theo dõi: Ngay lập tức.
Điều kiện rollback: Trang thuộc loại đủ điều kiện như Product hoặc Recipe vẫn báo thiếu trường bắt buộc sau khi sửa; bản deploy chưa cập nhật markup Google nhìn thấy, nên kiểm tra cache hoặc bước build ghi đè.
Kiểm thử 3: báo cáo Enhancement của Search Console phản ánh bản sửa
Cách kiểm thử: Search Console → báo cáo Enhancement liên quan — Product snippets hoặc Merchant listings tùy loại chủ — cho các URL bị ảnh hưởng. Kết quả mong đợi: Trang chuyển từ “Invalid” hoặc “Not eligible” sang nhóm “Valid”, và số lỗi của URL giảm về 0. Diễn giải thất bại: Nếu vẫn bị báo sau khi Google crawl lại, bản sửa chưa lên trang trực tiếp hoặc còn thiếu thuộc tính khác; chạy lại Kiểm thử 1 trên URL trực tiếp, không phải staging. Thời gian theo dõi: Vài ngày đến khoảng một tuần để Google crawl lại và làm mới báo cáo; dữ liệu Search Console có độ trễ. Điều kiện rollback: Số mục Invalid tăng sau khi triển khai template thay vì giảm; thay đổi đã làm hỏng markup trên trang khác dùng cùng template, nên tạm dừng rollout.
Kiểm thử 4: đoạn trích có sao thực sự xuất hiện trên SERP
Cách kiểm thử: Tìm thủ công truy vấn mà trang đang xếp hạng và kiểm tra sao có hiển thị dưới kết quả không; cửa sổ riêng tư giúp giảm lệch do cá nhân hóa. Kết quả mong đợi: Sao và số lượt đánh giá xuất hiện dưới kết quả. Diễn giải thất bại: Không thấy sao dù Search Console báo “Valid” không phải lỗi cần sửa; Google toàn quyền quyết định hiển thị. Nếu vừa không có sao vừa “Not eligible” hoặc có manual action, quay lại Kiểm thử 1 hoặc 3. Thời gian theo dõi: Google không đưa mốc cố định; kiểm tra định kỳ trong những tuần sau thay vì mong xuất hiện ngay khi vượt xác thực. Điều kiện rollback: Không có ở phía markup cho quyết định hiển thị của Google. Chỉ hoàn nguyên nếu Manual Actions báo trang.
KPI theo dõi AggregateRating liên tục
Chỉ số: Số mục hợp lệ trong báo cáo Enhancement của Search Console
Chỉ số cho biết: bao nhiêu trang đủ điều kiện hiện có markup AggregateRating không lỗi — phía độ bao phủ của KPI.
Cách lấy: Search Console → Enhancements → báo cáo liên quan như Product snippets hoặc Merchant listings.
Mốc tham chiếu / phạm vi thực tế: không có mục tiêu chung. Hãy lập baseline từ số trang nên có markup — tổng trang thuộc loại đủ điều kiện — và theo dõi số mục hợp lệ tiến về con số đó.
Tần suất: hằng tháng hoặc ngay sau thay đổi template/CMS chạm tới markup review.
Chỉ số: Số mục không hợp lệ/lỗi trong cùng báo cáo Chỉ số cho biết: bao nhiêu trang hỏng thuộc tính bắt buộc — phía chất lượng, tách khỏi độ bao phủ. Cách lấy: cùng báo cáo Enhancement, nhóm error/invalid. Mốc tham chiếu / phạm vi thực tế: mục tiêu trung thực duy nhất là 0; mọi số khác 0 đều là trang hỏng thật, không phải nhiễu thống kê. Tần suất: hằng tháng và luôn kiểm tra sau deploy chạm tới template markup.
Chỉ số: Thay đổi CTR trên trang mới đủ điều kiện có sao Chỉ số cho biết: đoạn trích có sao có thực sự tạo thêm lượt nhấp trên các trang nay hiển thị nó hay không, tách khỏi chỉ riêng điều kiện. Cách lấy: báo cáo Performance của Search Console, lọc các trang bị ảnh hưởng và so CTR giữa các tuần trước/sau khi markup phát hành. Search Console không tách sạch lượt nhấp riêng từ đoạn trích có sao, nên đây là proxy trước/sau, không phải attribution chính xác. Mốc tham chiếu / phạm vi thực tế: không có mức tăng cố định đáng tin để trích. Hãy lập baseline CTR trước rollout trên cùng trang và theo dõi chênh lệch vì kết quả phụ thuộc nhiều vào truy vấn, vị trí và kết quả nhiều định dạng của đối thủ. Tần suất: hằng tháng trong quý đầu sau rollout, sau đó hằng quý.
Chỉ số: Tăng trưởng ratingCount/reviewCount theo thời gian
Chỉ số cho biết: cỡ mẫu đứng sau điểm trung bình có thực sự tăng không. Số phẳng hoặc giảm trên trang tuyên bố có nền tảng review hoạt động đáng được điều tra trước khi đánh dấu.
Cách lấy: nền tảng review, CMS hoặc cơ sở dữ liệu của bạn — hệ thống nguồn sự thật cấp dữ liệu cho markup.
Mốc tham chiếu / phạm vi thực tế: theo dõi tăng trưởng tuyệt đối so với lịch sử của chính bạn; không có benchmark bên ngoài cho số lượt đánh giá một trang “nên có”.
Tần suất: hằng tháng.
Tự kiểm tra: Schema AggregateRating
Năm câu hỏi nhanh về schema.org/AggregateRating, các thuộc tính bắt buộc và quy tắc review self-serving. Chọn từng đáp án rồi kiểm tra.
Nhật ký thay đổi
Đã cập nhật 22 thg 8, 2026.
Tóm tắt biên tập và chi tiết thay đổi đã ghi nhận.Chi tiết thay đổi
-
Ghi chú thay đổi chi tiết hiện chỉ có bằng tiếng Anh.
Không thể so sánh đầy đủ — không có bản lưu trước đó cho lần sửa đổi này.
Đã cập nhật 9 thg 8, 2026.
Tóm tắt biên tập và chi tiết thay đổi đã ghi nhận.Chi tiết thay đổi
-
Ghi chú thay đổi chi tiết hiện chỉ có bằng tiếng Anh.
Không thể so sánh đầy đủ — không có bản lưu trước đó cho lần sửa đổi này.
Đã cập nhật 8 thg 8, 2026.
Tóm tắt biên tập và chi tiết thay đổi đã ghi nhận.Chi tiết thay đổi
-
Ghi chú thay đổi chi tiết hiện chỉ có bằng tiếng Anh.
Không thể so sánh đầy đủ — không có bản lưu trước đó cho lần sửa đổi này.
Đã cập nhật 17 thg 7, 2026.
Tóm tắt biên tập và chi tiết thay đổi đã ghi nhận.Chi tiết thay đổi
-
Ghi chú thay đổi chi tiết hiện chỉ có bằng tiếng Anh.
Không thể so sánh đầy đủ — không có bản lưu trước đó cho lần sửa đổi này.