Schema & Structured Data

Speakable Schema

Thuộc tính schema.org cho phép chỉ định phần nội dung phù hợp để đọc to (dành cho thiết bị voice assistant).

4 lượt xem Cập nhật: 27/05/2026

Speakable Schema là gì?

Speakable Schema là thuộc tính được định nghĩa trong chuẩn schema.org, cho phép chủ sở hữu trang web chỉ rõ phần nội dung nào phù hợp để đọc to (text-to-speech) bởi trợ lý giọng nói như Google Assistant, Amazon Alexa hoặc Siri. Đây không phải một loại schema độc lập, mà là một thuộc tính có thể gắn vào các loại schema phổ biến như NewsArticle, BlogPosting, WebPage hoặc Article.

Giá trị của speakable thường là một đối tượng SpeakableSpecification, trong đó xác định vùng nội dung bằng CSS selector (ví dụ: .article-content) hoặc bằng XPath — tùy theo nền tảng hỗ trợ.

Tại sao quan trọng trong SEO?

Speakable Schema không trực tiếp ảnh hưởng đến thứ hạng tìm kiếm trên Google hay Bing. Tuy nhiên, nó hỗ trợ khả năng xuất hiện trong các kết quả thoại (voice search results), một mảng đang tăng nhanh: khoảng 27% người dùng Mỹ sử dụng tìm kiếm bằng giọng nói hàng ngày (theo dữ liệu Statista 2023 — cập nhật từ báo cáo chính thức). Khi Google Assistant chọn đọc một bài viết trong kết quả trả lời, việc có speakable đúng giúp hệ thống chọn đúng đoạn văn mạch lạc, thay vì tự động cắt ghép ngẫu nhiên.

Ngoài ra, đây là tín hiệu rõ ràng về chất lượng và cấu trúc nội dung — điều gián tiếp củng cố độ tin cậy với các công cụ tìm kiếm. Các trang áp dụng Speakable Schema cũng có tỷ lệ tương tác cao hơn trên thiết bị di động khi người dùng kích hoạt chế độ đọc to (tùy trường hợp).

Cách hoạt động

Khi một thiết bị hỗ trợ giọng nói (ví dụ: loa thông minh hoặc điện thoại Android) nhận yêu cầu dạng “Đọc bài này”, nó sẽ kiểm tra thẻ script type="application/ld+json" trên trang. Nếu phát hiện thuộc tính speakable hợp lệ, hệ thống sẽ:

  1. Phân tích giá trị cssSelector hoặc xpath được khai báo,
  2. Lấy nội dung văn bản từ phần tử khớp (loại bỏ script, iframe, quảng cáo),
  3. Xử lý văn bản: loại bỏ ký tự đặc biệt, chèn ngắt nghỉ hợp lý, chuẩn hóa dấu câu để dễ đọc to,
  4. Chuyển sang bộ tổng hợp giọng nói (TTS) để phát âm.

Lưu ý: Không phải tất cả trình duyệt hoặc nền tảng đều hỗ trợ speakable. Hiện tại, Google Assistant là nền tảng hỗ trợ rõ ràng nhất; Apple và Amazon chưa công bố hỗ trợ chính thức — có thể thay đổi.

Hướng dẫn thực hiện

Dưới đây là các bước triển khai Speakable Schema đúng chuẩn:

  1. Xác định phần nội dung cần đọc: Thường là tiêu đề + đoạn mở đầu + 2–3 đoạn thân bài (không bao gồm bình luận, menu, sidebar).
  2. Thêm CSS selector phù hợp: Đảm bảo selector chỉ trỏ duy nhất vào vùng mong muốn (ví dụ: #main-content > p, .article-body > h2, .article-body > p).
  3. Viết JSON-LD: Gắn vào thẻ <head> hoặc cuối <body>, bên trong khối schema chính (ví dụ: NewsArticle).
  4. Kiểm tra bằng công cụ: Dùng Google Search Console > Báo cáo Hiển thị > Kiểm tra URL > Xem tab “Dữ liệu có cấu trúc”. Cũng có thể dùng Rich Results Test (cần bật chế độ “Voice” nếu có).
  5. Theo dõi hiệu suất: Trong Google Search Console, lọc theo “Hiệu suất tìm kiếm thoại” (nếu có dữ liệu) hoặc theo dõi lượt hiển thị trên thiết bị có micro.

Lỗi thường gặp

  • Selector quá rộng hoặc quá hẹp: Ví dụ body sẽ lấy toàn bộ trang (kể cả footer), còn .byline chỉ lấy tên tác giả. → Khắc phục: Dùng DevTools để kiểm tra selector trước khi triển khai.
  • Thiếu thuộc tính bắt buộc: @type phải là SpeakableSpecification, và phải có ít nhất một trong hai: cssSelector hoặc xpath. Thiếu = schema không hợp lệ.
  • Sử dụng nhiều speakable không đồng nhất: Một trang chỉ nên có một khối speakable liên kết với schema chính. Nhiều khối gây nhầm lẫn cho máy đọc.
  • Chứa nội dung động không ổn định: Nếu selector trỏ vào phần tử được tạo bởi JavaScript sau khi tải, máy đọc có thể không thấy nội dung. → Khắc phục: Chỉ dùng selector cho nội dung có sẵn trong HTML nguồn (server-side rendered).

Ví dụ thực tế

Dưới đây là đoạn JSON-LD hoàn chỉnh cho bài báo, tích hợp speakable:

{
  "@context": "https://schema.org",
  "@type": "NewsArticle",
  "headline": "Cách trồng rau sạch tại nhà",
  "datePublished": "2024-04-15T08:00:00+07:00",
  "speakable": {
    "@type": "SpeakableSpecification",
    "cssSelector": [".article-intro", ".article-body > p:nth-of-type(-n+4)"]
  }
}

Bảng so sánh cách khai báo phổ biến:

Cách khai báo Ưu điểm Hạn chế
CSS Selector (đề xuất) Dễ viết, dễ kiểm tra, hỗ trợ rộng Không hoạt động nếu DOM thay đổi mạnh sau render
XPath Chính xác cao, ít phụ thuộc vào class Ít nền tảng hỗ trợ; dễ lỗi nếu cấu trúc HTML thay đổi
ID duy nhất (ví dụ: #readable-content) Tối ưu tốc độ, rõ ràng Yêu cầu can thiệp sâu vào markup; khó mở rộng

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

Speakable Schema có làm tăng thứ hạng Google không?

Không. Google khẳng định rõ rằng dữ liệu có cấu trúc — kể cả Speakable — không ảnh hưởng trực tiếp đến thứ hạng. Nó chỉ hỗ trợ trải nghiệm tìm kiếm bằng giọng nói và khả năng hiển thị trong kết quả thoại.

Tôi cần áp dụng Speakable Schema cho mọi bài viết?

Không bắt buộc. Nên ưu tiên cho nội dung có giá trị cao, dạng hướng dẫn, tin tức thời sự, hoặc bài blog dài có cấu trúc rõ ràng. Nội dung ngắn dưới 300 từ thường không cần.

Speakable Schema có tương thích với AMP?

Có, nhưng cần đảm bảo JSON-LD được đặt trong thẻ <head> của trang AMP. Một số phiên bản AMP cũ hơn có thể không xử lý đúng — nên kiểm tra bằng AMP Validator.