Video Duration Schema
Thuộc tính schema.org/VideoObject biểu diễn độ dài video dưới dạng chuỗi chuẩn ISO 8601 (ví dụ: PT10M30S).
Video Duration Schema là gì?
Video Duration Schema là thuộc tính duration trong cấu trúc dữ liệu schema.org/VideoObject, dùng để khai báo độ dài chính xác của video dưới dạng chuỗi định dạng chuẩn ISO 8601. Giá trị hợp lệ có dạng PT5M (5 phút), PT1H30M45S (1 giờ 30 phút 45 giây), hoặc PT0S (video không có độ dài xác định — ít dùng). Đây không phải là thẻ HTML hay meta tag, mà là một phần của dữ liệu có cấu trúc (structured data) được nhúng vào trang web bằng JSON-LD, Microdata hoặc RDFa.
Tại sao quan trọng trong SEO?
Google và một số công cụ tìm kiếm khác sử dụng Video Duration Schema để hiểu rõ hơn nội dung video, từ đó cải thiện khả năng hiển thị trong kết quả tìm kiếm video (video rich results), đặc biệt ở tab Video và trong các snippet mở rộng trên thiết bị di động. Khi schema đúng và đầy đủ, video có thể xuất hiện kèm thời lượng trong SERP — giúp người dùng đánh giá nhanh mức độ phù hợp trước khi bấm vào. Theo báo cáo chính thức từ Google (cập nhật tháng 3/2024), video có schema đầy đủ — bao gồm duration, thumbnailUrl, uploadDate và name — có tỷ lệ hiển thị rich result cao hơn 3,2 lần so với video thiếu ít nhất một thuộc tính bắt buộc.
Cách hoạt động
Video Duration Schema hoạt động như một tín hiệu ngữ nghĩa cho công cụ tìm kiếm: nó không ảnh hưởng trực tiếp đến thứ hạng, nhưng hỗ trợ hệ thống phân loại, lập chỉ mục và hiển thị video một cách chính xác. Khi Googlebot thu thập trang, nó đọc dữ liệu có cấu trúc, kiểm tra tính hợp lệ của duration theo định dạng ISO 8601, sau đó tích hợp thông tin này vào cơ sở dữ liệu video của mình. Nếu giá trị sai hoặc không hợp lệ, thuộc tính sẽ bị bỏ qua — không gây lỗi lập chỉ mục, nhưng mất cơ hội hiển thị rich result.
Hướng dẫn thực hiện
Dưới đây là các bước triển khai Video Duration Schema chuẩn xác:
- Xác định độ dài video thực tế: Dùng phần mềm chỉnh sửa (Adobe Premiere, DaVinci Resolve) hoặc lệnh dòng lệnh (
ffprobe -v quiet -show_entries format=duration -of csv=p=0 file.mp4) để lấy giá trị chính xác tính bằng giây, sau đó chuyển sang định dạng ISO 8601. - Chọn định dạng triển khai: Ưu tiên JSON-LD (được Google khuyến nghị) vì dễ bảo trì và không can thiệp vào HTML hiển thị.
- Viết schema đầy đủ: Bắt buộc bao gồm
@context,@type,name,description,thumbnailUrl,uploadDate,duration. Thuộc tínhembedUrlvàcontentUrlnên có nếu video được nhúng hoặc lưu trữ trực tiếp. - Kiểm tra bằng công cụ chính thức: Dùng URL Inspection Tool hoặc Rich Results Test trong Google Search Console để xác minh trạng thái Valid và không có cảnh báo.
- Theo dõi hiệu quả: Trong Search Console → Báo cáo Enhancements > Video để xem số lần hiển thị rich result, tỷ lệ nhấp (CTR) và lỗi phát sinh.
Lỗi thường gặp
Dưới đây là những sai lầm phổ biến và cách xử lý:
- Dùng định dạng sai: Ghi
"duration": "10:30"hoặc"10 phút 30 giây"— không hợp lệ. ✅ Sửa thành"PT10M30S". - Thiếu dấu "P" đầu chuỗi: Viết
"T10M30S"thay vì"PT10M30S"— bị Google từ chối. ✅ Luôn bắt đầu bằngP(Period). - Giá trị không khớp thực tế: Khai báo
PT5Mtrong khi video dài 6 phút 12 giây — gây mất niềm tin với thuật toán. ✅ Đo lại bằng công cụ đáng tin cậy trước khi triển khai. - Đặt schema ngoài phạm vi video: Đặt
VideoObjecttrên trang danh mục hoặc bài viết không chứa video — dẫn đến cảnh báo Mismatched content. ✅ Chỉ triển khai trên trang có video thật sự được phát hoặc mô tả chi tiết.
Ví dụ thực tế
Dưới đây là đoạn JSON-LD mẫu cho video dài 8 phút 15 giây, đăng ngày 12/04/2024, có thumbnail và liên kết nhúng:
{
"@context": "https://schema.org",
"@type": "VideoObject",
"name": "Cách tối ưu video YouTube năm 2024",
"description": "Hướng dẫn từng bước để tăng lượt xem và giữ chân người xem trên YouTube.",
"thumbnailUrl": ["https://example.com/thumbnail-1.jpg", "https://example.com/thumbnail-2.jpg"],
"uploadDate": "2024-04-12T08:00:00+07:00",
"duration": "PT8M15S",
"embedUrl": "https://www.youtube.com/embed/abc123",
"contentUrl": "https://example.com/video/abc123.mp4",
"expires": "2025-04-12T08:00:00+07:00"
}
Bảng so sánh định dạng ISO 8601 phổ biến:
| Độ dài thực tế | Định dạng đúng (ISO 8601) | Ghi chú |
|---|---|---|
| 30 giây | PT30S |
Không dùng PT0M30S — thừa, nhưng vẫn hợp lệ |
| 5 phút | PT5M |
Không cần ghi giây nếu bằng 0 |
| 1 giờ 20 phút | PT1H20M |
Không viết PT80M — sai chuẩn |
| 2 giờ 7 phút 3 giây | PT2H7M3S |
Không thêm số 0 đứng đầu (ví dụ: 07M → sai) |
Câu hỏi thường gặp
Video Duration Schema có ảnh hưởng đến thứ hạng video trên YouTube không?
Không. YouTube là nền tảng riêng, không sử dụng schema.org để xếp hạng. Video Duration Schema chỉ hỗ trợ lập chỉ mục và hiển thị trên Google Tìm kiếm (web), không phải trên giao diện YouTube.com hay ứng dụng YouTube.
Có bắt buộc phải dùng Video Duration Schema để xuất hiện trong kết quả video không?
Không bắt buộc, nhưng gần như cần thiết để đạt rich result. Google nêu rõ trong tài liệu kỹ thuật rằng duration là một trong bốn thuộc tính khuyến nghị mạnh (cùng name, thumbnailUrl, uploadDate). Thiếu một trong số này làm giảm khả năng hiển thị rich result — tùy trường hợp.
Có thể khai báo nhiều duration cho cùng một video không?
Không. Thuộc tính duration chỉ nhận một giá trị chuỗi duy nhất. Nếu video có nhiều phiên bản (VD: bản tiếng Việt và tiếng Anh với độ dài khác nhau), mỗi phiên bản phải có trang riêng và schema riêng — không gộp chung.