Blog · Data · July 30, 2026 · 7 min read

What 159 tracked UGC posts actually looked like

Most articles about UGC performance quote industry averages with no visible source. We can only speak for our own data, so that is what this is: every post we tracked across two app campaigns, with the numbers as they came out — including the unflattering ones.

TL;DR Across 159 posts and 64,048 views, the median post got 307 views and 97% came in under 1,000. The top 10% of posts produced 26% of all views. Median engagement was 4.4%. This is a small, single-program sample — read it for the shape, not as an industry benchmark.

What's in the sample

159 posts with a non-zero view count, tracked across two consumer-app campaigns running roughly June to July 2026, on TikTok and Instagram. Views are the public counts read from each post, refreshed over time. Every figure below comes from that set. No creator names, handles or individual posts are identified.

It is a small sample from one operator. That is a real limitation and the reason this is titled the way it is.

The distribution

MeasureViews
Median (p50)307
25th percentile173
75th percentile551
90th percentile828
Best post3,277
Mean403

The mean sits well above the median, which is the signature of a long tail. Quoting the mean as "what a post gets" would overstate the typical post by about a third.

How concentrated the results are

This is the single most useful thing in the dataset, and it has two direct consequences for how you should structure a campaign.

First, pay per view rather than flat — if a fifth of posts carry nearly half the value, a flat fee per post pays the same for a post that did nothing as for one that did everything. Second, roster size beats per-post optimisation. You cannot reliably pick the winners in advance; you can only make sure enough posts exist for winners to appear. Any pricing model that charges you per creator is working against the mechanic that makes the whole thing work.

Sway9 analytics showing views, engagement, likes, comments, shares and posts for a 30-day period with a daily performance chart
The same shape in a live campaign: a few spikes carrying most of the area under the curve.

Engagement

Median engagement rate — likes, comments and shares as a share of views — was 4.44%. That is a useful sanity threshold when reviewing a roster: a post with a lot of views and engagement far below this is worth a closer look before you pay on it.

TikTok vs Instagram

PlatformPostsMedian viewsTotal views
TikTok10433145,451
Instagram5519118,597

TikTok's median came in about 73% higher. With 55 Instagram posts this is directional at best — different content went to each platform, and that alone could explain the gap. We would not act on it without a lot more data.

What this means for your rate

Take a $1.00 CPM against this distribution. The median post earns 31 cents. The 90th-percentile post earns 83 cents. The best post in the whole set earns $3.28. Without a base fee per post, a campaign like this pays almost nothing to almost everyone — which is a good way to lose your roster.

Put a $3 base per post on it and the same median post pays $3.31. The base fee is doing nearly all the work at the bottom of the distribution, and none at the top. That is the argument for combining a base with a CPM, and you can model it in the calculator.

Limitations, stated plainly

We will re-run this as the dataset grows. If you are running pay-per-view campaigns and want to compare notes on distributions, we would genuinely like to hear from you.

Track your own distribution

Automatic view tracking, per-post history and effective CPM across your whole roster. Free to start.

Get started free

← Back to the blog