SEO11 min read

Schema.org Product: rank Top 3 Google Shopping in Africa (2026)

Mohamed Bah·Fondateur, Kolonell
May 7, 2026
Share:
Schema.org Product: rank Top 3 Google Shopping in Africa (2026)

Schema.org Product: rank Top 3 Google Shopping in Africa (2026)

SEO

A product page with a Product rich snippet (stars, price, "In stock") earns 11-14% organic CTR, vs 4-6% without. On 50,000 monthly impressions, that's 4,000 extra clicks. Yet Google only validates your rich snippet if the JSON-LD is strict — and 90% of sites get it wrong.

TL;DR

- Product schema + AggregateRating + Offer = full rich result.

- Mandatory validation via Google Rich Results Test before deploy.

- Include GTIN/MPN if available (+20% Google Shopping organic eligibility).

Anatomy of a complete Product rich snippet

`json

{

"@context": "https://schema.org",

"@type": "Product",

"name": "Sneakers Urban Black 42",

"image": [

"https://kolonell.com/products/sneakers-urban-black-front.jpg",

"https://kolonell.com/products/sneakers-urban-black-side.jpg",

"https://kolonell.com/products/sneakers-urban-black-back.jpg"

],

"description": "Black urban sneakers in genuine leather, Vibram sole, made in Senegal. Sizes 39–46. Africa delivery 48-72h.",

"sku": "SNK-URB-BLK-42",

"mpn": "SNK-URB-BLK-42",

"gtin13": "3760123456789",

"brand": { "@type": "Brand", "name": "Kolonell Footwear" },

"review": [

{

"@type": "Review",

"reviewRating": { "@type": "Rating", "ratingValue": "5", "bestRating": "5" },

"author": { "@type": "Person", "name": "Aïssatou D." },

"datePublished": "2026-04-12",

"reviewBody": "Excellent comfort, Abidjan delivery in 48h."

}

],

"aggregateRating": {

"@type": "AggregateRating",

"ratingValue": "4.7",

"reviewCount": "189",

"bestRating": "5",

"worstRating": "1"

},

"offers": {

"@type": "Offer",

"url": "https://kolonell.com/en/products/sneakers-urban-black-42",

"priceCurrency": "XOF",

"price": "45000",

"priceValidUntil": "2026-12-31",

"itemCondition": "https://schema.org/NewCondition",

"availability": "https://schema.org/InStock",

"seller": { "@type": "Organization", "name": "Kolonell" },

"shippingDetails": {

"@type": "OfferShippingDetails",

"shippingRate": { "@type": "MonetaryAmount", "value": "2000", "currency": "XOF" },

"shippingDestination": { "@type": "DefinedRegion", "addressCountry": "SN" },

"deliveryTime": {

"@type": "ShippingDeliveryTime",

"handlingTime": { "@type": "QuantitativeValue", "minValue": "1", "maxValue": "2", "unitCode": "DAY" },

"transitTime": { "@type": "QuantitativeValue", "minValue": "1", "maxValue": "3", "unitCode": "DAY" }

}

}

}

}

`

Next.js implementation (reusable component)

`tsx

import Script from 'next/script';

export function ProductSchema({ product }: { product: Product }) {

Need a professional website?

Kolonell builds websites that attract clients, optimized for the Sénégalese market. Free quote in 2 minutes.

const schema = {

'@context': 'https://schema.org',

'@type': 'Product',

name: product.name,

image: product.images.map(i => i.url),

description: product.description,

sku: product.sku,

mpn: product.mpn,

gtin13: product.gtin13,

brand: { '@type': 'Brand', name: product.brandName },

aggregateRating: product.reviewCount > 0 ? {

'@type': 'AggregateRating',

ratingValue: product.avgRating.toFixed(1),

reviewCount: product.reviewCount,

} : undefined,

offers: {

'@type': 'Offer',

url: https://kolonell.com/en/products/${product.slug},

priceCurrency: product.currency,

price: String(product.price),

priceValidUntil: '2026-12-31',

itemCondition: 'https://schema.org/NewCondition',

availability: product.inStock

? 'https://schema.org/InStock'

: 'https://schema.org/OutOfStock',

seller: { '@type': 'Organization', name: 'Kolonell' },

},

};

return (

id={product-schema-${product.id}}

type="application/ld+json"

dangerouslySetInnerHTML={{ __html: JSON.stringify(schema) }}

/>

);

}

`

Common Schema Product mistakes

MistakeConsequenceFix
Fake or copied reviewsGoogle penalty + manual riskReal, verifiable, dated reviews
AggregateRating without reviewCountSnippet rejectedAlways include both
Price without priceValidUntilSearch Console warningSet realistic date
Bad availability formatRejectionStrict Schema URL (https://schema.org/...)
Multiple Offer without AggregateOfferGoogle confusionUse AggregateOffer for price ranges
Made-up GTINMerchant Center penaltyLeave empty if unknown

Google Shopping organic vs Ads

Since 2020, Google Shopping has a "Free" tab fed by Merchant Center feeds and Product rich snippets. To rank in this tab:

  • Complete Product schema (✓ above)
  • Verified Google Merchant Center account (free)
  • Product feed XML/CSV or auto-crawled schema
  • Published returns policy
  • Published shipping policy
  • Verified address (postcode, city, country)
  • Product reviews ≥ 50 over 30 days for "Top quality store" badge

Many African e-commerce skip Merchant Center out of unfamiliarity — it's free and game-changing.

Real case — Dakar shoe store

Before rich snippet:

  • "men sneakers" avg position: #14
  • Organic CTR: 3.2%
  • Product traffic: 4,800 visits/month

After complete Product schema + AggregateRating + Merchant Center:

  • Avg position: #6 + organic Shopping appearance
  • Organic CTR: 11.7%
  • Product traffic: 18,200 visits/month (+279%)
  • Conversions: +147% at constant rate

FAQ

Q: Need a GTIN for a local African brand?

A: Not mandatory if brand + mpn are filled. GS1 Senegal sells GTIN codes ~50,000 XOF for 5 years.

Q: How to avoid Google's fake-review penalty?

A: Never invent or buy reviews. Review schema must reflect real reviews stored in DB, verifiable.

Q: Does Product schema work on Bing/Yandex?

A: Yes — Bing supports Schema.org since 2017. For Bing, also create a Bing Webmaster Tools account and submit sitemap.

Q: Do rich snippets work in Wolof or Swahili?

A: Yes, Google indexes page content regardless of language. The schema JSON uses English (Schema.org vocabulary), but values (name, description) are in the content language.

Conclusion

Schema.org Product isn't complex or expensive — it's a properly filled JSON-LD file. But it's the #1 differentiator between a page stuck on page 2 and one ranking in Top 5 with stars + visible prices. Immediate ROI on next Google re-index (24-72h).

Tags:#Schema.org#Rich Snippet#Google Shopping#Product SEO#Africa#JSON-LD
Share:

Mohamed Bah

Fondateur, Kolonell

Passionate about digital and entrepreneurship in Africa, Mohamed has been helping Sénégalese businesses with their digital transformation since 2020. Founder of Kolonell, he believes every SME deserves a professional and accessible online présence.