Product Schema Generator
Generate JSON-LD Product schema markup for SEO. Add product details like name, price, brand, rating, and availability to create structured data for rich search results.
Text_toolHow to Use Product Schema Generator
What is Product Schema?
Product schema is a structured data markup using JSON-LD format that tells search engines about your products. It follows the Schema.org Product specification and helps Google and other search engines display product rich snippets in search results, showing price, availability, ratings, and other key information directly in search listings.
When properly implemented, product schema can trigger rich results including product cards with images, prices, stock status, and reviews, significantly improving visibility and click-through rates from search results and enabling products to appear in Google Shopping and other product-focused search features.
How to Use This Tool
Step 1: Add Required Product Details
Start by entering the essential product information:
Required Fields:
- Product Name: The official name of your product (exactly as shown on the page)
- Price: The current selling price (numbers only, e.g., "299.99" not "$299.99")
These two fields are minimum requirements for valid Product schema.
Best Practices for Product Name:
- Use the exact product name from your page title/H1
- Include model number or variant if applicable
- Keep it concise but descriptive (under 100 characters ideal)
- Match what users would search for
- Example: "Apple MacBook Pro 16-inch M3 2024"
Price Format:
- Enter numbers only: "29.99" not "$29.99"
- Use decimal point for cents: "100.00"
- Do not include currency symbols
- For whole numbers, you can use "100" or "100.00"
Step 2: Add Optional Product Information
Enhance your schema with additional details:
Description:
- Provide a clear, detailed product description
- 50-200 words recommended
- Include key features and benefits
- Match or summarize the description on your product page
- Avoid promotional fluff - be informative
Image URL:
- Full URL to product image:
https://example.com/images/product.jpg - Use high-quality product image (minimum 800x800px)
- Google recommends 1200x1200px or larger
- Must be accessible URL (not password-protected)
- Avoid placeholder or generic images
Brand:
- Official brand/manufacturer name
- Examples: "Apple", "Nike", "Samsung"
- Use consistent brand naming across your site
- Leave blank for generic/unbranded products
SKU / Product ID:
- Stock Keeping Unit or unique product identifier
- Internal product code or model number
- Examples: "MBP16-M3-2024", "SHOE-RUN-BLK-10"
- Helps distinguish variants (size, color, etc.)
Step 3: Select Currency
Choose the currency for your product price:
Available Currencies:
- USD - US Dollar (most common for international sites)
- EUR - Euro
- GBP - British Pound
- CAD - Canadian Dollar
- AUD - Australian Dollar
- JPY - Japanese Yen
- INR - Indian Rupee
- CNY - Chinese Yuan
Important:
- Select the currency that matches your price
- Use one consistent currency per product page
- For multi-currency sites, generate schema per currency version
Step 4: Set Availability Status
Select current product availability:
Availability Options:
- In Stock: Product is available for immediate purchase
- Out of Stock: Currently unavailable
- Pre-Order: Available for pre-order before release
- Back Order: Temporarily out of stock but accepting orders
- Discontinued: No longer manufactured or sold
- Limited Availability: Very limited stock remaining
Best Practices:
- Keep availability updated in real-time if possible
- Sync with your actual inventory system
- Out of Stock products can still have schema for SEO value
- Update schema when availability changes
Step 5: Specify Product Condition
Select the condition of the product:
Condition Options:
- New: Brand new, unused product (most common)
- Used: Previously owned/used product
- Refurbished: Professionally restored to working condition
- Damaged: Product with known defects or damage
When to Use:
- Most e-commerce products: "New"
- Marketplace/resale platforms: "Used" or "Refurbished"
- Clearance/damaged goods sales: "Damaged"
- Be honest about condition to avoid customer complaints
Step 6: Add Ratings and Reviews (Optional but Recommended)
Include aggregate rating information to show review stars in search results:
Rating Value (0-5):
- Average rating from customer reviews
- Scale: 0.0 to 5.0 (e.g., "4.8", "3.5")
- Use one decimal place for precision
- Must be actual customer ratings, not arbitrary numbers
Review Count:
- Total number of customer reviews
- Must be at least 1 for rating to show
- Use actual review count from your site
- Examples: "247", "1523"
Important Notes:
- Both Rating and Review Count required for stars to appear
- Must have genuine customer reviews on your page
- Google may penalize fake or manipulated ratings
- Reviews must be visible on the product page
Step 7: Add Product URL
Enter the full URL to your product page:
Format:
- Full absolute URL:
https://example.com/products/item-name - Include https:// protocol
- Should match the canonical URL of the page
- Must be publicly accessible
- No redirects or temporary URLs
Why It Matters:
- Helps Google associate schema with correct page
- Improves click-through from search results
- Required for some rich result features
Step 8: Copy or Download the Schema
Three options to save your schema:
Copy Button:
- Copies raw JSON-LD to clipboard
- Paste into your code editor
- Use for manual implementation
HTML Button:
- Copies complete
<script type="application/ld+json">tag - Ready to paste directly into HTML
- Includes opening and closing script tags
Download Button:
- Downloads as
product-schema.jsonfile - Useful for version control
- Can be dynamically loaded
Step 9: Add Schema to Your Website
Place the product schema in your product page's <head> section:
HTML Implementation:
<!DOCTYPE html>
<html>
<head>
<title>Product Name</title>
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Product",
"name": "Apple MacBook Pro 16-inch",
"offers": {
"@type": "Offer",
"price": "2499.00",
"priceCurrency": "USD"
}
}
</script>
</head>
<body>
<!-- Your product page content -->
</body>
</html>
WordPress:
- Use WooCommerce (includes Product schema by default)
- Or use schema plugins: Schema Pro, Rank Math, Yoast SEO
- Or add to product template file
- Many themes include Product schema automatically
Shopify:
- Shopify includes Product schema by default in theme
- Check theme.liquid or product.liquid template
- Some themes allow customization via settings
React/Next.js:
export default function ProductPage({ product }) {
const productSchema = {
"@context": "https://schema.org",
"@type": "Product",
"name": product.name,
"offers": {
"@type": "Offer",
"price": product.price,
"priceCurrency": "USD"
}
}
return (
<>
<Head>
<script
type="application/ld+json"
dangerouslySetInnerHTML={{ __html: JSON.stringify(productSchema) }}
/>
</Head>
{/* Product page content */}
</>
)
}
PHP/Custom E-commerce:
<?php
$product_schema = [
"@context" => "https://schema.org",
"@type" => "Product",
"name" => $product->name,
"offers" => [
"@type" => "Offer",
"price" => $product->price,
"priceCurrency" => "USD"
]
];
?>
<script type="application/ld+json">
<?php echo json_encode($product_schema); ?>
</script>
Important:
- Add unique schema to EACH product page
- Do not use same schema on all products
- Update schema when product details change (price, availability)
- Ensure schema matches visible page content
Step 10: Test Your Schema
Verify your product schema is valid:
Google Rich Results Test:
- Go to: https://search.google.com/test/rich-results
- Enter your product page URL or paste HTML
- Click "Test URL" or "Test Code"
- Check for "Product" in detected structured data
- Fix any errors or warnings
- Verify price, rating, availability appear correctly
Schema Markup Validator:
- Go to: https://validator.schema.org/
- Paste schema JSON or enter page URL
- Verify no errors
- Check all fields are formatted correctly
Google Search Console:
- Wait 1-7 days after implementation
- Go to Search Console → Enhancements → Products
- Check for errors or warnings
- Monitor "Valid" product markup count
- Request indexing for faster processing
Google Merchant Center (Optional):
- For Google Shopping, submit product feed to Merchant Center
- Product schema enhances but does not replace feed
- Helps with organic and paid shopping results
Step 11: Load Examples
Use pre-built examples:
Electronics Example:
- High-end tech product with detailed specs
- Includes brand, SKU, ratings
- Premium pricing example
Clothing Example:
- Apparel product with size variants
- Brand and SKU format for fashion
- Moderate pricing tier
Books Example:
- Book/media product format
- Publisher as brand
- ISBN as SKU example
Furniture Example:
- Large item with pre-order status
- Ergonomic/specialty product
- Higher price point example
Product Schema Best Practices
Required vs Optional Fields
Google Requires:
name: Product nameimage: Product image (at least one)offers: Offer information including price
Highly Recommended:
offers.price: Actual priceoffers.priceCurrency: Currency codeoffers.availability: Stock statusaggregateRating: Ratings (if you have reviews)brand: Brand namedescription: Product description
Optional but Valuable:
sku: Product identifieroffers.itemCondition: Product conditionoffers.url: Product page URLreview: Individual reviews (if applicable)
Pricing Best Practices
Price Format:
- Use numerical format only: "29.99" not "$29.99"
- Always include decimal for cents: "100.00" not "100"
- Update price in schema when it changes on page
- Schema price must match visible page price
Sale Pricing:
- Use
offers.pricefor current sale price - Can optionally add
offers.priceValidUntilfor time-limited sales - Show both original and sale price on page
Multiple Variants:
- For products with size/color variants with different prices:
- Use lowest price:
offers.lowPriceor price range - Or create separate schema for each variant page
Out of Stock Pricing:
- Keep price in schema even if out of stock
- Set availability to "OutOfStock"
- Helps maintain SEO value
Image Requirements
Technical Requirements:
- Minimum 800x800 pixels
- Recommended 1200x1200 or larger
- Supported formats: JPG, PNG, GIF, WebP
- Must be crawlable (not blocked by robots.txt)
Image Quality:
- High-resolution product photo
- White or neutral background preferred
- Show product clearly and accurately
- Multiple angles can be added as array
Image URL Format:
- Full absolute URL:
https://example.com/image.jpg - Must be publicly accessible (no login required)
- HTTPS recommended
- Avoid CDN URLs that expire or change
Rating and Review Guidelines
Eligibility:
- Must have real customer reviews on product page
- Reviews must be visible to users
- Minimum 1 review required for ratings to show
- Cannot use fake or paid reviews
Rating Scale:
- Use 5-point scale (0-5)
- Include one decimal: "4.7" not "4.75" or "5"
- Must represent actual average rating
- Update when new reviews are added
Review Count:
- Must be accurate total count
- Update as reviews are added/removed
- Cannot inflate numbers artificially
Individual Reviews:
- Can add
reviewarray for specific reviews - Each review needs author, rating, reviewBody
- Enhances rich snippets further
Availability Best Practices
Real-Time Updates:
- Keep availability synchronized with inventory
- Update schema when stock changes
- "Out of Stock" products can still rank with schema
Pre-Order Products:
- Use "PreOrder" availability
- Add
availabilityStartsdate if known - Clearly show pre-order status on page
Discontinued Products:
- Use "Discontinued" availability
- Consider leaving schema for historical/SEO value
- Update page to show discontinued status
Common Use Cases
E-commerce Product Pages
Standard Product:
{
"@context": "https://schema.org",
"@type": "Product",
"name": "Wireless Bluetooth Headphones",
"description": "Premium noise-canceling headphones...",
"image": "https://example.com/headphones.jpg",
"brand": {
"@type": "Brand",
"name": "AudioTech"
},
"sku": "HDN-BT-NC-BLK",
"offers": {
"@type": "Offer",
"price": "149.99",
"priceCurrency": "USD",
"availability": "https://schema.org/InStock",
"itemCondition": "https://schema.org/NewCondition"
},
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.6",
"reviewCount": "328"
}
}
Digital Products
Software/SaaS:
- Include subscription details if applicable
- Use appropriate price (monthly/annual)
- Availability usually "InStock"
Physical Products with Variants
Products with Multiple Options:
- Create schema for each variant page (different colors, sizes)
- Or use
offersarray with multiple offers - Each variant should have unique SKU
Marketplace/Resale Products
Used or Refurbished Items:
- Set
itemConditionto "UsedCondition" or "RefurbishedCondition" - Accurately describe condition in description
- Price competitively based on condition
Troubleshooting
Product Rich Snippets Not Showing?
Possible Causes:
-
Missing Required Fields
- Ensure name, image, and offers are present
- Price and currency must be valid
- Check all required fields in validator
-
Schema Validation Errors
- Test with Google Rich Results Test
- Check for JSON syntax errors
- Verify all URLs are absolute (https://)
-
Price Mismatch
- Schema price must match visible page price
- Google checks for consistency
- Update schema when price changes
-
Image Issues
- Image must be high-quality (800x800 minimum)
- URL must be accessible
- Check image is not blocked by robots.txt
-
Not Indexed Yet
- Wait 1-7 days for Google to process
- Request indexing in Search Console
- Check Coverage report
-
Competition
- Rich results not guaranteed
- Google shows based on query relevance
- Focus on other ranking factors too
Common Schema Errors
Error: Missing price currency
// WRONG - missing priceCurrency
"offers": {
"@type": "Offer",
"price": "99.99"
}
// CORRECT
"offers": {
"@type": "Offer",
"price": "99.99",
"priceCurrency": "USD"
}
Error: Invalid availability URL
// WRONG - not a schema.org URL
"availability": "in stock"
// CORRECT
"availability": "https://schema.org/InStock"
Error: Rating without review count
// WRONG - rating needs reviewCount
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.5"
}
// CORRECT
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.5",
"reviewCount": "120"
}
Frequently Asked Questions
Related Marketing & SEO Tools
Meta Tag Generator
Generate HTML meta tags for SEO optimization. Create title, description, keywords, viewport, charset, robots, and author meta tags. Perfect for improving search engine rankings and social sharing.
Use Tool →Google SERP Simulator
Preview how your title and meta description appear in Google search results. See real-time character counts, pixel width estimates, and desktop/mobile previews to optimize your SEO.
Use Tool →FAQ Schema Generator
Generate JSON-LD FAQPage schema markup for SEO. Add questions and answers to create structured data that helps search engines display FAQ rich snippets in search results.
Use Tool →Breadcrumb Schema Generator
Generate JSON-LD BreadcrumbList schema markup for SEO. Add breadcrumb items with names and URLs to create structured data that helps search engines understand your site hierarchy.
Use Tool →Twitter Card Generator
Generate Twitter Card meta tags for Twitter/X sharing. Create summary cards, large image cards, app cards, and player cards. Optimize how your links appear on Twitter with custom titles, descriptions, and images.
Use Tool →Robots.txt Generator
Generate robots.txt file to control search engine crawlers. Create user-agent rules, allow/disallow paths, set crawl delays, and add sitemap URLs. Perfect for managing bot access to your website.
Use Tool →Open Graph Generator
Generate Facebook Open Graph meta tags for social media sharing. Create og:title, og:description, og:image, og:url, and og:type tags. Perfect for optimizing how your links appear on Facebook, LinkedIn, WhatsApp, and Slack.
Use Tool →Share Your Feedback
Help us improve this tool by sharing your experience