How can event markup show when ticket sales begin?

The Citead team, updated

In short. Set offers.validFrom to the ticket sales start time, use the documented availability value, and link offers.url to the ticket purchase page.

Definition: In an event's Offer, offers.validFrom gives the date and time when tickets go on sale. offers.availability describes the ticket state, while offers.url identifies the page where a person can buy tickets.

Key facts

  • Google's Event structured data documentation describes offers.validFrom as the date and time when tickets go on sale, in ISO-8601 format.
  • Google lists InStock, SoldOut, and PreOrder as the supported offers.availability values for event tickets.
  • Google says that a ticket offer not yet on sale to the general public can omit availability and specify validFrom.
  • The offers.url value points to a page that provides the ability to buy tickets and must satisfy Google's landing-page and crawlability requirements.
  • Schema.org's Event definition says that ticketing information may be added through the offers property.

What does offers.validFrom represent?

Google's property documentation defines offers.validFrom as the date and time when tickets go on sale. It applies to date-restricted offers and uses ISO-8601 format. This is the sales start time, so it belongs inside the nested Offer, while the event's separate startDate describes when the event begins.

Google's example uses the following Offer fragment:

"offers": {
  "@type": "Offer",
  "url": "https://tickets.example/event",
  "availability": "https://schema.org/InStock",
  "validFrom": "YYYY-MM-DDThh:mm"
}

The same documentation's date and time guidance says to specify the timezone by including the UTC or GMT offset.

How should availability describe the tickets?

Google's availability guidance gives three values for event tickets. https://schema.org/InStock means tickets are in stock, https://schema.org/SoldOut means they are sold out, and https://schema.org/PreOrder means tickets are available for preorder. Schema.org's Offer definition also describes availabilityStarts as the beginning of availability for the product or service in an offer, but Google's Event documentation uses validFrom for the ticket sales start field.

If tickets are not yet on sale to the general public, Google says to omit availability and specify validFrom. Once a ticket state applies, use the corresponding value in the Offer object. If an event has several ticket types, Google's field definition describes offers as a nested Offer, one for each ticket type.

What should the ticket purchase URL contain?

Google's offers.url requirements say the URL must lead to a landing page that clearly and predominantly gives any member of the general public the opportunity to buy admission to that specific event. It must also be a link that a user could click from the event page and be crawlable by Googlebot, which means it must not be blocked by robots.txt.

The URL therefore belongs in the individual ticket Offer, alongside validFrom and availability when those fields apply. A missing or non-compliant offers.url is the documented cause when a site is not shown as an option for purchasing tickets in Google's event experience.

How can you check the markup?

Google's implementation steps say to add the required properties, follow the guidelines, validate the code with the Rich Results Test, and fix critical errors. After deployment, use URL Inspection to test how Google sees the page. The same documentation also says that the page must be accessible to Google and recommends a sitemap for future changes.

Schema.org describes an event as something happening at a certain time and location, and says repeated events may be structured as separate Event objects. Keep the ticket offer attached to the event object that represents the ticketed performance.

FAQ

Is validFrom the event start time?

No. Google's Event documentation defines validFrom as the time tickets go on sale. The event's startDate is the separate property for the event's start date and time.

Should an unreleased ticket offer include availability?

When the ticket is not yet on sale to the general public, Google says you can omit availability and specify validFrom. Use PreOrder when tickets are available for preorder.

Can offers.url point to a general event listing?

Google requires a landing page that provides the opportunity to buy a ticket for the specific event. It also requires the URL to be linked from the event page and crawlable by Googlebot.

Sources

  1. Google Search Central, "Event (Event) structured data", 8 September 2026
  2. Schema.org, "Event", accessed 17 October 2026
  3. Schema.org, "Offer", accessed 17 October 2026

Check how a page reads to answer engines. Open the GEO score analyzer

Test a page and see what to fix first

The analysis usually takes less than 10 seconds and needs no account.

400,000+ pages scored in the public benchmark