Biến thể sản phẩm (màu, cỡ, dung tích): một địa chỉ hay nhiều địa chỉ, và cách khai cho Google hiểu
Biến thể chỉ khác màu, cỡ thì thường gom về một trang, chọn biến thể bằng tham số, canonical về trang chính. Biến thể mà người ta tìm riêng (dung tích, cấu hình, màu nổi tiếng) có thể có trang hoặc địa chỉ riêng. Dù chọn cách nào, khai ProductGroup để Google hiểu chúng là một nhóm.

Một mẫu áo thun có 8 màu × 6 cỡ là 48 biến thể. Một dòng máy lọc nước có bản 9 lõi và 10 lõi. Một chai dầu gội có 250 ml, 500 ml, 1 lít. Mỗi biến thể có mã riêng, giá có thể khác, tình trạng hàng khác. Câu hỏi kỹ thuật: mỗi biến thể một trang, hay tất cả một trang? Chọn sai theo hướng nào cũng có hại: quá nhiều trang thì trùng lặp và chia tín hiệu; gom hết vào một trang thì có biến thể người ta tìm riêng mà không có chỗ để xếp hạng.
Khi nào gom, khi nào tách
| Loại biến thể | Người có tìm riêng không | Cách làm |
|---|---|---|
| Cỡ quần áo, giày | Hiếm (ít ai tìm “áo thun X cỡ L”) | Gom một trang |
| Màu thông thường | Thường không | Gom một trang; ảnh đổi theo màu |
| Màu là đặc trưng (“iPhone màu titan sa mạc”, “áo dài màu đỏ cưới”) | Có | Có thể có địa chỉ riêng cho màu đó |
| Dung tích, kích thước khác hẳn công dụng (nồi 1 lít và 5 lít) | Có | Cân nhắc trang riêng hoặc địa chỉ biến thể được lập chỉ mục |
| Cấu hình (RAM, bộ nhớ, số lõi lọc) | Thường có | Địa chỉ biến thể riêng có nội dung khác biệt |
| Combo, bộ quà | Có, khác ý định | Trang sản phẩm riêng |
Quy tắc chung: tách khi biến thể có nhu cầu tìm riêng và nội dung khác đủ (ảnh, thông số, giá, công dụng). Không tách chỉ để có thêm trang.
Cách kiểm nhanh một biến thể có nhu cầu tìm riêng: tìm trong Search Console truy vấn chứa tên sản phẩm kèm thuộc tính (“1 lít”, “10 lõi”, “màu đỏ”), xem có lượt hiển thị đáng kể không; tra thêm gợi ý tự động của Google khi gõ tên sản phẩm. Không thấy gì thì gom. Thấy rõ và đều đặn thì cân nhắc tách. Quyết định có thể đổi theo thời gian: một màu mới thành “hot” trên mạng xã hội có thể đáng có địa chỉ riêng trong mùa đó.
Cách 1: một trang, chọn biến thể bằng tham số
Phổ biến nhất trên Shopify, Haravan, WooCommerce: /san-pham/ao-thun-x là trang chính, chọn màu đổi địa chỉ thành ?variant=123 hoặc ?mau=xanh.
- Canonical của mọi địa chỉ biến thể trỏ về trang chính.
- Khi người dùng chọn biến thể, ảnh, giá, tình trạng hàng, mã đổi theo; địa chỉ đổi theo để chia sẻ đúng biến thể.
- Biến thể mặc định là biến thể còn hàng, bán chạy nhất, không phải biến thể đầu bảng chữ cái đã hết hàng.
- Thông tin giá trong HTML ban đầu là giá của biến thể mặc định.
Cách 2: địa chỉ riêng cho biến thể quan trọng
Với biến thể có nhu cầu tìm riêng, địa chỉ biến thể được lập chỉ mục: canonical tự trỏ, title và H1 có tên biến thể (“Máy lọc nước X 10 lõi”), mô tả nói rõ khác biệt (lõi thứ 10 bổ sung khoáng gì, hợp với ai), ảnh riêng nếu có. Các biến thể phụ (màu vỏ máy) vẫn chọn bằng tham số trong từng trang đó.
Đừng tạo trang biến thể chỉ đổi một từ trong tiêu đề còn lại giống hệt; đó là nội dung gần trùng và các trang tự cạnh tranh. Xem ăn thịt từ khoá.
Khai ProductGroup
Dữ liệu có cấu trúc ProductGroup cho Google biết các biến thể thuộc cùng một sản phẩm gốc:
{
"@context": "https://schema.org",
"@type": "ProductGroup",
"@id": "https://shop.vn/san-pham/ao-thun-x#nhom",
"name": "Áo thun cotton X",
"productGroupID": "AT-X",
"variesBy": ["https://schema.org/color", "https://schema.org/size"],
"hasVariant": [
{ "@type": "Product", "sku": "AT-X-XANH-M", "name": "Áo thun cotton X – Xanh – M",
"color": "Xanh", "size": "M", "image": "https://shop.vn/anh/at-x-xanh.webp",
"offers": { "@type": "Offer", "price": "249000", "priceCurrency": "VND",
"availability": "https://schema.org/InStock", "url": "https://shop.vn/san-pham/ao-thun-x?mau=xanh&co=m" } },
{ "@type": "Product", "sku": "AT-X-DEN-L", "name": "Áo thun cotton X – Đen – L",
"color": "Đen", "size": "L", "image": "https://shop.vn/anh/at-x-den.webp",
"offers": { "@type": "Offer", "price": "249000", "priceCurrency": "VND",
"availability": "https://schema.org/OutOfStock", "url": "https://shop.vn/san-pham/ao-thun-x?mau=den&co=l" } }
]
}
Mỗi biến thể có sku, thuộc tính khác biệt, giá, tình trạng, địa chỉ chọn thẳng được biến thể đó. Nguồn cấp Merchant Center dùng item_group_id cho cùng mục đích. Xem schema Product và Merchant Center.

Ảnh theo biến thể
Khách mua áo màu xanh muốn thấy đúng màu xanh, không phải ảnh màu trắng của biến thể đầu tiên. Ảnh theo biến thể giúp khách và giúp cả Google Hình ảnh, nơi nhiều người tìm theo màu (“áo thun xanh rêu nam”):
- Mỗi biến thể màu có ít nhất một ảnh riêng, tên tệp và alt nêu màu:
ao-thun-x-xanh-reu.webp, alt “Áo thun cotton X màu xanh rêu, mặt trước”. - Khi chọn màu, ảnh chính đổi theo; ảnh của mọi màu vẫn có trong HTML (trong thư viện ảnh) để Google thấy.
- Ảnh trong
hasVariantcủa ProductGroup trỏ đúng ảnh của từng biến thể. - Màu trên ảnh gần với màu thật; ghi chú nếu màu ngoài đời khác ảnh. Đây là lý do đổi trả số một của hàng thời trang online.
Ví dụ: dầu gội ba dung tích
Ví dụ minh hoạ: một thương hiệu dầu gội thảo dược bán ba dung tích 250 ml, 500 ml, 1 lít. Ban đầu mỗi dung tích là một sản phẩm riêng với mô tả chép giống nhau, ba trang cùng tranh câu tìm tên sản phẩm, không trang nào đứng tốt. Search Console cho thấy “dầu gội X 1 lít” có lượt tìm riêng (khách mua dùng lâu dài, tiệm tóc mua sỉ), còn 250 ml và 500 ml thì không.
Làm lại: gộp 250 ml và 500 ml vào một trang chính, chọn dung tích bằng tham số, canonical về trang chính, 301 trang 500 ml cũ về đó; giữ trang 1 lít riêng vì có nhu cầu tìm riêng, viết lại nội dung cho đối tượng dùng dài hạn và tiệm tóc (giá theo ml, cách bảo quản chai lớn, đặt định kỳ), liên kết qua lại hai trang; khai ProductGroup trên trang chính. Hai trang không còn tranh nhau, và trang 1 lít bắt đầu hiện cho câu tìm có chữ “1 lít” và “sỉ”.
Biến thể trên sàn và trên site
Trên sàn thương mại điện tử, một tin đăng gom mọi biến thể là chuẩn. Khi đồng bộ sản phẩm từ sàn về site (hoặc ngược lại), công cụ đồng bộ đôi khi tách mỗi biến thể thành một sản phẩm riêng trên site. Kiểm sau mỗi lần đồng bộ lớn: số trang sản phẩm có tăng vọt không, có nhiều trang tên gần giống nhau không.
Bẫy kỹ thuật hay gặp
- Ứng dụng chọn biến thể đổi canonical sang địa chỉ có tham số sau khi trang tải xong bằng JavaScript: Google chọn bản có tham số làm chính tắc, trang chính rơi khỏi chỉ mục. Kiểm bằng công cụ Kiểm tra URL, xem HTML đã kết xuất. Xem Kiểm tra URL.
- Mỗi biến thể là một sản phẩm riêng trong hệ thống, sinh 48 trang gần giống nhau.
- Chọn biến thể không đổi giá, ảnh trên trang; khách thấy sai.
- Bộ chọn biến thể làm trang nhảy khi tải, đẩy nút mua; xem CLS.
- Biến thể hết hàng làm cả trang báo hết hàng dù màu khác còn; khách và Google đều hiểu sai là sản phẩm đã hết.
- Tham số biến thể bị chặn trong robots.txt khiến Merchant Center không thu thập được địa chỉ biến thể trong nguồn cấp.
Checklist
- Xác định biến thể nào có nhu cầu tìm riêng bằng Search Console và gợi ý tìm kiếm.
- Biến thể thường: một trang, tham số, canonical về trang chính.
- Biến thể quan trọng: địa chỉ riêng, nội dung khác biệt, canonical tự trỏ.
- Chọn biến thể đổi ảnh, giá, tình trạng, địa chỉ.
- Biến thể mặc định là bản còn hàng, bán chạy; ảnh của mọi màu có trong HTML.
- Khai ProductGroup với hasVariant; item_group_id trong nguồn cấp.
- Kiểm canonical sau khi JavaScript chạy; kiểm trang bằng chấm điểm SEO.
Hỏi đáp
Mỗi màu sản phẩm có nên một trang riêng?
Thường không. Màu thông thường gom về một trang, chọn bằng tham số và canonical về trang chính. Chỉ tách khi màu đó có nhu cầu tìm riêng đáng kể và có nội dung khác biệt.
Canonical của trang biến thể trỏ về đâu?
Nếu biến thể không cần xếp hạng riêng, trỏ về trang sản phẩm chính. Nếu biến thể được chọn để lập chỉ mục riêng, canonical tự trỏ về chính địa chỉ biến thể đó.
ProductGroup có bắt buộc không?
Không bắt buộc, nhưng giúp Google hiểu các biến thể thuộc cùng một sản phẩm, hiện đúng giá và tình trạng của từng biến thể trong kết quả mua sắm.
Biến thể hết hàng thì xử lý thế nào?
Đổi availability của biến thể đó, giữ các biến thể khác còn hàng hiển thị bình thường. Đặt biến thể mặc định của trang là biến thể còn hàng.
Đọc tiếp

Trang sản phẩm: mô tả riêng, ảnh thật, thông số đủ và những thứ giúp khách quyết định
Trang sản phẩm chép nguyên mô tả của hãng giống hệt hàng trăm shop khác, nên không có lý do gì để Google chọn nó. Thứ làm trang khác biệt l…

Schema Product, giá, tình trạng hàng và Merchant Center: để sản phẩm hiện giá và sao trên Google
Dữ liệu có cấu trúc Product cho Google biết chính xác sản phẩm, giá, tình trạng hàng, đánh giá; Merchant Center đưa thông tin đó vào tab Mu…

Thẻ canonical: viết đúng, các lỗi hay gặp và lúc Google bỏ qua nó
Thẻ canonical cho Google biết đâu là địa chỉ chính khi một nội dung có nhiều địa chỉ. Viết đúng là địa chỉ tuyệt đối, https, đúng tên miền…

Ăn thịt từ khoá: hai trang tự tranh nhau, cách phát hiện bằng Search Console và cách gộp
Hai trang cùng site nhắm cùng một ý định thì Google phải chọn một, và thường thay phiên chọn, nên không trang nào đứng vững. Dấu hiệu rõ nh…