Dữ liệu có cấu trúc
Trình kiểm tra Schema Event
Dán JSON-LD Event (hoặc MusicEvent, SportsEvent, Festival và hơn 20 kiểu con khác) của bạn và nhận được kiểm tra đầy đủ theo hướng dẫn dữ liệu có cấu trúc Event của Google: ngày tháng, location/VirtualLocation, eventAttendanceMode, các chuyển đổi eventStatus, và mọi trường Offer.
Chạy hoàn toàn trong trình duyệt của bạn. Không có gì bạn dán ở đây được gửi đi đâu ngoài số lượt sử dụng ẩn danh.
Dán nội dung của khối <script type="application/ld+json">, hoặc toàn bộ trang HTML — mọi khối JSON-LD sẽ được tự động trích xuất.
Công cụ này kiểm tra gì, và cách sửa các lỗi thường gặp
Google chỉ hiển thị kết quả phong phú cho Event (ngày, địa điểm và liên kết mua vé trực tiếp trong kết quả tìm kiếm) khi JSON-LD Event của bạn hợp lệ về cú pháp VÀ đầy đủ. Công cụ này phân tích chính các đối tượng Place, VirtualLocation và Offer lồng nhau — cùng cấu trúc mà công cụ tìm kiếm đọc — chứ không chỉ là danh sách thuộc tính phẳng.
Ngày tháng là lỗi phổ biến nhất: startDate và endDate phải là giá trị ISO 8601 thực sự ("2026-09-12T19:00:00+07:00", không phải "9/12/2026"), rất nên có múi giờ đi kèm, và endDate không bao giờ được đứng trước startDate. Nếu startDate đã qua mà eventStatus vẫn là "EventScheduled", Google thường sẽ không hiển thị sự kiện đó — hãy xóa markup hoặc cập nhật trạng thái.
location phải rõ ràng: sự kiện trực tiếp cần một Place có name và address đầy đủ; sự kiện hoàn toàn trực tuyến cần eventAttendanceMode được đặt là "OnlineEventAttendanceMode" và một VirtualLocation có URL thật, thay cho (hoặc đi kèm, với sự kiện kết hợp) Place. Đặt eventStatus là "EventMovedOnline" mà không đồng thời chuyển đổi attendance mode và location là mâu thuẫn thường gặp khiến việc kiểm tra thất bại.
Mỗi Offer cần price và priceCurrency 3 chữ cái hợp lệ (ISO 4217, ví dụ "IDR" hoặc "USD") là các trường riêng biệt — không bao giờ nhét ký hiệu tiền tệ vào chuỗi price — cùng với giá trị availability được công nhận ("InStock", "SoldOut", "PreOrder", v.v.) và URL vé trực tiếp. Nhiều hạng vé nên dùng mảng đối tượng Offer, hoặc AggregateOffer với khoảng lowPrice/highPrice hợp lệ.
"EventRescheduled" và "EventPostponed" nên có previousStartDate để Google có thể hiển thị điều gì đã thay đổi. Nếu một trang liệt kê nhiều hơn một bản ghi Event, công cụ này cũng đánh dấu các bản ghi có khả năng trùng lặp — cùng name và startDate xuất hiện hai lần thường có nghĩa là dán trùng ngoài ý muốn, chứ không phải hai sự kiện riêng biệt.