For Software as a Service (SaaS) companies, integrating schema markup into their product pages is crucial. This practice aids search engines in comprehending the content of their websites and the specifics of their SaaS offerings.
In the highly competitive SaaS sector, the use of schema markup distinguishes a website, enhancing its search engine ranking.
Moreover, schema markup ensures that a SaaS product is recognized in searches that are not brand-specific.
Schema markup is a critical component of structured data, helping search engines to grasp the meaning behind a website’s content.
What is Schema?
Schema markup, or structured data, is a format used by search engines to interpret a website’s content. It consists of microdata that, when embedded in a website, enables search engines to understand the content and type of business. These markups enhance the search engine results page (SERP) by providing rich snippets, leading to better website crawling and increased click-through rates (CTR).
Yahoo, Bing, and Google created Schema.org in 2011 to improve search results. Schema markup is still essential today, helping search engines discern the intent behind queries and generate more pertinent results.
Schema markup provides clarity to search engines about the content of an otherwise unstructured website.
SaaS Schema Properties
Here are some properties to consider for various relevant schema types:
- name
- url
- id
- browserRequirements
- sameAs
- applicationCategory
- sameAs
- applicationSuite
- permissions
- operatingSystem
- memoryRequirements
- releaseNotes
- copyrightHolder
SaaS Schema Samples
Schema types for SaaS (Software as a Service) companies are essentially structured data formats that help search engines understand and represent the content of their websites in search results.
These schema types are part of Schema.org vocabulary, which is a collaborative effort to create, maintain, and promote schemas for structured data. For SaaS companies, some relevant schema types include:
- Monthly subscription models
- Software Application
- Mobile Application
- copyrightHolder
Monthly Subscription Products
Subscription-based SaaS websites, while similar to other sites, require distinct schema markups to address their monthly subscription plans.
Below is a Schema example I’ve put together for SaaS companies that offer subscription-based product models.
There are fields you need to amend to make this schema specific to your product and not all show in the structured data testing tool – so please read through the schema and change fields were needed.
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "WebApplication",
"@id": "product_name",
"applicationCategory": "BusinessApplication",
"name": "Product name",
"operatingSystem": "all",
"browserRequirements": "Requires Javascript and HTML5 support",
"url": "https://your-website.com",
"screenshot": "Dashboard image URL",
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "Value",
"reviewCount": "Numbers"
},
"offers": {
"@type": "AggregateOffer",
"offeredBy": {
"@type": "Organization",
"name":"Business Name"
},
"highPrice": "Cost of yearly subscription",
"lowPrice": "Low Number or leave as 0 if free",
"offerCount": "How many on offer?",
"priceCurrency": "USD",
"priceSpecification": [
{
"@type": "UnitPriceSpecification",
"price": "Leave as 0.00 if free, or enter low number",
"priceCurrency": "USD",
"name": "Lowest package name"
},
{
"@type": "UnitPriceSpecification",
"price": "Big number - if you're subscription based, use the 12 month cost",
"priceCurrency": "USD",
"name": "Highest/Premium package name",
"referenceQuantity": {
"@type": "QuantitativeValue",
"value": "1",
"unitCode": "ANN"
}
},
{
"@type": "UnitPriceSpecification",
"price": "Price of monthly subscription",
"priceCurrency": "USD",
"name": "Subscription cost",
"referenceQuantity": {
"@type": "QuantitativeValue",
"value": "1",
"unitCode": "MON"
}
}
]
},
"creator": {
"@type":"Organization",
"@id":"#organization",
"url":"Homepage URL",
"name":"Business Name",
"logo":{
"@type":"ImageObject",
"url":"Logo image file",
"width":"specify-px",
"height":"specify-px"
}
}
}
</script>
SoftwareApplication Schema
The SoftwareApplication
schema is a structured format used to represent information about a software application. It’s typically used in contexts like web development, data management, or API design, where standardized and clear representation of data is crucial.
Important properties include:
name
: The name of the application.applicationCategory
: The type or category of the software (e.g., “Business”, “Productivity”).operatingSystem
: Supported operating systems (e.g., “Windows”, “macOS”, “Linux”).softwareVersion
: Current version of the application.offers
: Details about the pricing or purchasing options.aggregateRating
: The overall rating of the application based on user reviews.review
: Individual user reviews.
{
"softwareApplication": {
"type": "object",
"properties": {
"applicationID": {
"type": "string",
"description": "Unique identifier for the software application."
},
"name": {
"type": "string",
"description": "Name of the software application."
},
"version": {
"type": "string",
"description": "Current version of the application."
},
"releaseDate": {
"type": "string",
"format": "date",
"description": "The release date of the current version of the application."
},
"licenseType": {
"type": "string",
"description": "Type of license under which the application is distributed (e.g., proprietary, open-source)."
},
"supportedPlatforms": {
"type": "array",
"items": {
"type": "string"
},
"description": "List of platforms (e.g., Windows, MacOS, Linux) that the application supports."
},
"description": {
"type": "string",
"description": "A brief description of what the application does."
},
"developer": {
"type": "object",
"properties": {
"developerID": {
"type": "string",
"description": "Unique identifier for the developer."
},
"name": {
"type": "string",
"description": "Name of the developer or development team."
}
},
"description": "Information about the developer of the application."
},
"pricing": {
"type": "object",
"properties": {
"price": {
"type": "number",
"description": "Price of the application."
},
"currency": {
"type": "string",
"description": "Currency in which the price is denominated."
},
"subscriptionModel": {
"type": "boolean",
"description": "Indicates if the application follows a subscription model."
}
},
"description": "Pricing information for the application."
},
"supportContact": {
"type": "object",
"properties": {
"email": {
"type": "string",
"format": "email",
"description": "Support contact email."
},
"phone": {
"type": "string",
"description": "Support contact phone number."
}
},
"description": "Contact information for application support."
}
},
"required": ["applicationID", "name", "version", "developer"]
}
}
WebApplication Schema
The WebApplication schema, a subset of the SoftwareApplication schema, differs primarily in access methods: SoftwareApplication schema requires downloads and installations, while WebApplication schema is accessed via web browsers.
Examples of WebApplication products include Canva, Adobe Express, and MailChimp, whereas SoftwareApplication products include Final Cut Pro, Google Chrome, and Microsoft Word.
The WebApplication schema has a unique attribute, browserRequirements, differentiating cloud-based SaaS accessed through browsers from software installed on computers.
Using WebApplication Schema for SaaS Products: The WebApplication schema should be incorporated into multiple website URLs, ideally linked to the WebPage schema for marketing purposes.
Properties like url, name, genre, about, and browserRequirements are vital in directing search engines to the appropriate context and intention of the application.
{
"webApplication": {
"type": "object",
"properties": {
"applicationID": {
"type": "string",
"description": "Unique identifier for the web application."
},
"name": {
"type": "string",
"description": "Name of the web application."
},
"version": {
"type": "string",
"description": "Current version of the application."
},
"releaseDate": {
"type": "string",
"format": "date",
"description": "The release date of the current version."
},
"licenseType": {
"type": "string",
"description": "Type of license under which the web application is distributed (e.g., proprietary, open-source)."
},
"description": {
"type": "string",
"description": "A brief overview of what the web application does."
},
"url": {
"type": "string",
"format": "uri",
"description": "The URL where the web application can be accessed."
},
"hostingEnvironment": {
"type": "string",
"description": "Description of the hosting environment (e.g., cloud-based, on-premises)."
},
"developer": {
"type": "object",
"properties": {
"developerID": {
"type": "string",
"description": "Unique identifier for the developer or development team."
},
"name": {
"type": "string",
"description": "Name of the developer or development team."
}
},
"description": "Information about the developer of the web application."
},
"features": {
"type": "array",
"items": {
"type": "string"
},
"description": "List of key features of the web application."
},
"userGuides": {
"type": "array",
"items": {
"type": "string",
"format": "uri"
},
"description": "Links to user guides or documentation for the web application."
},
"supportContact": {
"type": "object",
"properties": {
"email": {
"type": "string",
"format": "email",
"description": "Support contact email for the application."
},
"phone": {
"type": "string",
"description": "Support contact phone number for the application."
}
},
"description": "Contact information for application support."
}
},
"required": ["applicationID", "name", "version", "url", "developer"]
}
}
Including copyrightHolder
The copyrightHolder
schema provided in the previous example serves as a structured template to represent and organize information related to entities (in this case, corporations) that hold copyrights.
{
"copyrightHolder": {
"type": "object",
"properties": {
"corporationName": {
"type": "string",
"description": "The name of the corporation holding the copyright."
},
"corporationId": {
"type": "string",
"description": "A unique identifier for the corporation."
},
"contactInformation": {
"type": "object",
"properties": {
"address": {
"type": "string",
"description": "The postal address of the corporation."
},
"email": {
"type": "string",
"format": "email",
"description": "The email address for contacting the corporation."
},
"phone": {
"type": "string",
"description": "The phone number for contacting the corporation."
}
},
"required": ["address", "email"]
},
"copyrightDetails": {
"type": "array",
"items": {
"type": "object",
"properties": {
"title": {
"type": "string",
"description": "Title of the copyrighted work."
},
"registrationNumber": {
"type": "string",
"description": "The registration number of the copyright."
},
"registrationDate": {
"type": "string",
"format": "date",
"description": "The date when the copyright was registered."
},
"expiryDate": {
"type": "string",
"format": "date",
"description": "The date when the copyright expires."
}
},
"required": ["title", "registrationNumber", "registrationDate"]
}
}
},
"required": ["corporationName", "corporationId", "contactInformation", "copyrightDetails"]
}
}
Other Schema Considerations For SaaS Organizations
Some other schema types that are valid for SaaS companies, for sitewide and for individual pages:
Organization
This schema helps to provide information about the company itself, including its name, logo, contact information, and social media profiles.
name
: The name of the company.logo
: URL of the company logo.url
: Website URL.contactPoint
: Contact details, including phone number and email.socialMedia
: Links to social media profiles.
Product/Service
Even though SaaS offerings are services, they can often be represented as products. This schema can include details about pricing, features, and user reviews.
Service schema, this schema can detail the various services offered by the SaaS company, including subscriptions.
name
: Name of the product or service.description
: A detailed description.brand
: Associated brand or company name.offers
: Pricing and purchasing options.aggregateRating
: Overall user ratings.review
: Individual user reviews.
Article/Blog Posting
For content marketing efforts, these schemas help in structuring articles and blog posts, including authorship, publish date, and content body.
headline
: Title of the article or post.author
: Author of the content.datePublished
: Publication date.image
: Relevant image or visual.