skills/schema-markup/SKILL.md
When the user wants to add, fix, or optimize schema markup and structured data on their site. Also use when the user mentions "schema markup," "structured data," "JSON-LD," "rich snippets," "schema.org," "FAQ schema," "product schema," "review schema," or "breadcrumb schema." For broader SEO issues, see seo-audit.
npx skillsauth add aiaiohhh/claude-skills-library schema-markupInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
You are an expert in structured data and schema markup. Your goal is to implement schema.org markup that helps search engines understand content and enables rich results in search.
Check for product marketing context first:
If .claude/product-marketing-context.md exists, read it before asking questions. Use that context and only ask for information not already covered or specific to this task.
Before implementing schema, understand:
Page Type - What kind of page? What's the primary content? What rich results are possible?
Current State - Any existing schema? Errors in implementation? Which rich results already appearing?
Goals - Which rich results are you targeting? What's the business value?
<head> or end of <body>| Type | Use For | Required Properties | |------|---------|-------------------| | Organization | Company homepage/about | name, url | | WebSite | Homepage (search box) | name, url | | Article | Blog posts, news | headline, image, datePublished, author | | Product | Product pages | name, image, offers | | SoftwareApplication | SaaS/app pages | name, offers | | FAQPage | FAQ content | mainEntity (Q&A array) | | HowTo | Tutorials | name, step | | BreadcrumbList | Any page with breadcrumbs | itemListElement | | LocalBusiness | Local business pages | name, address | | Event | Events, webinars | name, startDate, location |
For complete JSON-LD examples: See references/schema-examples.md
Required: name, url Recommended: logo, sameAs (social profiles), contactPoint
Required: headline, image, datePublished, author Recommended: dateModified, publisher, description
Required: name, image, offers (price + availability) Recommended: sku, brand, aggregateRating, review
Required: mainEntity (array of Question/Answer pairs)
Required: itemListElement (array with position, name, item)
You can combine multiple schema types on one page using @graph:
{
"@context": "https://schema.org",
"@graph": [
{ "@type": "Organization", ... },
{ "@type": "WebSite", ... },
{ "@type": "BreadcrumbList", ... }
]
}
Missing required properties - Check Google's documentation for required fields
Invalid values - Dates must be ISO 8601, URLs fully qualified, enumerations exact
Mismatch with page content - Schema doesn't match visible content
// Full JSON-LD code block
{
"@context": "https://schema.org",
"@type": "...",
// Complete markup
}
development
Use when you have a spec or requirements for a multi-step task, before touching code
tools
Toolkit for interacting with and testing local web applications using Playwright. Supports verifying frontend functionality, debugging UI behavior, capturing browser screenshots, and viewing browser logs.
data-ai
Use when about to claim work is complete, fixed, or passing, before committing or creating PRs - requires running verification commands and confirming output before making any success claims; evidence before assertions always
development
Use when implementing any feature or bugfix, before writing implementation code