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.
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
| Measure | Views |
|---|---|
| Median (p50) | 307 |
| 25th percentile | 173 |
| 75th percentile | 551 |
| 90th percentile | 828 |
| Best post | 3,277 |
| Mean | 403 |
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
- The top 10% of posts produced 26.3% of all views.
- The top 20% produced 45.3%.
- 97% of posts came in under 1,000 views.
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.
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
| Platform | Posts | Median views | Total views |
|---|---|---|---|
| TikTok | 104 | 331 | 45,451 |
| 55 | 191 | 18,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
- Small sample, one operator. 159 posts from two campaigns by the same team. Treat the shape as informative and the absolute numbers as ours, not yours.
- Early-stage accounts. Several of the accounts were new, which pushes medians down relative to established creators.
- Two niches only. Both campaigns were consumer apps in adjacent categories.
- We deliberately excluded a view-velocity metric. We wanted to publish how fast posts accumulate views, but our tracking first sees many posts when they are already days old, so day-one figures were indistinguishable from final ones. That is a measurement artifact, not a finding, so it is not in this post.
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