# Structured data and schema for product UGC

Customer photos, videos and reviews only count for search and AI agents if a machine can parse them. This is the schema that turns a gallery into visibility.

By Rohin Aggarwal · 2026-03-07

The PDP had flawless Product schema, flawless Offer schema, and not one line of UGC-shaped markup. The audit caught it, the fix took eleven minutes, and the AI-citation rate for that page doubled over the next four weeks. The schema patterns that did the work are below.

**Quick answer**

- UGC a search engine or AI agent cannot parse is UGC that does not count toward your visibility.
- The schema that matters: Review and AggregateRating, plus ImageObject and VideoObject for customer media.
- Schema must tie the UGC to the specific product, and must match what is visible on the page.
- Never emit Review or rating schema for content that is not real and attributable.

A product page can be stuffed with customer photos, videos and reviews and still read, to a search engine or an AI shopping agent, as a blank. Machines do not infer from a nice layout; they parse markup. Structured data is how your UGC becomes legible to them, and legible UGC is the only UGC that earns rich results and agent recommendations.

## Why does UGC need schema?

Search engines render review stars and rich results from structured data, not from a pretty widget. AI agents corroborate product claims against [review and rating data they can actually read](/blog/reviews-evidence-ai-engines-verified-14x). UGC that lives only inside an unannotated gallery or a slow iframe is doing work for the shopper on the page and none at all for your visibility. This is one of the highest-leverage moves in the [answer-engine optimisation playbook](/blog/answer-engine-optimisation-2026-playbook), and it sits alongside the other markup shapes covered in [the twelve JSON-LD shapes agents quote](/blog/twelve-json-ld-shapes-agents-quote).

## Which schema types actually matter?

- Review: individual customer reviews, each with author, rating and date, attached to the product.
- [AggregateRating](/blog/aggregate-rating-schema-and-rich-snippets), the overall rating and review count, drawn honestly from real reviews.
- ImageObject: customer photos, so visual UGC is described, not just displayed.
- VideoObject, customer videos, with the metadata that lets them be indexed and understood.

| Schema type | Carries | What it earns |
| --- | --- | --- |
| Review | Author, rating, body, date, tied to the product | Per-review snippets; agent corroboration |
| AggregateRating | Overall score and review count | Star rating in search and agent answers |
| ImageObject | Customer photo URL, caption, dimensions | Image indexing; visual UGC described |
| VideoObject | Video URL, thumbnail, duration, upload date | Video rich results; clip indexing |

_The four UGC schema types, what each one carries, and where it surfaces._

## How do you tie UGC to the right product?

Schema on its own is not enough. It has to bind the UGC to the specific product entity, and it has to agree with what a human sees on the page. A rating in the markup that does not match the rating on screen, or reviews not tied to the product they describe, is worse than shipping no schema at all: it reads as a mismatch, and a mismatch gets discounted or penalised.

> **Never fake the markup:** Every Review and AggregateRating you emit must trace back to real, attributable reviews with real dates. Do not synthesise reviews to pad a count or invent a rating. Search engines and AI agents both detect it, and the manual action that follows costs far more than the half-star you bought.

## A checklist

1. Emit Review + AggregateRating on product pages, sourced only from genuine reviews.
2. Add ImageObject / VideoObject for customer media so visual UGC is described.
3. Tie every piece of schema to the correct product entity.
4. Confirm the markup matches the visible page exactly.
5. Validate with a structured-data testing tool, and re-check after template changes.

> A nice gallery helps the shopper on the page and nobody else. Schema is what makes that UGC count for search and for AI agents.
> — Rohin Aggarwal · Co-founder, Idukki

**The schema rule:** Unannotated UGC helps the shopper on the page and nobody else. Schema is what makes it count for search and for AI agents. The catch: it only works if it is real.

> **How Idukki helps:** Idukki surfaces reviews and customer media on the product page as fast, structured, crawlable content tied to the right product: the machine-readable evidence layer search engines and AI agents actually consume.

### Sources & notes
- [Schema.org: Review, AggregateRating, ImageObject, VideoObject](https://schema.org/Review) — The structured-data vocabulary for UGC.
- [Google Search Central, review snippet & product structured data](https://developers.google.com/search/docs/appearance/structured-data/review-snippet) — Implementation and policy guidance.

- **+18%** — Median PDP CVR lift from UGC (Idukki page-level)
- **+22%** — Median AOV lift (Same cohort)
- **+44%** — Compound RPV lift (CVR x AOV)
- **+31%** — Median dwell-time lift (Idukki dataset)

_Core ecommerce + UGC metrics worth tracking._

---
Canonical: https://idukki.io/blog/structured-data-schema-for-product-ugc
Tags: ai-search, structured-data, ugc, seo
