Skip to content
NewProduct Q&A: shoppers ask on your product page and get your answers.See how it works
IdukkiIdukki
Strategy

How to run a UGC audit: coverage, rights, freshness, value and a sample report

A UGC audit is four measurements and one comparison. Coverage, rights, freshness and value. Plus a sample report on a fictional store, with a fix order.

The first UGC audit I ran took a weekend and a spreadsheet with four tabs. The finding that mattered fitted in one cell. Most of the catalogue had no customer content at all. The products that did were the ones already selling. Nobody had asked, because nobody had a column for it.

An audit answers a question the dashboard does not. Is UGC working across the catalogue, or only on twelve products? Most brands run UGC as a series of moments. A campaign, a homepage widget, a gallery on the hero product. The audit turns that into a map of the whole store.

It works like a stock count. Boring, periodic, and the only way to know what you have. The four measurements are coverage, rights, freshness and value. Run them in that order. Value means nothing if half the content counted is not cleared to show.

Coverage: how much of the catalogue has proof

Coverage is the share of products with cleared, live customer content. One piece is enough. Counting SKUs is the naive version. Weight by traffic instead.

A store where 15% of products carry UGC can go either way. Most sessions might see it, or almost none. Pull the product list and join it to 90 days of sessions. Mark each product covered or not. Report the SKU share and the traffic share. The gap between them is your first finding.

Then cut it by category and price band. Coverage clusters where the team already looked: the hero range, the launch, the sale. The long tail often has nothing. That list, sorted by traffic, is next quarter's collection brief. No source for those products? Read own versus rent for a UGC library.

Rights: cleared, dated, and not expired

Every covered piece needs a rights grant that exists, names its source and has not expired. Count the rest as uncleared. That includes grants with no date, because you cannot defend an expiry you do not know.

Legal exposure is one reason. A revoked or lapsed grant also pulls the content from every surface at once. A coverage number that includes it can drop overnight.

Report three counts per product. Cleared and current. Cleared but expiring within 90 days. Uncleared or unknown. The middle column is the renewal list. The rights-expiry audit covers how to find these past a few dozen agreements.

Freshness: the age of the newest post

Freshness is the age of the newest cleared post per product. Most audits skip it. Shoppers notice it. A gallery whose newest post is two seasons old says the product stopped selling.

Set a threshold that fits your cycle. Try 90 days for fashion and beauty, longer for furniture. Report the share of covered products whose newest post is older than that.

Freshness feeds the brief too. A product with twenty old posts needs a nudge more than one with three new ones. Try a post-purchase ask, a hashtag or a QR code on the packaging. The competition runbook is the fastest way to refill a stale product.

Value: engaged visitors against the store average

There is a clean version of the value question and a flattering one. The flattering version compares pages with UGC to pages without. That mostly measures where you chose to put UGC.

The clean version stays on the same pages, in the same window. It compares visitors who engaged with UGC against the store average for those pages. Engaging is a choice, so selection bias remains. A holdout test then confirms or corrects the number.

Keep the revenue lines apart. Attributed revenue is orders matched to a UGC click through the store's order webhook. Influenced cart value is add-to-cart value after an engagement, closed or not. They answer different questions. Never add them together. Engagement metrics go in a third column.

  • 137%

    more likely to buy after seeing customer photos

    Yotpo, 200k+ stores / 163M orders analyzed

  • +162%

    more revenue per visitor among shoppers who engage with UGC

    Bazaarvoice, Shopper Experience Index

  • 161%

    higher conversion among shoppers who interact with UGC

    Yotpo, 200k+ stores / 163M orders analyzed

Published vendor-dataset figures. Treat them as a ceiling. The audit produces your own version.

A store with 15% coverage and stale galleries will not match a dataset of 200,000 stores. The audit tells you how far off you are.

Sample report: a fictional homeware store

The store sells homeware on Shopify, with 240 live products. It runs one homepage gallery and a reviews app. It has never run an audit. Here is what the outside-in scan and the four measurements found.

Sample score from the free scanner

60 / 100

Solid, with room to grow

  • Leaving money on the table (0-30)
  • Big gaps to close (30-55)
  • Solid, room to grow (55-80)
  • UGC powerhouse (80-100)
Fictional store. Six homepage checks plus four rights and measurement questions. Bands match the scanner's verdicts.

What the scanner checked

CheckStageSample result
A UGC or review widget on the homepageCollectionPass
AggregateRating or Review schemaConversionFail: reviews show, schema missing
Video on the homepageDisplayPass
Instagram or TikTok content embeddedDisplayPass
Canonical URL declaredDisplayPass
Mobile viewport tagDisplayPass
Rights requested before repostingRightsPass
A record of who granted rights, and whenRightsFail: grants live in an inbox
Revenue per UGC widget visibleMeasurementFail
Top creators and posts by sales knownMeasurementFail
Sample report, fictional store. The ten checks the free UGC audit scanner runs. 6 of 10 passed.

What the four measurements found

MeasurementSample findingWhat it means
Coverage31 of 240 products (13%). Those 31 get 46% of product page sessions.Covered where traffic is. The long tail is bare.
Rights212 live pieces. 151 cleared and current, 18 expiring, 43 undated or uncleared.One live piece in five has no defensible grant.
Freshness12 of 31 covered products have no post in 180 days.Four of the top ten products look stale.
ValueNo order webhook connected. Engagement data only.No revenue line can be reported yet.
Sample report, fictional store. 90 days of sessions. Freshness threshold set at 180 days for homeware.

Sample fix order

This order follows risk first, then reach. Live content without a grant is a problem today. Everything else can wait a week.

  1. 1Take down or re-permission the 43 pieces with no dated grant.
  2. 2Renew the 18 grants that expire within 90 days.
  3. 3Move every grant from the inbox into one rights record.
  4. 4Add Review and AggregateRating schema to product pages.
  5. 5Ask recent buyers of the four stale top-ten products for photos.
  6. 6Brief collection for the top 50 uncovered products by traffic.
  7. 7Connect the order webhook, then plan a holdout on one surface.

The sample store, before and after the fix order

This audit

  • 13% of products covered
  • 43 live pieces with no dated grant
  • Grants kept in an inbox
  • Engagement data only

Next quarter's target

  • Top 50 uncovered products briefed
  • No live piece without a dated grant
  • One rights record for every piece
  • Attributed revenue on its own line
Sample report, fictional store. The "after" column is the target for next quarter's audit.

Where you are, and what to do next

Where the audit usually lands

  1. 1

    Moments

    You’re here ifA homepage gallery, a campaign or two. Coverage under 10% of traffic. Rights in an inbox.

    Next moveConnect sources and log rights on every piece. Target the top 50 products by traffic.

  2. 2

    Covered

    You’re here ifCoverage past 40% of traffic, rights dated. Freshness slipping, value unmeasured.

    Next moveSet a freshness threshold. Run the engaged-versus-average comparison. Ask buyers of stale products.

  3. 3

    Measured

    You’re here ifCoverage, rights and freshness reported quarterly. Revenue lines kept apart.

    Next moveHoldout-test one surface. Then expand past the product page: email, lookbooks, ads.

  4. 4

    Compounding

    You’re here ifThe library grows faster than it expires. Every surface draws from it.

    Next movePut the audit on a schedule. Spend the saved time on the long tail.

Four stages, each defined by what the audit finds. The move is next quarter's brief.

What the coverage number tells you to do first

Start here

What did coverage come back as, weighted by traffic?

  • Under 20% of sessions

    A collection problem

    Nothing else matters yet. Brief content for the top products, with rights captured on entry.

    • Sources connected, little inbound: A post-purchase ask plus a hashtag or in-store QR code. A competition for volume.
    • Sources not connected: Connect Instagram, TikTok and reviews first. The backlog is often bigger than it looks.
  • 20% to 60% of sessions

    A rights and freshness problem

    The content exists. Check it is cleared, current and on the right products.

    • Many grants undated or expiring: Renewal list first. Nothing stale goes on a new surface until re-permissioned.
    • Rights fine, newest posts old: Set the freshness threshold. Nudge the stale top-traffic products.
  • Over 60% of sessions

    A measurement problem

    You have the inventory. Now find its worth with a clean comparison, then a holdout.

    • No commerce integration: Report engagement and influenced cart value. Do not model revenue you cannot match.
    • Order attribution live: Report attributed revenue on its own line. Holdout-test the biggest surface.
Start from coverage weighted by traffic. Each branch names the real problem.

Running the first pass in an afternoon

Two free routes shorten the first pass. The UGC audit scanner checks a public homepage from the outside. It looks for widgets, video, social embeds, review schema and basic page hygiene. Four quick questions cover rights and measurement.

The 30-minute audit is the inside-out version, with a person on the call. Neither replaces the four measurements. Both tell you which one to start with.

FAQs

  • How often should a UGC audit run?

    Quarterly. Coverage and freshness move with the season. Rights expire on their own schedule. A quarter gives the last brief time to change the numbers.

  • What counts as "covered" for a product?

    At least one piece of customer content that is cleared, current and live on the store. A post in the library but on no page does not count. Nor does one with an expired or undated grant.

  • Why weight coverage by traffic instead of counting products?

    The SKU share can flatter or hide the truth. Traffic weighting tells you what shoppers see.

  • Is engaged-visitor conversion the same as lift?

    No. Visitors who engage differ from those who do not. The comparison is an honest first number. A holdout, where some visitors never see UGC, confirms the lift.

  • Is the sample report from a real store?

    No. The store and every figure in it are fictional. They show the format of a report.

Sources

  1. 1Yotpo, 200k+ stores and 163M orders (customer photos, revenue per visitor)
  2. 2Bazaarvoice, Shopper Experience Index (conversion on pages with UGC)
  3. 3Sample report · Fictional store and figures, written to show the report format.
  4. 4Idukki, free UGC audit scanner
  5. 5Idukki, the 30-minute UGC audit
  6. 6Idukki, auditing creator rights before they expire
#ugc-audit#rights-management#catalogue-coverage#measurement#strategy#sample-report

More from Rohin Aggarwal