Schema Markup Generator
SEO & GEO Skills Library · 20 skills for SEO + GEO · ClawHub · skills.sh
System Mode: This build skill follows the shared Skill Contract and State Model.
This skill creates Schema.org structured data markup in JSON-LD format to help search engines understand your content and enable rich results in SERPs.
System role: Build layer skill. It turns briefs and signals into assets that other skills can review, publish, and monitor.
When This Must Trigger
Use this when the conversation involves any of these situations — even if the user does not use SEO terminology:
Use this whenever the task needs a shippable asset or transformation that should feed directly into quality review, deployment, or monitoring.
- Adding FAQ schema for expanded SERP presence
- Creating How-To schema for step-by-step content
- Adding Product schema for e-commerce pages
- Implementing Article schema for blog posts
- Adding Local Business schema for location pages
- Creating Review/Rating schema
- Implementing Organization schema for brand presence
- Any page where rich results would improve visibility
What This Skill Does
- Schema Type Selection: Recommends appropriate schema types
- JSON-LD Generation: Creates valid structured data markup
- Property Mapping: Maps your content to schema properties
- Validation Guidance: Ensures schema meets requirements
- Nested Schema: Handles complex, multi-type schemas
- Rich Result Eligibility: Identifies which rich results you can target
Quick Start
Start with one of these prompts. Finish with a short handoff summary using the repository format in Skill Contract.
Generate Schema for Content
Generate schema markup for this [content type]: [content/URL]
Create FAQ schema for these questions and answers: [Q&A list]
Specific Schema Types
Create Product schema for [product name] with [details]
Generate LocalBusiness schema for [business name and details]
Audit Existing Schema
Review and improve this schema markup: [existing schema]
Skill Contract
Expected output: a ready-to-use asset or implementation-ready transformation plus a short handoff summary ready for memory/content/.
- Reads: the brief, target keywords, entity inputs, quality constraints, and prior decisions from CLAUDE.md and the shared State Model when available.
- Writes: a user-facing content, metadata, or schema deliverable plus a reusable summary that can be stored under
memory/content/.
- Promotes: approved angles, messaging choices, missing evidence, and publish blockers to
CLAUDE.md, memory/decisions.md, and memory/open-loops.md.
- Next handoff: use the
Next Best Skill below when the asset is ready for review or deployment.
Data Sources
See CONNECTORS.md for tool category placeholders.
With ~~web crawler connected:
Automatically crawl and extract page content (visible text, headings, lists, tables), existing schema markup, page metadata, and structured content elements that map to schema properties.
With manual data only:
Ask the user to provide:
- Page URL or full HTML content
- Page type (article, product, FAQ, how-to, local business, etc.)
- Specific data needed for schema (prices, dates, author info, Q&A pairs, etc.)
- Current schema markup (if optimizing existing)
Proceed with the full workflow using provided data. Note in the output which data is from automated extraction vs. user-provided data.
Instructions
When a user requests schema markup:
Identify Content Type and Rich Result Opportunity
Reference the CORE-EEAT Benchmark item O05 (Schema Markup) for content-type to schema mapping:
### CORE-EEAT Schema Mapping (O05)
| Content Type | Required Schema | Conditional Schema |
|-------------|----------------|--------------------|
| Blog (guides) | Article, Breadcrumb | FAQ, HowTo |
| Blog (tools) | Article, Breadcrumb | FAQ, Review |
| Blog (insights) | Article, Breadcrumb | FAQ |
| Alternative | Comparison*, Breadcrumb, FAQ | AggregateRating |
| Best-of | ItemList, Breadcrumb, FAQ | AggregateRating per tool |
| Use-case | WebPage, Breadcrumb, FAQ | — |
| FAQ | FAQPage, Breadcrumb | — |
| Landing | SoftwareApplication, Breadcrumb, FAQ | WebPage |
| Testimonial | Review, Breadcrumb | FAQ, Person |
*Use the mapping above to ensure schema type matches content type (CORE-EEAT O05: Pass criteria).*
### Schema Analysis
**Content Type**: [blog/product/FAQ/how-to/local business/etc.]
**Page URL**: [URL]
**Eligible Rich Results**:
| Rich Result Type | Eligibility | Impact |
|------------------|-------------|--------|
| FAQ | ✅/❌ | High - Expands SERP presence |
| How-To | ✅/❌ | Medium - Shows steps in SERP |
| Product | ✅/❌ | High - Shows price, availability |
| Review | ✅/❌ | High - Shows star ratings |
| Article | ✅/❌ | Medium - Shows publish date, author |
| Breadcrumb | ✅/❌ | Medium - Shows navigation path |
| Video | ✅/❌ | High - Shows video thumbnail |
**Recommended Schema Types**:
1. [Primary schema type] - [reason]
2. [Secondary schema type] - [reason]
Generate Schema Markup
Based on the identified content type, generate the appropriate JSON-LD schema. Supported types: FAQPage, HowTo, Article/BlogPosting/NewsArticle, Product, LocalBusiness, Organization, BreadcrumbList, Event, Recipe, and combined multi-type schemas.
Reference: See references/schema-templates.md for complete, copy-ready JSON-LD templates for all schema types with required and optional properties.
For each schema generated, include:
- All required properties for the chosen type
- Rich result preview showing expected SERP appearance
- Notes on which properties are required vs. optional
When combining multiple schema types on one page, wrap them in a JSON array inside a single <script type="application/ld+json"> tag.
Provide Implementation and Validation
## Implementation Guide
### Adding Schema to Your Page
**Option 1: In HTML <head>**
```html
<head>
<script type="application/ld+json">
[Your JSON-LD schema here]
</script>
</head>
Option 2: Before closing
<script type="application/ld+json">
[Your JSON-LD schema here]
</script>
</body>
Validation Steps
~~schema validator
- Test your live URL or paste code
- Check for errors and warnings
Schema.org Validator
~~search console
- Monitor rich results in ~~search console
- Check Enhancements reports for issues
Validation Checklist
Validation Checkpoints
Input Validation
Output Validation
Example
User: "Generate FAQ schema for a page about SEO with 3 questions"
Output:
## FAQ Schema for SEO Page
### Schema Markup
```json
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "What is SEO?",
"acceptedAnswer": {
"@type": "Answer",
"text": "SEO (Search Engine Optimization) is the practice of optimizing websites and content to rank higher in search engine results pages (SERPs). It involves technical optimizations, content creation, and link building to increase organic visibility and drive qualified traffic to your website."
}
},
{
"@type": "Question",
"name": "How long does SEO take to work?",
"acceptedAnswer": {
"@type": "Answer",
"text": "SEO typically takes 3-6 months to show significant results, though this varies based on competition, domain authority, and effort invested. New websites may take 6-12 months, while established sites with existing authority can see improvements in 1-3 months for less competitive keywords."
}
},
{
"@type": "Question",
"name": "Is SEO better than paid advertising?",
"acceptedAnswer": {
"@type": "Answer",
"text": "SEO and paid advertising serve different purposes. SEO provides sustainable, long-term traffic without per-click costs but takes time to build. Paid advertising delivers immediate results but stops when you stop paying. Most successful businesses use both: paid ads for immediate leads and SEO for long-term growth."
}
}
]
}
Implementation: Wrap the above JSON-LD in <script type="application/ld+json">...</script> and place in <head> or before </body>. Test with ~~schema validator.
SERP Preview
SEO Guide: Complete Beginner's Tutorial
yoursite.com/seo-guide/
Learn SEO from scratch with our comprehensive guide...
▼ What is SEO?
SEO (Search Engine Optimization) is the practice of optimizing...
▼ How long does SEO take to work?
SEO typically takes 3-6 months to show significant results...
▼ Is SEO better than paid advertising?
SEO and paid advertising serve different purposes...
## Schema Type Quick Reference
| Content Type | Schema Type | Key Properties |
|--------------|-------------|----------------|
| Blog Post | BlogPosting/Article | headline, datePublished, author |
| Product | Product | name, price, availability |
| FAQ | FAQPage | Question, Answer |
| How-To | HowTo | step, totalTime |
| Local Business | LocalBusiness | address, geo, openingHours |
| Recipe | Recipe | ingredients, cookTime |
| Event | Event | startDate, location |
| Video | VideoObject | uploadDate, duration |
| Course | Course | provider, name |
| Review | Review | itemReviewed, ratingValue |
## Tips for Success
1. **Match visible content** - Schema must reflect what users see
2. **Don't spam** - Only add schema for relevant content
3. **Keep updated** - Update dates and prices when they change
4. **Test thoroughly** - Validate before deploying
5. **Monitor Search Console** - Watch for errors and warnings
## Schema Type Decision Tree
> **Reference**: See [references/schema-decision-tree.md](https://github.com/aaron-he-zhu/seo-geo-claude-skills/blob/main/build/schema-markup-generator/references/schema-decision-tree.md) for the full decision tree (content-to-schema mapping), industry-specific recommendations, implementation priority tiers (P0-P4), and validation quick reference.
### Save Results
After delivering content or optimization output to the user, ask:
> "Save these results for future sessions?"
If yes, write a dated summary to `memory/content/YYYY-MM-DD-<topic>.md` containing:
- One-line description of what was created
- Target keyword and content type
- Open loops or items needing review
- Source data references
**Gate check recommended**: Run content-quality-auditor before publishing (PostToolUse hook will remind automatically).
If any findings should influence ongoing strategy, recommend promoting key conclusions to `memory/hot-cache.md`.
## Reference Materials
- [Schema Templates](https://github.com/aaron-he-zhu/seo-geo-claude-skills/blob/main/build/schema-markup-generator/references/schema-templates.md) - Copy-ready JSON-LD templates for all schema types
- [Validation Guide](https://github.com/aaron-he-zhu/seo-geo-claude-skills/blob/main/build/schema-markup-generator/references/validation-guide.md) - Common errors, required properties, testing workflow
## Next Best Skill
- **Primary**: [technical-seo-checker](https://github.com/aaron-he-zhu/seo-geo-claude-skills/blob/main/optimize/technical-seo-checker/SKILL.md) — verify implementation quality and deployment readiness.
1---2name: schema-markup-generator3description: Generate JSON-LD structured data for FAQ, HowTo, Article, Product, LocalBusiness rich results. Schema标记/结构化数据4license: Apache-2.05---67# Schema Markup Generator89> **[SEO & GEO Skills Library](https://github.com/aaron-he-zhu/seo-geo-claude-skills)** · 20 skills for SEO + GEO · [ClawHub](https://clawhub.ai/u/aaron-he-zhu) · [skills.sh](https://skills.sh/aaron-he-zhu/seo-geo-claude-skills)10> **System Mode**: This build skill follows the shared [Skill Contract](https://github.com/aaron-he-zhu/seo-geo-claude-skills/blob/main/references/skill-contract.md) and [State Model](https://github.com/aaron-he-zhu/seo-geo-claude-skills/blob/main/references/state-model.md).111213This skill creates Schema.org structured data markup in JSON-LD format to help search engines understand your content and enable rich results in SERPs.1415**System role**: Build layer skill. It turns briefs and signals into assets that other skills can review, publish, and monitor.1617## When This Must Trigger1819Use this when the conversation involves any of these situations — even if the user does not use SEO terminology:2021Use this whenever the task needs a shippable asset or transformation that should feed directly into quality review, deployment, or monitoring.2223- Adding FAQ schema for expanded SERP presence24- Creating How-To schema for step-by-step content25- Adding Product schema for e-commerce pages26- Implementing Article schema for blog posts27- Adding Local Business schema for location pages28- Creating Review/Rating schema29- Implementing Organization schema for brand presence30- Any page where rich results would improve visibility3132## What This Skill Does33341. **Schema Type Selection**: Recommends appropriate schema types352. **JSON-LD Generation**: Creates valid structured data markup363. **Property Mapping**: Maps your content to schema properties374. **Validation Guidance**: Ensures schema meets requirements385. **Nested Schema**: Handles complex, multi-type schemas396. **Rich Result Eligibility**: Identifies which rich results you can target4041## Quick Start4243Start with one of these prompts. Finish with a short handoff summary using the repository format in [Skill Contract](https://github.com/aaron-he-zhu/seo-geo-claude-skills/blob/main/references/skill-contract.md).4445### Generate Schema for Content4647```48Generate schema markup for this [content type]: [content/URL]49```5051```52Create FAQ schema for these questions and answers: [Q&A list]53```5455### Specific Schema Types5657```58Create Product schema for [product name] with [details]59```6061```62Generate LocalBusiness schema for [business name and details]63```6465### Audit Existing Schema6667```68Review and improve this schema markup: [existing schema]69```7071## Skill Contract7273**Expected output**: a ready-to-use asset or implementation-ready transformation plus a short handoff summary ready for `memory/content/`.7475- **Reads**: the brief, target keywords, entity inputs, quality constraints, and prior decisions from [CLAUDE.md](https://github.com/aaron-he-zhu/seo-geo-claude-skills/blob/main/CLAUDE.md) and the shared [State Model](https://github.com/aaron-he-zhu/seo-geo-claude-skills/blob/main/references/state-model.md) when available.76- **Writes**: a user-facing content, metadata, or schema deliverable plus a reusable summary that can be stored under `memory/content/`.77- **Promotes**: approved angles, messaging choices, missing evidence, and publish blockers to `CLAUDE.md`, `memory/decisions.md`, and `memory/open-loops.md`.78- **Next handoff**: use the `Next Best Skill` below when the asset is ready for review or deployment.7980## Data Sources8182> See [CONNECTORS.md](https://github.com/aaron-he-zhu/seo-geo-claude-skills/blob/main/CONNECTORS.md) for tool category placeholders.8384**With ~~web crawler connected:**85Automatically crawl and extract page content (visible text, headings, lists, tables), existing schema markup, page metadata, and structured content elements that map to schema properties.8687**With manual data only:**88Ask the user to provide:891. Page URL or full HTML content902. Page type (article, product, FAQ, how-to, local business, etc.)913. Specific data needed for schema (prices, dates, author info, Q&A pairs, etc.)924. Current schema markup (if optimizing existing)9394Proceed with the full workflow using provided data. Note in the output which data is from automated extraction vs. user-provided data.9596## Instructions9798When a user requests schema markup:991001. **Identify Content Type and Rich Result Opportunity**101102 Reference the [CORE-EEAT Benchmark](https://github.com/aaron-he-zhu/seo-geo-claude-skills/blob/main/references/core-eeat-benchmark.md) item **O05 (Schema Markup)** for content-type to schema mapping:103104 ```markdown105 ### CORE-EEAT Schema Mapping (O05)106107 | Content Type | Required Schema | Conditional Schema |108 |-------------|----------------|--------------------|109 | Blog (guides) | Article, Breadcrumb | FAQ, HowTo |110 | Blog (tools) | Article, Breadcrumb | FAQ, Review |111 | Blog (insights) | Article, Breadcrumb | FAQ |112 | Alternative | Comparison*, Breadcrumb, FAQ | AggregateRating |113 | Best-of | ItemList, Breadcrumb, FAQ | AggregateRating per tool |114 | Use-case | WebPage, Breadcrumb, FAQ | — |115 | FAQ | FAQPage, Breadcrumb | — |116 | Landing | SoftwareApplication, Breadcrumb, FAQ | WebPage |117 | Testimonial | Review, Breadcrumb | FAQ, Person |118119 *Use the mapping above to ensure schema type matches content type (CORE-EEAT O05: Pass criteria).*120 ```121122 ```markdown123 ### Schema Analysis124125 **Content Type**: [blog/product/FAQ/how-to/local business/etc.]126 **Page URL**: [URL]127128 **Eligible Rich Results**:129 130 | Rich Result Type | Eligibility | Impact |131 |------------------|-------------|--------|132 | FAQ | ✅/❌ | High - Expands SERP presence |133 | How-To | ✅/❌ | Medium - Shows steps in SERP |134 | Product | ✅/❌ | High - Shows price, availability |135 | Review | ✅/❌ | High - Shows star ratings |136 | Article | ✅/❌ | Medium - Shows publish date, author |137 | Breadcrumb | ✅/❌ | Medium - Shows navigation path |138 | Video | ✅/❌ | High - Shows video thumbnail |139 140 **Recommended Schema Types**:141 1. [Primary schema type] - [reason]142 2. [Secondary schema type] - [reason]143 ```1441452. **Generate Schema Markup**146147 Based on the identified content type, generate the appropriate JSON-LD schema. Supported types: FAQPage, HowTo, Article/BlogPosting/NewsArticle, Product, LocalBusiness, Organization, BreadcrumbList, Event, Recipe, and combined multi-type schemas.148149 > **Reference**: See [references/schema-templates.md](https://github.com/aaron-he-zhu/seo-geo-claude-skills/blob/main/build/schema-markup-generator/references/schema-templates.md) for complete, copy-ready JSON-LD templates for all schema types with required and optional properties.150151 For each schema generated, include:152 - All required properties for the chosen type153 - Rich result preview showing expected SERP appearance154 - Notes on which properties are required vs. optional155156 When combining multiple schema types on one page, wrap them in a JSON array inside a single `<script type="application/ld+json">` tag.1571583. **Provide Implementation and Validation**159160 ```markdown161 ## Implementation Guide162163 ### Adding Schema to Your Page164165 **Option 1: In HTML <head>**166 ```html167 <head>168 <script type="application/ld+json">169 [Your JSON-LD schema here]170 </script>171 </head>172 ```173174 **Option 2: Before closing </body>**175 ```html176 <script type="application/ld+json">177 [Your JSON-LD schema here]178 </script>179 </body>180 ```181182 ### Validation Steps183184 1. **~~schema validator**185 - Test your live URL or paste code186 - Check for errors and warnings187188 2. **Schema.org Validator**189 - URL: https://validator.schema.org/190 - Validates against Schema.org spec191192 3. **~~search console**193 - Monitor rich results in ~~search console194 - Check Enhancements reports for issues195196 ### Validation Checklist197198 - [ ] JSON syntax is valid (no trailing commas)199 - [ ] All required properties present200 - [ ] URLs are absolute, not relative201 - [ ] Dates are in ISO 8601 format202 - [ ] Content matches visible page content203 - [ ] No policy violations204 ```205206## Validation Checkpoints207208### Input Validation209- [ ] Page URL or content provided210- [ ] Schema type appropriate for content (Article for blog, Product for e-commerce, etc.)211- [ ] All required data available (author, dates, prices, etc. depending on schema type)212- [ ] Content eligibility for rich results confirmed213214### Output Validation215- [ ] JSON syntax validates (no trailing commas, proper quotes)216- [ ] All required properties present for chosen schema type217- [ ] URLs are absolute, not relative218- [ ] Dates in ISO 8601 format (YYYY-MM-DDTHH:MM:SS+00:00)219- [ ] Schema content matches visible page content exactly220- [ ] Passes ~~schema validator with no errors221- [ ] Source of each data point clearly stated (~~web crawler extraction, user-provided, or manual entry)222223## Example224225**User**: "Generate FAQ schema for a page about SEO with 3 questions"226227**Output**:228229```markdown230## FAQ Schema for SEO Page231232### Schema Markup233234```json235{236 "@context": "https://schema.org",237 "@type": "FAQPage",238 "mainEntity": [239 {240 "@type": "Question",241 "name": "What is SEO?",242 "acceptedAnswer": {243 "@type": "Answer",244 "text": "SEO (Search Engine Optimization) is the practice of optimizing websites and content to rank higher in search engine results pages (SERPs). It involves technical optimizations, content creation, and link building to increase organic visibility and drive qualified traffic to your website."245 }246 },247 {248 "@type": "Question",249 "name": "How long does SEO take to work?",250 "acceptedAnswer": {251 "@type": "Answer",252 "text": "SEO typically takes 3-6 months to show significant results, though this varies based on competition, domain authority, and effort invested. New websites may take 6-12 months, while established sites with existing authority can see improvements in 1-3 months for less competitive keywords."253 }254 },255 {256 "@type": "Question",257 "name": "Is SEO better than paid advertising?",258 "acceptedAnswer": {259 "@type": "Answer",260 "text": "SEO and paid advertising serve different purposes. SEO provides sustainable, long-term traffic without per-click costs but takes time to build. Paid advertising delivers immediate results but stops when you stop paying. Most successful businesses use both: paid ads for immediate leads and SEO for long-term growth."261 }262 }263 ]264}265```266267_Implementation: Wrap the above JSON-LD in `<script type="application/ld+json">...</script>` and place in `<head>` or before `</body>`. Test with ~~schema validator._268269### SERP Preview270271```272SEO Guide: Complete Beginner's Tutorial273yoursite.com/seo-guide/274Learn SEO from scratch with our comprehensive guide...275276▼ What is SEO?277 SEO (Search Engine Optimization) is the practice of optimizing...278▼ How long does SEO take to work?279 SEO typically takes 3-6 months to show significant results...280▼ Is SEO better than paid advertising?281 SEO and paid advertising serve different purposes...282```283```284285## Schema Type Quick Reference286287| Content Type | Schema Type | Key Properties |288|--------------|-------------|----------------|289| Blog Post | BlogPosting/Article | headline, datePublished, author |290| Product | Product | name, price, availability |291| FAQ | FAQPage | Question, Answer |292| How-To | HowTo | step, totalTime |293| Local Business | LocalBusiness | address, geo, openingHours |294| Recipe | Recipe | ingredients, cookTime |295| Event | Event | startDate, location |296| Video | VideoObject | uploadDate, duration |297| Course | Course | provider, name |298| Review | Review | itemReviewed, ratingValue |299300## Tips for Success3013021. **Match visible content** - Schema must reflect what users see3032. **Don't spam** - Only add schema for relevant content3043. **Keep updated** - Update dates and prices when they change3054. **Test thoroughly** - Validate before deploying3065. **Monitor Search Console** - Watch for errors and warnings307308## Schema Type Decision Tree309310> **Reference**: See [references/schema-decision-tree.md](https://github.com/aaron-he-zhu/seo-geo-claude-skills/blob/main/build/schema-markup-generator/references/schema-decision-tree.md) for the full decision tree (content-to-schema mapping), industry-specific recommendations, implementation priority tiers (P0-P4), and validation quick reference.311312313### Save Results314315After delivering content or optimization output to the user, ask:316317> "Save these results for future sessions?"318319If yes, write a dated summary to `memory/content/YYYY-MM-DD-<topic>.md` containing:320- One-line description of what was created321- Target keyword and content type322- Open loops or items needing review323- Source data references324325**Gate check recommended**: Run content-quality-auditor before publishing (PostToolUse hook will remind automatically).326327If any findings should influence ongoing strategy, recommend promoting key conclusions to `memory/hot-cache.md`.328329## Reference Materials330331- [Schema Templates](https://github.com/aaron-he-zhu/seo-geo-claude-skills/blob/main/build/schema-markup-generator/references/schema-templates.md) - Copy-ready JSON-LD templates for all schema types332- [Validation Guide](https://github.com/aaron-he-zhu/seo-geo-claude-skills/blob/main/build/schema-markup-generator/references/validation-guide.md) - Common errors, required properties, testing workflow333334## Next Best Skill335336- **Primary**: [technical-seo-checker](https://github.com/aaron-he-zhu/seo-geo-claude-skills/blob/main/optimize/technical-seo-checker/SKILL.md) — verify implementation quality and deployment readiness.