operatingSystem
operatingSystem · Recommended
Appears in
What is it?
operatingSystem tells search engines which platforms a software application runs on. This field accepts any text value describing the OS or platform, such as "Windows 10", "iOS", "Android", or "Web" for browser-based apps.
Why this matters for AEO
When a user asks "What are the best Android budgeting apps?", AI engines filter results by operatingSystem to return only apps that match the requested platform. An app without this field gets excluded from platform-specific answers, even if it runs on Android.
What the specs say
Schema.org: Text. Operating systems supported (Windows 7, OS X 10.6, Android 1.6). View on schema.org
Google: Recommended. "The operating system(s) required to use the app (for example, Windows 7, OSX 10.6, Android 1.6)." View on Google
How to find your value
- Web / browser-based —
"Web"or"All" - iOS app —
"iOS"or"iOS 16+" - Android app —
"ANDROID"or"Android 12+" - Windows desktop —
"Windows"or"Windows 10" - macOS desktop —
"macOS"or"macOS 13+" - Linux —
"Linux" - Cross-platform native —
"Windows, macOS, Linux" - Cross-platform mobile —
"iOS, Android"
Format and code
The value is a plain text string. For multiple operating systems, use a comma-separated string or provide an array.
Single platform:
{
"@context": "https://schema.org",
"@type": "SoftwareApplication",
"name": "Angry Birds",
"operatingSystem": "ANDROID",
"applicationCategory": "GameApplication"
}
Multiple platforms (comma-separated):
{
"@context": "https://schema.org",
"@type": "SoftwareApplication",
"name": "Slack",
"operatingSystem": "Windows, macOS, Linux, iOS, Android",
"applicationCategory": "CommunicationApplication"
}
Multiple platforms (array):
{
"@context": "https://schema.org",
"@type": "SoftwareApplication",
"name": "Figma",
"operatingSystem": ["Windows", "macOS", "Web"],
"applicationCategory": "DesignApplication"
}
Webflow implementation
Static pages
Add in Page Settings > Custom Code (Before </body> tag):
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "SoftwareApplication",
"name": "Notion",
"operatingSystem": "Windows, macOS, iOS, Android, Web",
"applicationCategory": "BusinessApplication",
"offers": {
"@type": "Offer",
"price": 0,
"priceCurrency": "USD"
}
}
</script>
CMS template pages
Create a "Platform" plain text field in your CMS collection. Reference it in your template's custom code block. Ensure CMS values use the same format shown in the lookup table above.
In Schema HQ
Schema pulls CMS platform field and outputs it as operatingSystem. For static pages, set the value directly in the Schema HQ editor.
Real examples
Angry Birds (from Google's official documentation):
{
"@context": "https://schema.org",
"@type": "SoftwareApplication",
"name": "Angry Birds",
"operatingSystem": "ANDROID",
"applicationCategory": "GameApplication",
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": 4.6,
"ratingCount": 8864
},
"offers": {
"@type": "Offer",
"price": 1.00,
"priceCurrency": "USD"
}
}
Cookie Creator (from darrenlester.com):
{
"@context": "http://schema.org",
"@type": "WebApplication",
"name": "Cookie Creator",
"url": "https://www.darrenscookies.com/cookie-creator",
"applicationCategory": "Game",
"softwareVersion": "1.0.0",
"operatingSystem": "All"
}
Related fields
- applicationCategory — Classifies the type of software
- downloadUrl — Where to get the app for this platform
- offers — Pricing and availability
- name — The app name
- softwareVersion — Current version number
- browserRequirements — browser compatibility requirements for web applications
FAQ
What value should I use for a web app?
Use "Web" or "All". Google's documentation does not prescribe a specific value for browser-based apps, but "Web" is the most common convention in production markup.
Can I list multiple operating systems?
Yes. Use a comma-separated string ("iOS, Android") or a JSON array (["iOS", "Android"]). Both formats are valid.
Should I include version numbers in the OS name?
Only if your app requires a minimum OS version. "iOS" is fine for broad compatibility. Use "iOS 16+" if your app requires iOS 16 or later.