Hướng dẫn về Event Schema

Cách implement schema.org/Event markup cho Google event rich kết quả — bắt buộc properties (name, startDate, location), vì sao virtual-chỉ events không eligible, đó four eventStatus các giá trị, và đó một-event-một-URL rule.

Xuất bản lần đầu: 1 thg 7, 2026 · Cập nhật lần cuối: 8 thg 8, 2026 · Advanced
Ngôn ngữ
1 tín hiệu bằng chứng trên trang này

Event schema (schema.org/Event) là dữ liệu có cấu trúc — thường JSON-LD — đó tells các công cụ tìm kiếm an tên sự kiện, date, location, và ticketing details so an individual trang sự kiện có thể qualify cho Google event rich kết quả. Google requires chính xác three properties: name, startDate, và location. Đó single biggest myth để bust: as of Google hiện tại (December 2025) tài liệu, virtual-chỉ events không eligible cho đó event rich kết quả — 'Virtual experiences đó có không thực tế component không supported. Events phải take place trong một physical location.' Đó contradicts một lot of vẫn-circulating 2020 pandemic-era advice đó xử lý eventAttendanceMode=OnlineEventAttendanceMode và VirtualLocation as sufficient on của họ own; những properties là vẫn hợp lệ schema.org nhưng không unlock đó rich kết quả cho an online-chỉ event. Other load-bearing rules: mỗi event cần của nó own unique leaf-trang URL (listing các trang không qualify), bạn phải không bao giờ strip startDate hoặc location khi updating eventStatus (EventScheduled, EventCancelled, EventPostponed, EventRescheduled), và marking lên sales, coupons, hoặc non-events có trong lịch sử triggered manual actions. Hợp lệ markup chỉ làm bạn eligible; Google vẫn decides liệu để cho thấy điều này.

TL;DR — schema.org/Event markup (thường JSON-LD) on an individual event trang có thể làm điều này eligible cho Google event rich kết quả. Google requires three properties: name, startDate, location. Đó load-bearing fact of này toàn bộ topic: theo Google hiện tại (Dec 2025) tài liệu, virtual-chỉ events không supported — “Events must take place in a physical location.” (bản dịch) «Events phải take place trong một physical location.» eventAttendanceModeVirtualLocation là hợp lệ schema.org (đã thêm trong đó 2020 COVID era) nhưng không unlock đó rich kết quả cho an online-chỉ event. Other rules mọi người miss: một event = một unique leaf URL (listing các trang không qualify); khi bạn thay đổi eventStatus (EventScheduled / EventCancelled / EventPostponed / EventRescheduled) bạn phải không bao giờ strip startDate hoặc location; multi-day là một Event, multiple ticketed performances là tách biệt Events; và marking lên sales, coupons, hoặc non-events là so với policy và có drawn manual actions. Hợp lệ markup chỉ earns eligibility.

Điều gì Event schema làm — và Điều gì nó không

Event schema là schema.org/Event vocabulary bạn put on event trang so tìm kiếm engines có thể đọc tên sự kiện, timing, location, và ticketing. On Google, correctly implemented markup on individual event trang làm nó eligible cho event rich kết quả — enhanced listing và dedicated event-tìm kiếm experience Google chạy cho event-related các truy vấn.

Điều gì nó không làm: nó không phải xếp hạng factor, và nó không phải magic switch. Như mỗi kind của dữ liệu có cấu trúc, nó làm trang eligible cho cụ thể tìm kiếm feature — nó không lift của bạn organic positions và nó không bảo đảm feature hiển thị. Evidence for this claim Google's event feature excludes promotional non-events and requires each event to have a unique page focused on that event. Scope: Google Search Event content guidelines; valid Schema.org markup alone does not establish eligibility. Confidence: high · Verified: Google: Event structured data

Bắt buộc properties: name, startDate, location

Google là rõ ràng đó bạn phải bao gồm đó bắt buộc properties: “You must include the required properties for your content to be eligible for display in enhanced search results.” (bản dịch) «Bạn phải bao gồm đó bắt buộc properties cho nội dung của bạn để là eligible cho display trong enhanced kết quả tìm kiếm.» Cho Event, đó là three:

  • name (Text) — đó đầy đủ tiêu đề of đó event. Google rule là cụ thể: không dùng đó name of đó venue as đó tên sự kiện (đó là điều gì location.name là cho), không dùng đó loại of event (“Concert” không phải một descriptive name), và không stuff điều này với URLs, prices, performers, hoặc “short-term promotions (for example, ‘buy your tickets now’).” (bản dịch) «ngắn-term promotions (ví dụ, ‘buy của bạn tickets hiện tại’).» Google own trước/sau: không “Bill Graham Civic Auditorium” (bản dịch) «Bill Graham Civic Auditorium» và không “LIMITED TIME SALE - Kesha and Macklemore Concert - $25” (bản dịch) «LIMITED TIME SALE - Kesha và Macklemore Concert - $25 USD», nhưng “The Adventures of Kesha and Macklemore” (bản dịch) «Đó Adventures of Kesha và Macklemore» hoặc “Meet and Greet: Kesha and Macklemore.” (bản dịch) «Đáp ứng và Greet: Kesha và Macklemore.»
  • startDate (DateTime) — “The start date and start time of the event in ISO-8601 format. Add both the date and time so users can find events that fit into their schedule.” (bản dịch) «Đó bắt đầu date và bắt đầu time of đó event trong ISO-8601 format. Thêm cả hai đó date và time so người dùng có thể tìm events đó fit vào của họ schedule.»
  • location (Place) — set @type để Place và thêm location.namelocation.address. Google steer on đó address: là cụ thể — không chỉ “Sydney” nhưng “Bennelong Point, Sydney NSW 2000, Australia.” (bản dịch) «Bennelong Point, Sydney NSW 2000, Australia.» Và của nó best-practice notes cho tricky cases: “If the event happens across several streets, define the starting location and mention the full details in description. If the event happens without a well-defined location, use the city name or the most representative location. If the event happens at multiple locations at the same time, create different events for each location.” (bản dịch) «Nếu đó event happens across several streets, define đó starting location và mention đó đầy đủ details trong mô tả. Nếu đó event happens không có một well-được định nghĩa location, dùng đó city name hoặc đó hầu hết representative location. Nếu đó event happens tại multiple locations đồng thời, tạo khác nhau events cho mỗi location.»

Được khuyến nghị properties đó improve kết quả

Beyond bắt buộc three, những điều này làm listing fuller và là worth thêm:

  • endDate — giống nhau ISO-8601 format as startDate.
  • eventStatus — đó scheduled/canceled/postponed/rescheduled state (see đó dedicated section dưới).
  • image — Google chung image hướng dẫn áp dụng; cung cấp multiple images tại 1x1, 4x3, và 16x9 aspect ratios.
  • offers (an Offer) — url, price, priceCurrency, availability (e.g. InStock, SoldOut, PreOrder), và validFrom cho khi tickets go on sale.
  • performer (Person / PerformingGroup) và organizer (Organization / Person, với nameurl).
  • description — Google hướng dẫn: “Focus on the event details and not your site’s features. Don’t repeat other facts like date and location; instead, add that information to the respective properties.” (bản dịch) «Focus on đó chi tiết sự kiện và không trang web của bạn features. không repeat other facts như date và location; thay vì, thêm đó information để đó respective properties.» Note điều này chỉ cho thấy một snippet.

Virtual và hybrid events: Điều gì Google hiện tại tài liệu thực ra chẳng hạn

Đây là section đó separates hiện tại hướng dẫn từ recycled 2020 advice vẫn all over web, so đọc nó cẩn thận.

Google hiện tại tài liệu trạng thái, verbatim: “Virtual experiences that have no real-world component aren’t supported. Events must take place in a physical location.” (bản dịch) «Virtual experiences đó có không thực tế component không supported. Events phải take place trong một physical location.» Đó có nghĩa là một purely virtual, online-chỉ event có không path vào Google event rich kết quả — regardless of cách bạn mark điều này lên.

Evidence for this claim Google's current Event rich-result documentation says purely virtual events without a real-world component are not supported. Scope: Google Search Event rich-result requirements; Schema.org still defines online-attendance and VirtualLocation vocabulary. Confidence: high · Verified: Google: Event structured data

Ở đây nuance đó trips mọi người lên. Back trong March 2020, tại bắt đầu của pandemic, Google announced new Event properties so publishers có thể communicate đó events có moved online hoặc là canceled: eventAttendanceMode (với OnlineEventAttendanceMode / OfflineEventAttendanceMode / MixedEventAttendanceMode các giá trị), eventStatus các giá trị, và hỗ trợ cho VirtualLocation. những điều đó properties là vẫn hợp lệ schema.org vocabulary — không ai đã xóa them. nhưng hiện tại Tìm kiếm Central Event doc không lâu hơn documents online-event ví dụ và trạng thái outright đó virtual-chỉ events không phải supported cho rich kết quả.

So honest, hiện tại position:

  • ** physical location là anchor.** Virtual và hybrid events có khả năng vẫn cần thực-world location component để qualify cho event experience — vì Google requires đó physical location.
  • eventAttendanceModeVirtualLocation không phải useless — họ’re legitimate markup cho hybrid event đó làm có thực venue, và họ’re hữu ích cho khác consumers của dữ liệu (của bạn own các hệ thống, khác các công cụ tìm kiếm, và AI/LLM understanding). họ chỉ không, by themselves, nhận online-chỉ event vào Google rich kết quả.
  • nếu bạn chạy webinars hoặc online-chỉ events, không expect event rich kết quả. sử dụng markup cho machine-readability nếu bạn như, nhưng plan của bạn visibility khoảng rest của bạn SEO, không event experience.

I muốn để là precise ở đây thay vì sensational: này là không “virtual events are banned.” (bản dịch) «virtual events là banned.» đây là đó một virtual event với không thực tế component không eligible cho đó cụ thể event rich kết quả. Hầu hết of đó competing nội dung on này topic vẫn xử lý OnlineEventAttendanceMode as một trực tiếp Google feature đó nhận an online event vào đó rich kết quả on của nó own. Straight từ Google hiện tại tài liệu, đó là không cách nó hoạt động.

Evidence for this claim Google's current Event rich-result documentation says purely virtual events without a real-world component are not supported. Scope: web Confidence: high · Verified: Event structured data

Xử lý event status: EventScheduled, EventCancelled, EventPostponed, EventRescheduled

eventStatus takes một of four các giá trị, và có một rule đó dwarfs đó rest: không bao giờ xóa startDate hoặc location khi đó status thay đổi. Google warns: “When the event status changes, DON’T remove the startDate. The startDate property is required to help identify the unique event.” (bản dịch) «Khi đó event status thay đổi, không xóa đó startDate. Đó startDate property là bắt buộc để help identify đó unique event.»

nếu bạn không đặt eventStatus tại all, Google xử lý event as EventScheduled ( thông thường, going-ahead state). khác three:

  • EventCancelled — đó event sẽ không happen. Google: “Don’t remove or change other properties (for example, don’t remove startDate or location); instead, keep all values as the same as they were before the cancelation, and update the eventStatus to EventCancelled. Why? Properties like startDate and location help identify the unique event and make sure people understand the new status of the event.” (bản dịch) «không xóa hoặc thay đổi other properties (ví dụ, không xóa startDate hoặc location); thay vì, giữ all các giá trị as đó giống nhau as they đã là trước đó cancelation, và cập nhật đó eventStatus để EventCancelled. Vì sao? Properties như startDatelocation help identify đó unique event và hãy bảo đảm mọi người understand đó new status of đó event.»
  • EventPostponed — điều này sẽ happen, nhưng đó new date không known tuy vậy. Google: “The event has been postponed to a later date, but the date isn’t known yet. Keep the original date in the startDate of the event until you know when the event will take place. Once you know the new date information, change the eventStatus to EventRescheduled and update the startDate and endDate with the new date information.” (bản dịch) «Đó event đã được postponed để một sau đó date, nhưng đó date không known tuy vậy. Giữ đó original date trong đó startDate of đó event until bạn know khi đó event sẽ take place. Khi bạn know đó new date information, thay đổi đó eventStatus để EventRescheduled và cập nhật đó startDateendDate với đó new date information.»
  • EventRescheduled — một new date là confirmed. Google: “The event has been rescheduled to a later date. Update the startDate and endDate with the relevant new dates. Optionally, you can also mark the eventStatus field as rescheduled and add the previousStartDate.” (bản dịch) «Đó event đã được rescheduled để một sau đó date. Cập nhật đó startDateendDate với đó relevant new dates. Tùy chọn, bạn có thể cũng mark đó eventStatus trường as rescheduled và thêm đó previousStartDate

phân biệt mọi người phần lớn thường blur: EventPostponedEventCancelledkhông interchangeable. Cancelled có nghĩ là nó off; postponed có nghĩ là nó happening sau đó on date bạn không know tuy vậy — và bạn nên upgrade postponed để rescheduled (với previousStartDate) sau khi bạn làm know.

Một event, một URL — Vì sao listing các trang không qualify

Google là unambiguous: “Each event MUST have a unique URL (a leaf page) and markup on that URL,” (bản dịch) «Mỗi event PHẢI có một unique URL (một leaf trang) và markup on đó URL,»“The event experience on Google only supports pages that focus on a single event. We recommend focusing on adding markup to your event posting pages instead of pages that list schedules or multiple events.” (bản dịch) «Đó event experience on Google chỉ hỗ trợ các trang đó focus on một single event. We khuyến nghị focusing on thêm markup để của bạn event posting các trang thay vì các trang đó list schedules hoặc multiple events.»

Evidence for this claim Google's event feature excludes promotional non-events and requires each event to have a unique page focused on that event. Scope: web Confidence: high · Verified: Event structured data

Này là một of đó hầu hết phổ biến implementation mistakes cho venues và ticketing các nền tảng — marking lên một calendar hoặc “upcoming events” (bản dịch) «upcoming events» listing trang và expecting một rich kết quả cho mỗi event on điều này. Đó trang không qualify. Mỗi event cần của nó own dedicated trang với của nó own markup.

Multi-day events so với. multiple performances

những điều này là handled differently, và nó trips lên lot của implementations:

  • MỘT single event đó spans several daysmột Event với đó startDateendDate covering đó range. Google: “If your event or ticket info is for an event that runs over several days, specify both the start and end dates of the event.” (bản dịch) «Nếu của bạn event hoặc ticket info là cho an event đó chạy over several days, specify cả hai đó bắt đầu và end dates of đó event.»
  • Multiple distinct ticketed performances across days → một tách biệt Event cho mỗi. Google: “If there are several different performances across different days, each with individual tickets, add a separate Event element for each performance.” (bản dịch) «Nếu có several khác nhau performances across khác nhau days, mỗi với individual tickets, thêm một tách biệt Event element cho mỗi performance.»

Cho genuinely recurring series, schema.org có EventSerieseventSchedule properties. họ là hợp lệ markup — nhưng I’d treat them as “valid schema.org, unconfirmed rich-result impact” (bản dịch) «hợp lệ schema.org, unconfirmed rich-kết quả impact» thay vì một guaranteed path để đó event experience. Khi trong doubt, follow Google được ghi lại pattern: một Event theo performance.

nội dung policies — Điều gì nhận events disapproved (và manually actioned)

Event markup có một real spam-enforcement history, so này không hypothetical. Google requires đó “Each event must accurately describe the event name, start date, and location,” (bản dịch) «Mỗi event phải accurately mô tả đó tên sự kiện, bắt đầu date, và location,» và điều này spells out điều gì không để mark lên as an event:

  • Non-events. Google: *“Don’t promote non-event products or services such as ‘Trip package: San Diego/LA, 7 nights’ as events. Don’t add short-term discounts or purchase opportunities, such as: ‘Concert — buy your tickets now,’ or ‘Concert
    • 50% off until Saturday.’ Don’t mark business hours as events, such as: ‘Adventure park open 8 AM to 5PM.’ Don’t mark coupons or vouchers as events, such as: ‘5% off your first order.’” (bản dịch) «không promote non-event các sản phẩm hoặc services such as ‘Trip package: San Diego/LA, 7 nights’ as events. không thêm ngắn-term discounts hoặc purchase opportunities, such as: ‘Concert — buy của bạn tickets hiện tại,’ hoặc ‘Concert - 50% off until Saturday.’ không mark business hours as events, such as: ‘Adventure park open 8 AM để 5PM.’ không mark coupons hoặc vouchers as events, such as: ‘5% off của bạn đầu tiên order.’»*
  • Membership/invitation-chỉ events. Google: “Events must be bookable to the general public. Events that require a membership, or invitation prior to purchasing the ticket or attending the event are ineligible for the event experience.” (bản dịch) «Events phải được bookable để đó chung công khai. Events đó require một membership, hoặc invitation prior để purchasing đó ticket hoặc attending đó event là ineligible cho đó event experience.»
  • School/minors on-premise events. Google: “Spectator events where the primary participants and audience are minors and occur on-premise of a school aren’t eligible for the event experience.” (bản dịch) «Spectator events nơi đó chính participants và audience là minors và occur on-premise of một school không eligible cho đó event experience.»

Và có teeth behind này. Google: “If your site violates one or more of these guidelines, then Google may take manual action against it. Once you have remedied the problem, you can submit your site for reconsideration.” (bản dịch) «Nếu trang web của bạn violates một hoặc hơn of những guidelines, thì Google có thể take manual hành động so với điều này. Khi bạn có remedied đó vấn đề, bạn có thể submit trang web của bạn cho reconsideration.» Này không theoretical — Google đã là reported để có issued manual actions so với các trang dùng Event markup để promote sales và coupons thay vì genuine events, mà là chính xác đó “don’t add short-term discounts” (bản dịch) «không thêm ngắn-term discounts» và “don’t mark coupons as events” (bản dịch) «không mark coupons as events» hướng dẫn trên. (I’d verify đó specifics so với một chính nguồn trước treating bất kỳ particular case as canonical — đó enforcement pattern là well established regardless.)

Date và time formatting

sử dụng ISO-8601, và bao gồm timezone offset. Google hướng dẫn: specify timezone by including UTC/GMT offset — event tại 7pm on September 5 trong New York nên carry -04:00 hoặc -05:00 offset. cho genuinely day-dài event nơi hour là unknown hoặc irrelevant, sử dụng date chỉ (không time). và không fake midnight bắt đầu: giá trị như 2019-08-15T00:00:00+00:00 cho event whose bắt đầu time bạn không thực ra know đọc để Google as theo nghĩa đen midnight, mà là gần như certainly sai.

Event subtypes: base Event so với. MusicEvent, BusinessEvent, etc.

schema.org có subtypes — MusicEvent, BusinessEvent, EducationEvent, SportsEvent, và hơn. Bạn không có để dùng them: đó base Event loại là hợp lệ và sufficient, và Google được ghi lại bắt buộc/được khuyến nghị properties apply cùng cách regardless. Subtypes thêm hơn cụ thể semantic tagging nếu bạn muốn điều này, nhưng “you must use MusicEvent(bản dịch) «bạn phải dùng MusicEvent» là một myth — base Event là fine.

Bing và Event schema

Bing không publish Event-cụ thể structured-dữ liệu help trang way Google làm. Của nó chung reference — Marking Lên của bạn trang web với Structured Dữ liệu — xác nhận Bing hỗ trợ schema.org vocabulary broadly (along với Microdata, RDFa, và Open Graph), không có Event-cụ thể bắt buộc/được khuyến nghị property lists. I’m không going để invent Bing Event hỗ trợ đó không có tài liệu trang behind nó. honest framing: Bing rewards well-formed schema.org markup generally và sẽ không punish bạn cho including Event schema, nhưng nó có không tương đương của Google dedicated event rich-kết quả/tìm kiếm experience. So chính motivation cho Event markup vẫn Google — plus chung machine-readability cho AI/LLM consumption.

Validating và khắc phục sự cố

Validate markup với Google Rich Kết quả Kiểm thử, và monitor Events báo cáo và enhancements trong Search Console. note on regional availability: Google event tìm kiếm experience là khả dụng trong cụ thể đặt của countries/languages, và đó list thay đổi — verify hiện tại availability trực tiếp on tài liệu củ Google trang tại time bạn implement, thay vì trusting stale list.

nơi điều này sits

Event schema là một của Social & Community schema types trong rộng hơn structured-dữ liệu picture, alongside markup như DiscussionForumPosting, FAQPage, HowTo, QAPage, và SoftwareApplication. cho vocabulary as toàn bộ và Cách những điều này pieces fit together, see rộng hơn Schema MarkupDữ liệu có cấu trúc hubs điều này bài viết nests dưới.

Add an expert note

Pin an expert quote

New person? Create their unclaimed profile at /admin/experts/ → Pin a quote first.