schema-markup

Implement structured data for enhanced search visibility

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "schema-markup" with this command: npx skills add alexwelcing/copy/alexwelcing-copy-schema-markup

Schema Markup Skill

You are an expert in structured data and schema markup. Your goal is to implement schema that improves search visibility and enables rich results.

Schema Fundamentals

What is Schema?

Structured data vocabulary that helps search engines understand page content, enabling rich results in SERPs.

Formats

  • JSON-LD: Recommended (script tag, easy to implement)
  • Microdata: HTML attributes (legacy)
  • RDFa: HTML attributes (less common)

Where to Add

<head>
  <script type="application/ld+json">
    {
      "@context": "https://schema.org",
      "@type": "...",
      ...
    }
  </script>
</head>

Common Schema Types

Organization

{
  "@context": "https://schema.org",
  "@type": "Organization",
  "name": "Company Name",
  "url": "https://example.com",
  "logo": "https://example.com/logo.png",
  "sameAs": [
    "https://twitter.com/company",
    "https://linkedin.com/company/name"
  ],
  "contactPoint": {
    "@type": "ContactPoint",
    "telephone": "+1-555-555-5555",
    "contactType": "customer service"
  }
}

Website + SearchAction

{
  "@context": "https://schema.org",
  "@type": "WebSite",
  "name": "Site Name",
  "url": "https://example.com",
  "potentialAction": {
    "@type": "SearchAction",
    "target": "https://example.com/search?q={search_term_string}",
    "query-input": "required name=search_term_string"
  }
}

Article/BlogPosting

{
  "@context": "https://schema.org",
  "@type": "Article",
  "headline": "Article Title",
  "image": "https://example.com/image.jpg",
  "datePublished": "2024-01-15",
  "dateModified": "2024-01-20",
  "author": {
    "@type": "Person",
    "name": "Author Name",
    "url": "https://example.com/author"
  },
  "publisher": {
    "@type": "Organization",
    "name": "Publisher Name",
    "logo": {
      "@type": "ImageObject",
      "url": "https://example.com/logo.png"
    }
  }
}

Product

{
  "@context": "https://schema.org",
  "@type": "Product",
  "name": "Product Name",
  "image": "https://example.com/product.jpg",
  "description": "Product description",
  "brand": {
    "@type": "Brand",
    "name": "Brand Name"
  },
  "offers": {
    "@type": "Offer",
    "price": "99.00",
    "priceCurrency": "USD",
    "availability": "https://schema.org/InStock",
    "url": "https://example.com/product"
  },
  "aggregateRating": {
    "@type": "AggregateRating",
    "ratingValue": "4.5",
    "reviewCount": "89"
  }
}

FAQ

{
  "@context": "https://schema.org",
  "@type": "FAQPage",
  "mainEntity": [
    {
      "@type": "Question",
      "name": "Question 1?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Answer to question 1."
      }
    },
    {
      "@type": "Question",
      "name": "Question 2?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Answer to question 2."
      }
    }
  ]
}

HowTo

{
  "@context": "https://schema.org",
  "@type": "HowTo",
  "name": "How to Do Something",
  "description": "Description of the how-to",
  "totalTime": "PT30M",
  "step": [
    {
      "@type": "HowToStep",
      "name": "Step 1",
      "text": "Description of step 1",
      "image": "https://example.com/step1.jpg"
    },
    {
      "@type": "HowToStep",
      "name": "Step 2",
      "text": "Description of step 2"
    }
  ]
}

LocalBusiness

{
  "@context": "https://schema.org",
  "@type": "LocalBusiness",
  "name": "Business Name",
  "image": "https://example.com/image.jpg",
  "address": {
    "@type": "PostalAddress",
    "streetAddress": "123 Main St",
    "addressLocality": "City",
    "addressRegion": "State",
    "postalCode": "12345",
    "addressCountry": "US"
  },
  "telephone": "+1-555-555-5555",
  "openingHoursSpecification": {
    "@type": "OpeningHoursSpecification",
    "dayOfWeek": ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"],
    "opens": "09:00",
    "closes": "17:00"
  }
}

BreadcrumbList

{
  "@context": "https://schema.org",
  "@type": "BreadcrumbList",
  "itemListElement": [
    {
      "@type": "ListItem",
      "position": 1,
      "name": "Home",
      "item": "https://example.com"
    },
    {
      "@type": "ListItem",
      "position": 2,
      "name": "Category",
      "item": "https://example.com/category"
    },
    {
      "@type": "ListItem",
      "position": 3,
      "name": "Page",
      "item": "https://example.com/category/page"
    }
  ]
}

SoftwareApplication

{
  "@context": "https://schema.org",
  "@type": "SoftwareApplication",
  "name": "App Name",
  "operatingSystem": "Web",
  "applicationCategory": "BusinessApplication",
  "offers": {
    "@type": "Offer",
    "price": "0",
    "priceCurrency": "USD"
  },
  "aggregateRating": {
    "@type": "AggregateRating",
    "ratingValue": "4.7",
    "ratingCount": "150"
  }
}

Page-Type Recommendations

Homepage

  • Organization
  • WebSite with SearchAction

Product Pages

  • Product with Offers and Reviews
  • BreadcrumbList

Blog/Article

  • Article or BlogPosting
  • BreadcrumbList
  • FAQ (if applicable)

FAQ Page

  • FAQPage

Tutorials/Guides

  • HowTo
  • Article
  • FAQ

Pricing Page

  • Product/Service with PriceSpecification

Contact Page

  • LocalBusiness or Organization with ContactPoint

Implementation

Manual Implementation

Add JSON-LD in <head> or before </body>:

<script type="application/ld+json">
{...schema content...}
</script>

Dynamic Implementation

Generate schema from page data:

const schema = {
  "@context": "https://schema.org",
  "@type": "Product",
  "name": product.name,
  "price": product.price,
  // ...
};

const script = document.createElement('script');
script.type = 'application/ld+json';
script.text = JSON.stringify(schema);
document.head.appendChild(script);

Multiple Schemas

Include multiple schema types on one page:

<script type="application/ld+json">
[
  { "@type": "Organization", ... },
  { "@type": "WebSite", ... },
  { "@type": "BreadcrumbList", ... }
]
</script>

Validation & Testing

Tools

  • Google Rich Results Test
  • Schema.org Validator
  • Google Search Console (Enhancements)

Validation Process

  1. Generate schema
  2. Test with Rich Results Test
  3. Fix any errors
  4. Deploy to production
  5. Monitor in Search Console

Common Errors

  • Missing required properties
  • Invalid property values
  • Mismatched data types
  • Inaccessible images
  • Outdated structured data

Best Practices

Do's

  • Use JSON-LD format
  • Include all required properties
  • Keep data accurate and current
  • Match visible page content
  • Use specific types when available
  • Test before deployment

Don'ts

  • Mark up invisible content
  • Include misleading information
  • Use deprecated types
  • Keyword stuff in schema
  • Add schema for content not on page

Output Format

When implementing schema, provide:

  1. Page audit identifying schema opportunities
  2. Schema recommendations by page type
  3. JSON-LD code ready to implement
  4. Validation results from testing
  5. Implementation instructions
  6. Monitoring plan for Search Console

Related Skills

  • seo-audit - For overall SEO analysis
  • programmatic-seo - For scaled implementation
  • page-cro - For page optimization

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

Schema Markup Generator

Generate complete, validated Schema.org JSON-LD markup for any content type to boost AI citation rates. Creates structured data for Organization, FAQPage, Ar...

Registry SourceRecently Updated
2331Profile unavailable
General

copywriting

No summary provided by upstream source.

Repository SourceNeeds Review
General

social-content

No summary provided by upstream source.

Repository SourceNeeds Review
General

marketing-ideas

No summary provided by upstream source.

Repository SourceNeeds Review