AggregateOffer là gì? Cách hiển thị khoảng giá sản phẩm trên Google

Việc hiển thị thông tin giá cả nổi bật trên kết quả tìm kiếm Google là một trong những cách hiệu quả nhất để tăng tỷ lệ nhấp chuột (CTR) cho website thương mại điện tử. Tuy nhiên, đối với các trang web so sánh giá hoặc nền tảng có nhiều nhà bán hàng cùng cung cấp một sản phẩm, việc chỉ hiển thị một mức giá cố định là không đủ. Đây chính là lúc Schema AggregateOffer phát huy tác dụng, giúp Google hiểu và hiển thị một khoảng giá (từ mức thấp nhất đến cao nhất) một cách trực quan và chuyên nghiệp.

Khái niệm AggregateOffer là gì trong cấu trúc Schema

AggregateOffer là một loại dữ liệu có cấu trúc (Schema Markup) thuộc Schema.org, được sử dụng để nhóm và hiển thị tổng hợp nhiều ưu đãi (offers) khác nhau cho cùng một sản phẩm. Điển hình nhất là khi một sản phẩm duy nhất được bán bởi nhiều nhà cung cấp với các mức giá khác nhau, hoặc khi một dịch vụ có nhiều gói cước đa dạng.

AggregateOffer giúp chuyển đổi nhiều mức giá riêng lẻ thành khoảng giá hiển thị đồng nhất trên Rich Snippet.
AggregateOffer tổng hợp các mức giá khác nhau của sản phẩm thành một khoảng giá hiển thị rõ ràng trên kết quả tìm kiếm Google.

Vai trò chính của AggregateOffer là giúp các công cụ tìm kiếm như Google hiểu được cấu trúc giá phức tạp của sản phẩm. Thay vì bối rối trước hàng loạt mức giá khác nhau trên cùng một trang, Google có thể đọc được dữ liệu tổng hợp này để trích xuất ra khoảng giá chính xác (ví dụ: 1.200.000đ – 1.500.000đ) và hiển thị nó dưới dạng Rich Snippet (Kết quả phong phú) trên trang kết quả tìm kiếm.

Việc khai báo chuẩn xác các thuật ngữ kỹ thuật trong Schema là rất quan trọng để hệ thống AI dễ hiểu nội dung hơn. Nếu bạn muốn tìm hiểu sâu hơn về cách định dạng các khái niệm phức tạp, bạn có thể tham khảo Hướng dẫn sử dụng DefinedTerm để định nghĩa thuật ngữ để tối ưu hóa dữ liệu có cấu trúc cho website của mình.

Sự khác biệt giữa Offer và AggregateOffer

Điểm khác biệt cốt lõi là Offer dùng cho một ưu đãi đơn lẻ với mức giá cố định, trong khi AggregateOffer dùng để đại diện cho một nhóm nhiều ưu đãi tạo thành một khoảng giá. Việc nhầm lẫn giữa hai loại Schema này là nguyên nhân phổ biến dẫn đến lỗi trong Google Search Console.

Dưới đây là bảng so sánh chi tiết giúp bạn phân biệt và áp dụng đúng ngữ cảnh:

Tiêu chí so sánh

Schema Offer

Schema AggregateOffer

Bản chất

Đại diện cho một ưu đãi bán hàng duy nhất.

Đại diện cho một tập hợp gồm nhiều ưu đãi bán hàng.

Mức giá hiển thị

Một mức giá cố định (ví dụ: 500.000đ).

Một khoảng giá từ thấp đến cao (ví dụ: 400.000đ – 600.000đ).

Trường hợp sử dụng

Một cửa hàng bán một sản phẩm với một mức giá cụ thể.

Trang so sánh giá, sàn thương mại điện tử có nhiều nhà bán hàng cho cùng một sản phẩm.

Thuộc tính đặc trưng

price, priceCurrency

lowPrice, highPrice, offerCount

Một lưu ý cực kỳ quan trọng từ Google: Không được sử dụng AggregateOffer để khai báo các biến thể sản phẩm (như màu sắc, kích thước) của cùng một cửa hàng. Trong trường hợp sản phẩm có nhiều biến thể, bạn cần sử dụng một mảng chứa nhiều Offer đơn lẻ thay vì dùng AggregateOffer.

Các thuộc tính quan trọng trong Schema AggregateOffer

Khai báo AggregateOffer bắt buộc phải có các thuộc tính cốt lõi để Google không báo lỗi, đồng thời nên bổ sung các thuộc tính khuyến khích để tăng độ tin cậy cho dữ liệu.

Sơ đồ phân biệt thuộc tính bắt buộc và khuyến khích trong cấu trúc AggregateOffer giúp tối ưu hiển thị Google Rich Snippet.
Việc phân chia rõ ràng giữa thuộc tính bắt buộc và khuyến khích giúp quản trị viên tối ưu hóa Schema AggregateOffer hiệu quả hơn.

Thuộc tính bắt buộc tối thiểu

Để Schema AggregateOffer hợp lệ và có thể hiển thị trên Google, bạn bắt buộc phải cung cấp ít nhất hai thuộc tính sau:

  • lowPrice: Mức giá thấp nhất trong tất cả các ưu đãi hiện có. Giá trị này phải được định dạng bằng số, sử dụng dấu chấm (.) cho phần thập phân nếu có, tuyệt đối không dùng dấu phẩy (,) hoặc chứa ký tự tiền tệ.
  • priceCurrency: Mã tiền tệ chuẩn ISO 4217 (ví dụ: VND, USD). Nếu bạn chưa rõ cách cấu hình đồng tiền chuẩn xác, hãy xem thêm Cách thiết lập thuộc tính priceCurrency trong Schema để tránh các lỗi cảnh báo không đáng có.

Nếu thiếu một trong hai thuộc tính này, Google Search Console sẽ ngay lập tức báo lỗi đỏ (Error) và sản phẩm của bạn sẽ mất cơ hội hiển thị Rich Snippet.

Thuộc tính khuyến khích bổ sung

Mặc dù không bắt buộc, việc bổ sung các thuộc tính dưới đây sẽ giúp dữ liệu của bạn phong phú hơn và thân thiện hơn với AI Search:

  • highPrice: Mức giá cao nhất trong nhóm ưu đãi. Kết hợp với lowPrice, thuộc tính này tạo ra khoảng giá hoàn chỉnh.
  • offerCount: Tổng số lượng ưu đãi (hoặc số lượng nhà bán hàng) đang cung cấp sản phẩm này.
  • offers: Một mảng (array) chứa chi tiết từng Offer đơn lẻ bên trong. Điều này giúp Google đối chiếu dữ liệu minh bạch hơn.
  • Seller: Thông tin về tổ chức hoặc cá nhân bán hàng. Việc Khai báo thông tin Seller trong dữ liệu có cấu trúc rõ ràng sẽ giúp tối ưu hóa tốt hơn cho các tính năng Merchant Listings của Google.

Mẫu code JSON-LD AggregateOffer chuẩn hóa

Dưới đây là đoạn mã JSON-LD chuẩn cấu trúc Product kết hợp AggregateOffer được Google khuyên dùng. Định dạng JSON-LD luôn được ưu tiên vì tính gọn gàng, dễ đọc và không can thiệp vào cấu trúc HTML hiển thị của website.

Cách cấu trúc JSON-LD Product kết hợp AggregateOffer để khai báo thông tin sản phẩm và khoảng giá ưu đãi từ thấp đến cao.
Sơ đồ trực quan hóa cách lồng ghép AggregateOffer vào Schema Product để hiển thị khoảng giá từ thấp nhất đến cao nhất trên kết quả tìm kiếm.

{ “@context”: “https://schema.org/”, “@type”: “Product”, “name”: “Giày Thể Thao Chạy Bộ Nam”, “image”: [ “https://example.com/photos/1×1/photo.jpg” ], “description”: “Giày thể thao chạy bộ nam siêu nhẹ, thoáng khí, phù hợp cho vận động viên.”, “sku”: “GTT-001”, “brand”: { “@type”: “Brand”, “name”: “SportBrand” }, “offers”: { “@type”: “AggregateOffer”, “url”: “https://example.com/giay-the-thao-nam”, “priceCurrency”: “VND”, “lowPrice”: “1200000”, “highPrice”: “1500000”, “offerCount”: “5” }
}

Trong đoạn mã trên, thuộc tính offers của sản phẩm không chứa một mức giá đơn lẻ mà gọi đến thực thể AggregateOffer. Nó khai báo rõ ràng rằng có 5 ưu đãi (offerCount: 5) với mức giá dao động từ 1.200.000 VNĐ đến 1.500.000 VNĐ.

Cách kiểm tra và sửa lỗi AggregateOffer trên website

Sau khi chèn mã Schema, việc kiểm tra bằng các công cụ chính thức của Google là bắt buộc để đảm bảo không có lỗi cú pháp và dữ liệu hoàn toàn hợp lệ.

Sử dụng công cụ Rich Results Test

Rich Results Test (Kiểm tra kết quả phong phú) là công cụ trực quan nhất của Google để kiểm tra xem mã Schema của bạn có đủ điều kiện hiển thị trên SERP hay không.

Bạn chỉ cần dán URL bài viết hoặc dán trực tiếp đoạn code JSON-LD vào công cụ. Nếu kết quả trả về dấu tích xanh với nhãn “Sản phẩm” (Product) hoặc “Đoạn trích đánh giá” (Review snippet), điều đó có nghĩa là AggregateOffer của bạn đã được cấu hình đúng. Nếu xuất hiện cảnh báo màu vàng hoặc lỗi màu đỏ, bạn cần nhấp vào chi tiết để xem thuộc tính nào đang bị thiếu hoặc sai định dạng.

Khắc phục lỗi thiếu thuộc tính offers trong WooCommerce

Một trong những lỗi phổ biến nhất mà các chủ website WordPress/WooCommerce gặp phải trong Google Search Console là cảnh báo: “Either offers, review, or aggregateRating should be specified”.

Lỗi này thường xảy ra khi một sản phẩm được tạo ra nhưng chưa được thiết lập giá bán, hoặc website đang sử dụng plugin SEO cấu hình sai loại Schema. Để khắc phục, bạn cần đảm bảo mọi sản phẩm đều có giá (dù là giá 0 đồng nếu miễn phí) hoặc sử dụng các plugin SEO chuyên dụng để thiết lập lại cấu trúc Product Schema, đảm bảo mảng offers luôn được xuất ra mã nguồn.

Những lưu ý quan trọng khi triển khai AggregateOffer

Việc lạm dụng hoặc khai báo sai lệch dữ liệu có cấu trúc có thể dẫn đến các hình phạt tác vụ thủ công từ Google, khiến website mất hoàn toàn khả năng hiển thị Rich Snippet.

So sánh cách triển khai AggregateOffer đúng chuẩn và sai lệch dễ bị Google phạt tác vụ thủ công.
Bảng đối chiếu các nguyên tắc triển khai AggregateOffer hợp lệ và những lỗi sai phổ biến dẫn đến mất Rich Snippet.
  • Tính trung thực của dữ liệu: Giá trị lowPrice và highPrice khai báo trong mã JSON-LD phải trùng khớp hoàn toàn với khoảng giá hiển thị thực tế trên giao diện người dùng. Tuyệt đối không khai báo giá thấp hơn thực tế để đánh lừa người dùng nhấp chuột.
  • Cập nhật dữ liệu thường xuyên: Khi có sự thay đổi về giá cả hoặc số lượng nhà cung cấp, Schema phải được cập nhật đồng bộ. Tốt nhất nên sử dụng các hàm lập trình tự động lấy giá trị Min/Max từ cơ sở dữ liệu thay vì nhập thủ công.
  • Đúng mục đích sử dụng: Nhắc lại nguyên tắc của Google, chỉ dùng AggregateOffer khi có nhiều nhà bán hàng hoặc nhiều gói dịch vụ khác nhau. Không dùng để lách luật hiển thị khoảng giá cho các biến thể màu sắc/kích thước của một cửa hàng duy nhất.

Câu hỏi thường gặp

Có nên dùng AggregateOffer cho sản phẩm có nhiều biến thể màu sắc không?

Theo nguyên tắc chính thức của Google, bạn không nên dùng AggregateOffer cho các biến thể sản phẩm (như màu sắc, kích thước) của cùng một cửa hàng. Thay vào đó, hãy sử dụng một mảng chứa nhiều thực thể Offer đơn lẻ cho từng biến thể. Việc cố tình dùng AggregateOffer trong trường hợp này có thể khiến Google đánh dấu là spam dữ liệu có cấu trúc.

Khai báo AggregateOffer có trực tiếp tăng thứ hạng SEO không?

Dữ liệu có cấu trúc không phải là một yếu tố xếp hạng trực tiếp của Google. Tuy nhiên, việc hiển thị khoảng giá nổi bật trên kết quả tìm kiếm sẽ giúp tăng tỷ lệ nhấp chuột (CTR). Một CTR cao và trải nghiệm người dùng tốt sẽ gián tiếp hỗ trợ rất lớn cho chiến dịch SEO tổng thể của bạn.

Lỗi thiếu offers hoặc review trong Search Console có nguy hiểm không?

Đây là một cảnh báo (màu vàng) rất phổ biến và không làm sập website hay khiến trang bị xóa khỏi Google. Tuy nhiên, nó sẽ khiến sản phẩm của bạn không thể hiển thị các đoạn trích phong phú (Rich Snippet) bắt mắt trên kết quả tìm kiếm, làm giảm lợi thế cạnh tranh so với đối thủ.

Nên chọn định dạng JSON-LD hay Microdata khi khai báo AggregateOffer?

Bạn luôn luôn nên chọn JSON-LD. Đây là định dạng được Google khuyến khích sử dụng nhất vì nó tách biệt hoàn toàn với mã HTML hiển thị, giúp lập trình viên dễ dàng triển khai, bảo trì và hạn chế tối đa các lỗi phá vỡ giao diện website.

Làm sao để tự động cập nhật khoảng giá trong Schema AggregateOffer?

Để tránh sai sót dữ liệu, bạn không nên nhập tay khoảng giá. Hãy sử dụng các plugin SEO uy tín hỗ trợ thương mại điện tử (như Rank Math PRO, Yoast WooCommerce SEO) hoặc yêu cầu lập trình viên viết hàm tự động trích xuất giá trị Min và Max từ cơ sở dữ liệu sản phẩm để đưa vào mã JSON-LD.

Nếu bạn đang gặp khó khăn trong việc cấu hình Schema phức tạp hoặc cần một chiến lược tối ưu hóa Technical SEO toàn diện để thống trị kết quả tìm kiếm, đội ngũ chuyên gia tại V4SEO luôn sẵn sàng đồng hành và cung cấp giải pháp hiệu quả nhất cho doanh nghiệp của bạn.

Bài viết liên quan

Facebook
X
LinkedIn
Tumblr
Threads
logo_v4seowebsite

V4SEO là đội ngũ SEO & Web xuất phát từ Nha Trang, triển khai dự án cho doanh nghiệp trên toàn quốc. Chúng tôi cung cấp Dịch vụ SEO Nha Trang theo chuẩn Google, kết hợp kỹ thuật, nội dung và entity để tăng trưởng bền vững. Song song, Dịch vụ thiết kế website Nha Trang tối ưu UX, tốc độ và Core Web Vitals nhằm tối đa chuyển đổi; báo cáo minh bạch, hỗ trợ dài hạn.

Nội dung được sự cố vấn của chuyên gia SEO - Võ Quang Vinh
author-founder-v4seowebsite

Võ Quang Vinh – Chuyên gia SEO với hơn 10 năm kinh nghiệm triển khai hàng trăm dự án SEO tổng thể, từ thương mại điện tử đến dịch vụ địa phương. Từng đảm nhiệm vai trò SEO và là Keymember tại Gobranding và dân dắt đội SEO BachhoaXanh.com, anh là người đứng sau nhiều chiến dịch tăng trưởng traffic vượt bậc. Hiện tại, Vinh là người sáng lập và điều hành V4SEO, cung cấp giải pháp SEO & thiết kế website chuẩn UX/UI giúp doanh nghiệp bứt phá thứ hạng Google và tối ưu chuyển đổi. 

Bài viết liên quan