"SearchAction" schema

Last updated 17 June 2026 2 min

SearchAction declares that a website has its own internal search functionality and describes how to invoke it. Historically, it was paired with WebSite schema as the potentialAction to enable Google's Sitelinks Search Box — the search field that sometimes appeared inside branded SERP results.

Note: Google no longer supports Sitelinks Search Box

In November 2024, Google retired the Sitelinks Search Box feature entirely, citing declining usage. The feature no longer appears in Google's rich results when the SearchAction schema is implemented.

Despite the fact that the Sitelinks Search Box (the SERP visual element) is gone, SearchAction markup itself still has value:

  • Entity graph / GEO signal – Sites that ship valid Organization + WebSite (with the SearchAction object) may help reinforce the brand entity on branded queries — the entity-graph signal that disambiguates the brand from same-name competitors and reinforces the canonical site URL. The schema is being read by LLMs and AI engines even if Google no longer renders the visual search box in results.
  • What engines actually parse it now – The WebSite + SearchAction pattern tells search engines (and by extension LLMs) that the site has built-in search functionality — improving how the site is represented as a whole entity in search results.
  • No penalty for keeping it – Despite being deprecated, Google has confirmed that leaving unsupported markup will not result in any penalty. Its use may be gone for Google, but it is not considered a negative in any way.

Why it's still worth adding

  • The markup may still be parsed by other search engines, AI agents, or third-party tools
  • It declares a clear, machine-readable search endpoint that LLM-based assistants can theoretically use to query your site
  • Implementing SearchAction is a very low-effort task

Key properties

  • target – an EntryPoint describing the search URL pattern, with urlTemplate containing a {search_term_string} placeholder
  • query-input – describes the input parameter, e.g. "required name=search_term_string"

Example (legacy WebSite + SearchAction)

{
  "@context": "https://schema.org",
  "@type": "WebSite",
  "url": "https://example.com.au/",
  "name": "Example",
  "potentialAction": {
    "@type": "SearchAction",
    "target": {
      "@type": "EntryPoint",
      "urlTemplate": "https://example.com.au/search?q={search_term_string}"
    },
    "query-input": "required name=search_term_string"
  }
}

In summary

Though SearchAction is now a deprecated-in-practice schema type, it costs nothing to keep if it's already implemented, and only takes about 15 minutes to add to most CMS platforms for the small benefits it offers for other engines.

Disclaimer: All information contained herein is for informational purposes only. It is not advice or instructional.