QuantitativeValue Schema
Schema biểu diễn giá trị số có đơn vị đo: value, unitCode/unitText, minValue/maxValue, valueReference.
QuantitativeValue Schema là gì?
QuantitativeValue Schema là một loại markup cấu trúc (structured data) thuộc chuẩn Schema.org, dùng để mô tả một giá trị số kèm theo đơn vị đo lường rõ ràng. Nó giúp máy tìm hiểu chính xác ý nghĩa của các con số trong nội dung — ví dụ: "cân nặng 65 kg", "chiều cao 172 cm", "nhiệt độ tối đa 40°C", "thời gian sạc 2,5 giờ". Schema này không chỉ ghi lại con số mà còn định nghĩa đầy đủ: giá trị cụ thể (value), đơn vị đo (unitCode hoặc unitText), khoảng giá trị nếu có (minValue, maxValue), và tham chiếu nguồn dữ liệu (valueReference).
Đây là schema con của Intangible, và thường được dùng kết hợp với các loại khác như Product, MedicalEntity, Recipe, Event hoặc Organization để làm rõ thông số kỹ thuật.
Tại sao quan trọng trong SEO?
QuantitativeValue Schema giúp công cụ tìm kiếm hiểu sâu hơn về nội dung số — điều mà văn bản thuần không thể truyền tải rõ ràng. Khi Google đọc đúng đơn vị và ngữ cảnh của một con số, khả năng hiển thị Rich Result tăng lên — đặc biệt ở các lĩnh vực như thương mại điện tử, y tế, giáo dục, so sánh sản phẩm hoặc công thức nấu ăn.
Một số lợi ích thực tế:
- Giảm nhầm lẫn giữa các đơn vị (ví dụ: "500" có thể là ml, g, cal, hay mg — schema phân biệt rõ)
- Hỗ trợ tính năng tìm kiếm bằng giọng nói (voice search) hiểu đúng yêu cầu dạng "mua pin AA dung lượng trên 2000 mAh")
- Cải thiện độ tin cậy của dữ liệu khi tích hợp với Google Knowledge Graph
- Tăng khả năng xuất hiện trong các bảng so sánh tự động hoặc snippet dạng thẻ (card-based results)
Lưu ý: Schema này không trực tiếp nâng thứ hạng, nhưng là yếu tố hỗ trợ trải nghiệm người dùng và độ chính xác của kết quả — hai yếu tố gián tiếp ảnh hưởng đến CTR và thời gian ở lại trang.
Cách hoạt động
QuantitativeValue hoạt động bằng cách gắn nhãn có cấu trúc cho các thành phần số trong HTML. Khi Googlebot quét trang, nó nhận diện các thuộc tính như value, unitCode và liên kết chúng với ngữ nghĩa đã định nghĩa trong Schema.org. Việc này tương tự như việc “gắn thẻ danh bạ” cho từng con số: không chỉ biết “65”, mà còn biết “đó là cân nặng, tính bằng kilogram, thuộc về sản phẩm X”.
Schema này dựa trên nguyên tắc machine-readable context: mỗi giá trị số phải đi kèm ít nhất một trong hai thuộc tính đơn vị (unitCode hoặc unitText) để đảm bảo tính đầy đủ. Nếu thiếu, markup sẽ bị coi là không hợp lệ trong kiểm tra Structured Data Testing Tool.
Hướng dẫn thực hiện
Dưới đây là các bước triển khai QuantitativeValue Schema chuẩn xác:
- Xác định giá trị cần đánh dấu: Chỉ chọn những con số có ý nghĩa đo lường — không dùng cho mã sản phẩm, ID, năm sinh hay số điện thoại.
- Chọn thuộc tính đơn vị phù hợp: Ưu tiên
unitCode(mã chuẩn UN/CEFACT) nếu có — ví dụ"KGM"cho kilogram,"HUR"cho giờ. Nếu không tìm thấy mã chuẩn, dùngunitTextvới tên đơn vị tiếng Việt rõ ràng như"mililít"hoặc"độ C". - Thêm markup vào HTML: Có thể dùng JSON-LD (khuyến nghị) hoặc Microdata. JSON-LD dễ kiểm soát và ít xung đột với CSS/JS.
- Kiểm tra bằng công cụ chính thức: Dùng URL Inspection Tool hoặc Schema Markup Validator để xác nhận không có lỗi bắt buộc.
- Theo dõi hiệu quả: Quan sát báo cáo Enhancements > Structured Data trong Google Search Console sau 3–6 tuần.
Lỗi thường gặp
Dưới đây là những sai sót phổ biến và cách sửa:
| Lỗi | Nguyên nhân | Cách khắc phục |
|---|---|---|
Thiếu unitCode hoặc unitText |
Bắt buộc phải có ít nhất một trong hai thuộc tính đơn vị | Thêm "unitCode": "KGM" hoặc "unitText": "kilogram" |
Dùng value kiểu chuỗi thay vì số |
Google yêu cầu value phải là số (number), không phải chuỗi như "65.5" |
Viết 65.5 (không có ngoặc kép) trong JSON-LD |
| Gắn sai ngữ cảnh | Đặt QuantitativeValue độc lập, không liên kết với đối tượng cha (ví dụ: không nằm trong Product hay Recipe) |
Dùng @id hoặc lồng trong itemProp để liên kết rõ ràng |
| Dùng đơn vị không tồn tại trong danh mục chuẩn | Mã unitCode sai hoặc tự đặt (ví dụ: "KG" thay vì "KGM") |
Tham khảo danh sách chuẩn tại schema.org/unitCode; nếu không chắc, dùng unitText |
Ví dụ thực tế
Dưới đây là đoạn JSON-LD đánh dấu khối thông số kỹ thuật của một chiếc máy hút bụi:
{ "@context": "https://schema.org", "@type": "Product", "name": "Máy hút bụi cầm tay XYZ", "description": "Công suất hút 150 AW, pin lithium-ion 2200 mAh.", "potentialAction": { "@type": "BuyAction", "target": "https://example.com/may-hut-bui-xyz" }, "additionalProperty": [ { "@type": "PropertyValue", "name": "Công suất hút", "value": { "@type": "QuantitativeValue", "value": 150, "unitCode": "AW" } }, { "@type": "PropertyValue", "name": "Dung lượng pin", "value": { "@type": "QuantitativeValue", "value": 2200, "unitCode": "MAH" } } ] }
Lưu ý: AW (Air Watt) và MAH (milliampere-hour) đều là mã chuẩn được công nhận trong Schema.org. Nếu dùng unitText, nên viết rõ ràng: "unitText": "oát khí" hoặc "unitText": "miliampe-giờ".
Câu hỏi thường gặp
QuantitativeValue có hỗ trợ số âm không?
Có. Thuộc tính value chấp nhận số âm (ví dụ: nhiệt độ -15°C). Tuy nhiên, cần đảm bảo unitCode hoặc unitText phù hợp với ngữ cảnh vật lý — ví dụ "CEL" cho độ C là hợp lệ, còn "KGM" với giá trị âm thì không có ý nghĩa thực tế.
Có thể dùng QuantitativeValue cho giá tiền không?
Không. Giá tiền phải dùng PriceSpecification hoặc thuộc tính price trong Offer. QuantitativeValue chỉ dành riêng cho giá trị đo lường — không áp dụng cho tiền tệ, tỷ lệ phần trăm hay mã số.
unitCode và unitText có thể dùng đồng thời không?
Có thể, nhưng không bắt buộc. Theo tài liệu chính thức Schema.org, cả hai thuộc tính đều được phép xuất hiện cùng lúc. Tuy nhiên, tốt nhất nên ưu tiên unitCode nếu có mã chuẩn; unitText dùng làm bổ sung hoặc khi mã chưa có — tùy trường hợp.