Tabular Data Markup
Sử dụng thẻ <table>, <th>, <td> đúng chuẩn hoặc schema Table để giúp công cụ tìm kiếm hiểu dữ liệu dạng bảng và có thể hiển thị trong rich result.
Tabular Data Markup là gì?
Tabular Data Markup là cách đánh dấu dữ liệu dạng bảng trên trang web bằng HTML chuẩn (<table>, <th>, <td>) hoặc bằng cấu trúc dữ liệu có cấu trúc (schema.org) như Table hoặc Dataset. Mục đích chính là giúp công cụ tìm kiếm — đặc biệt là Google — hiểu rõ nội dung, mối quan hệ và ngữ cảnh của từng ô, hàng, cột trong bảng, từ đó hỗ trợ hiển thị kết quả nâng cao (rich results) hoặc tích hợp vào các tính năng như Featured Snippet, Knowledge Graph.
Tại sao quan trọng trong SEO?
Tabular Data Markup quan trọng vì ba lý do chính:
- Tăng khả năng xuất hiện trong rich results: Bảng được đánh dấu đúng chuẩn có thể xuất hiện trực tiếp trong kết quả tìm kiếm dưới dạng bảng tương tác — ví dụ: bảng so sánh sản phẩm, bảng giá, lịch trình sự kiện.
- Cải thiện khả năng hiểu nội dung của bot: Công cụ tìm kiếm không chỉ đọc văn bản mà còn phân tích cấu trúc. Một bảng không có thẻ
<th>hoặc thiếuscopekhiến bot khó xác định tiêu đề cột/hàng, dẫn đến hiểu sai dữ liệu. - Hỗ trợ trải nghiệm người dùng và truy cập: Bảng chuẩn WCAG (có
<caption>,<thead>,<scope="col">) giúp người dùng dùng phần mềm đọc màn hình tiếp cận thông tin dễ dàng hơn — yếu tố gián tiếp ảnh hưởng đến tỷ lệ thoát và thời gian ở lại, từ đó tác động đến xếp hạng.
Cách hoạt động
Google đọc bảng qua hai lớp:
- Lớp HTML: Phân tích cấu trúc DOM — xác định tiêu đề cột (
<th>), tiêu đề hàng (<th scope="row">), vùng dữ liệu (<td>), tiêu đề bảng (<caption>) và nhóm hàng/cột (<thead>,<tbody>,<colgroup>). - Lớp schema: Nếu có thêm markup JSON-LD với kiểu
https://schema.org/Table, Google sẽ ghép nối dữ liệu bảng với mô tả ngữ nghĩa — ví dụ: cột "Giá" được gắn thuộc tính"priceSpecification", cột "Thời gian bảo hành" gắn"warranty".
Lưu ý: Hiện tại Google không hỗ trợ rich result riêng biệt cho schema Table trong Search Console hay Rich Results Test. Tuy nhiên, việc kết hợp schema với bảng HTML chuẩn vẫn giúp tăng độ tin cậy và khả năng trích xuất dữ liệu cho các tính năng khác như Discover hoặc Assistant.
Hướng dẫn thực hiện
Theo hướng dẫn chính thức từ Google và W3C, bạn nên làm theo 5 bước sau:
- Sử dụng thẻ
<table>chỉ khi dữ liệu thực sự có cấu trúc bảng — không dùng để bố cục (layout). Thay vào đó, dùng CSS Grid hoặc Flexbox. - Thêm
<caption>ngắn gọn, mô tả mục đích bảng — ví dụ: "Bảng so sánh giá dịch vụ SEO năm 2024". - Phân tách rõ ràng
<thead>(tiêu đề cột) và<tbody>(dữ liệu). Mỗi ô tiêu đề phải là<th>, không phải<td>. - Gắn thuộc tính
scopecho<th>:scope="col"nếu là tiêu đề cột,scope="row"nếu là tiêu đề hàng. Với bảng phức tạp, dùngidvàheadersđể liên kết rõ ràng. - Tùy chọn: bổ sung JSON-LD với schema Table. Chỉ áp dụng khi bảng chứa dữ liệu có thể tái sử dụng (ví dụ: số liệu thống kê chính phủ, bảng thông số kỹ thuật sản phẩm). Cấu trúc bắt buộc gồm
@context,@type,name,descriptionvàdata(mảng các hàng).
Lỗi thường gặp
Dưới đây là 4 lỗi phổ biến và cách sửa:
- Lỗi: Dùng
<td>thay vì<th>cho tiêu đề → Sửa bằng cách đổi tất cả ô tiêu đề thành<th>và thêmscope. - Lỗi: Thiếu
<caption>hoặc dùng caption mơ hồ → Viết lại caption ngắn gọn, chứa từ khóa chính và phản ánh đúng nội dung (tối đa 120 ký tự). - Lỗi: Bảng bị chia thành nhiều
<table>rời rạc → Gộp thành một bảng duy nhất, dùng<colgroup>để định dạng cột nếu cần. - Lỗi: Thêm schema Table nhưng không khớp với HTML thực tế → Kiểm tra tính nhất quán giữa dữ liệu trong JSON-LD và nội dung hiển thị. Nếu không chắc, bỏ schema và tập trung vào HTML chuẩn.
Ví dụ thực tế
Dưới đây là bảng so sánh 3 gói dịch vụ SEO, tuân thủ đầy đủ tiêu chuẩn:
| Gói dịch vụ | Số từ khóa tối đa | Báo cáo hàng tháng | Hỗ trợ kỹ thuật |
|---|---|---|---|
| Starter | 10 từ khóa | Có (PDF) | Email (24h) |
| Professional | 30 từ khóa | Có (PDF + Dashboard) | Chat (8h–17h) |
| Enterprise | Vô hạn | Có (Dashboard + Call review) | Điện thoại (24/7) |
Bảng này có: <caption> rõ ràng, <th> cho cả tiêu đề cột và hàng, scope chính xác, và cấu trúc <thead>/<tbody> hợp lý.
Câu hỏi thường gặp
Google có hiển thị rich result cho bảng không?
Hiện tại Google không cấp rich result riêng cho bảng như FAQ hay Breadcrumb. Tuy nhiên, bảng chuẩn có thể xuất hiện trong Featured Snippet dạng bảng — đặc biệt với truy vấn so sánh (ví dụ: "so sánh giá hosting Việt Nam").
Có nên dùng schema Table cho mọi bảng trên website?
Không. Schema Table chỉ nên dùng khi bảng chứa dữ liệu có giá trị độc lập, có thể tái sử dụng (ví dụ: bảng lương tối thiểu vùng, bảng thuế GTGT). Với bảng nội bộ (so sánh sản phẩm, bảng giá dịch vụ), HTML chuẩn là đủ — việc thêm schema thừa có thể gây nhiễu và không mang lại lợi ích rõ ràng.
Tabular Data Markup có ảnh hưởng trực tiếp đến thứ hạng không?
Không có bằng chứng nào cho thấy Tabular Data Markup là yếu tố xếp hạng trực tiếp. Tuy nhiên, nó ảnh hưởng gián tiếp qua: (1) tăng CTR nhờ rich snippet, (2) giảm tỷ lệ thoát nhờ trải nghiệm người dùng tốt hơn, (3) cải thiện độ tin cậy nội dung — những yếu tố Google xác nhận là tín hiệu xếp hạng.