potentialAction
potentialAction · Not mentioned by Google
Appears in
What is it?
potentialAction declares actions a user can take on a WebSite, most commonly a SearchAction that connects to the site's internal search. The markup specifies a URL template so machines can construct a working search link without scraping the page.
Google previously used potentialAction with SearchAction to power the Sitelinks Search Box rich result. Google deprecated that feature on November 21, 2024 and removed all associated documentation. The markup remains valid schema.org and will not trigger Search Console errors. Major brands including Apple and Yoast still deploy it as of 2026.
Why this matters for AEO
AI answer engines can read potentialAction to understand what a site's search covers and how to build a deep link into results. When a user asks "search Apple's site for MacBook cases," an AI system with access to the SearchAction template can generate a working URL rather than directing the user to the homepage. This utility persists regardless of Google's rich result deprecation.
What the specs say
Schema.org: Action. Indicates a potential Action, which describes an idealized action in which this thing would play an 'object' role. schema.org/potentialAction
Schema.org documentation adds: "A WebSite with potentialAction of type SearchAction can use a URL template with query-input parameters." schema.org/docs/actions.html
Google: Not mentioned. Google deprecated the Sitelinks Search Box feature on November 21, 2024 and removed all associated documentation. "The sitelinks search box feature is no longer available in Google Search results." Source
How to find your value
- Go to your site's search page
- Search for a test term (e.g., "test")
- Copy the resulting URL from the browser address bar
Replace the search term with
{search_term_string}Webflow —
https://yoursite.com/search?query={search_term_string}- WordPress —
https://yoursite.com/?s={search_term_string} - Shopify —
https://yoursite.com/search?q={search_term_string} - Custom —
https://yoursite.com/search?q={search_term_string}
If your site has no search functionality, skip this field entirely.
Format and code
potentialAction takes a SearchAction object with a target URL template and a query-input declaration. Two formats are widely used.
String target (simpler):
{
"@context": "https://schema.org",
"@type": "WebSite",
"name": "Apple",
"url": "https://www.apple.com/",
"potentialAction": {
"@type": "SearchAction",
"target": "https://www.apple.com/us/search/{search_term_string}",
"query-input": "required name=search_term_string"
}
}
EntryPoint target (more explicit):
{
"@context": "https://schema.org",
"@type": "WebSite",
"name": "Yoast",
"url": "https://yoast.com/",
"potentialAction": {
"@type": "SearchAction",
"target": {
"@type": "EntryPoint",
"urlTemplate": "https://yoast.com/?s={search_term_string}"
},
"query-input": "required name=search_term_string"
}
}
Both formats are valid. The placeholder must be {search_term_string} and the query-input value must reference the same name.
Invalid, mismatched placeholder:
{
"potentialAction": {
"@type": "SearchAction",
"target": "https://example.com/search?q={query}",
"query-input": "required name=search_term_string"
}
}
The placeholder in target must match the name in query-input. Using {query} while declaring search_term_string breaks the binding.
Webflow implementation
Static pages
WebSite schema with potentialAction belongs in site-wide code, not on individual pages. Add it in Site Settings > Custom Code > Head Code:
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "WebSite",
"name": "Your Site Name",
"url": "https://yoursite.com",
"potentialAction": {
"@type": "SearchAction",
"target": "https://yoursite.com/search?query={search_term_string}",
"query-input": "required name=search_term_string"
}
}
</script>
Verify your Webflow search URL pattern by testing a search on your live site first.
CMS template pages
WebSite schema with potentialAction should not go on CMS template pages. Place it in site-wide custom code so it loads once across the entire site. CMS templates are for page-level schema (Article, Product, Event), not site-level schema.
In Schema HQ
potentialAction supports with SearchAction on the WebSite schema block. Enter your search URL pattern and Schema HQ generates the correct SearchAction markup and publishes it site-wide through Webflow's custom code API.
Real examples
Apple (live from apple.com):
{
"@context": "http://schema.org",
"@id": "https://www.apple.com/#website",
"@type": "WebSite",
"url": "https://www.apple.com/",
"name": "Apple",
"potentialAction": {
"@type": "SearchAction",
"target": "https://www.apple.com/us/search/{search_term_string}?src=mc_google",
"query-input": "required name=search_term_string"
}
}
Apple uses the simpler string-based target format with a source tracking parameter.
Yoast (live from yoast.com):
{
"@type": "WebSite",
"@id": "https://yoast.com/#website",
"url": "https://yoast.com/",
"name": "Yoast",
"description": "SEO for everyone",
"potentialAction": [
{
"@type": "SearchAction",
"target": {
"@type": "EntryPoint",
"urlTemplate": "https://yoast.com/?s={search_term_string}"
},
"query-input": {
"@type": "PropertyValueSpecification",
"valueRequired": true,
"valueName": "search_term_string"
}
}
]
}
Yoast uses the more explicit EntryPoint with PropertyValueSpecification pattern and wraps potentialAction in an array.
Related fields
- url — the homepage URL that the SearchAction operates on
- name — the site name, typically included alongside potentialAction in WebSite schema
- description — site description, often paired with potentialAction in WebSite markup
- inLanguage — language of the site content, relevant when search results are language-specific
FAQ
Did Google remove Sitelinks Search Box support?
Yes. Google deprecated the Sitelinks Search Box rich result on November 21, 2024 and removed all documentation. The search box no longer appears in Google results. However, potentialAction with SearchAction remains valid schema.org markup and will not cause Search Console errors.
Should I still include potentialAction on my WebSite schema?
Keeping it does no harm and provides utility for AI engines and other structured data consumers that can parse SearchAction templates. Apple and Yoast still deploy this markup as of 2026. If your site has working search, including it is a low-effort addition to your WebSite schema block.
What is the difference between the string target and EntryPoint format?
The string format ("target": "https://.../{search_term_string}") is simpler and widely used. The EntryPoint format wraps the URL in a typed object and can include additional metadata through PropertyValueSpecification. Both produce the same functional result. Use whichever matches your existing markup style.