
TL;DR
Run a fixed 90-minute intel block with a timer and a required, dated artifact. Spend 30 min on owned VoC, 25 on comments, 20 on ad libraries + trend surfaces, 15 on account performance. Capture one row per signal: quote, source, date, SKU, inferred angle, funnel-stage guess. Triage 40 signals to 5 angles using a hard rule: each angle needs 2 independent customer quotes. Use a 30-minute Monday review to assign briefs, then place angles into your funnel-stage matrix.
The 90-minute block structure and exactly how the minutes split across source types
Most creative teams do not have an idea problem. They have an input problem.
If your “brainstorm” is three people trying to remember ads they scrolled past last week, you will end up with the same five ads every other brand in the category is running.
The fix is boring: a fixed 90-minute block, a timer, and a required artifact.
Here is the split that actually fits into a Monday (or Friday) and still produces something you can ship.
- 30 minutes: owned voice-of-customer (VoC) - support tickets and reviews
- 25 minutes: your own comment sections - ads + organic
- 20 minutes: competitor ad libraries + platform trend surfaces
- 15 minutes: paid account performance
The rules are what make it work.
1) You read the last 50 reviews and the last 100 ad comments in full, not a random sample.
2) You do not leave the block without a dated document. If there is no dated artifact with verbatim quotes in it, the block did not happen.
This matters more now because production is not the bottleneck anymore. When UGC costs roughly $200 per creator video, you are stingy with tests. When AI UGC can be roughly $5 per video, the scarce input becomes a good reason to make the ad.
The six input sources ranked by yield
I would rank sources by one thing: how often they give you language you can paste into a hook, an objection handler, or a “why this, why now” line.
Here are the six sources, in yield order, with the one sentence on why they earn their slot.
1) Support tickets and reviews
This is where buyers confess what they were afraid of, what confused them, and what almost made them churn.
Read the last 50 reviews straight through. Then scan the last week (or two) of support tickets for repeated nouns: “leaking,” “refund,” “size chart,” “delivery,” “rash,” “broke,” “doesn’t fit.” Those nouns are angles wearing a trench coat.
2) Your own comment sections
Your ads are already running a live focus group. Most teams ignore it because it does not feel like “research.”
Read the last 100 ad comments in full. Capture the fights, not just the compliments: skepticism about before/after, ingredient debates, shipping complaints, “does it work for X,” and the one-line sarcasm that tells you what people actually believe.
3) Competitor ad libraries
These are useful for format and cadence: what the category thinks a “winning ad” looks like this month.
But the danger is obvious: you start copying the loudest claims, not the truest ones. Use libraries to spot patterns (everyone is saying “clinically proven” now) and then go back to VoC to find the grounded version.
4) Platform native search and trend surfaces
TikTok search suggestions, Instagram keyword search, YouTube autocomplete, creator “spark” formats - these tell you what people are actively trying to understand.
You are not here for dances. You are here for phrasing: “does [product] work,” “how long until,” “side effects,” “before and after,” “worth it.”
5) Sales and CS call notes
If you have call notes, they are basically paid research you already purchased.
Pull the last 10 notes and look for repeated objections and repeated moment-of-truth questions. When a prospect asks the same thing 8 times in a week, that is an ad.
6) Paid account performance
Performance is not “creative inspiration.” It is evidence your market responded to a belief, a promise, or a proof style.
This is also how the flywheel closes. Last week’s tests should feed this week’s inputs, especially if you are running a structured approach like the one in the AI UGC testing framework for paid social.
The capture schema: one row per signal with verbatim quote, source, date, SKU, inferred angle, and funnel-stage guess
If you do not standardize capture, your “research” becomes a scrapbook. Nobody can sort it. Nobody can reuse it. Nobody trusts it.
The schema is intentionally dumb. One row per signal, six fields:
- Quote (verbatim, copy/pasted)
- Source (reviews, tickets, IG comments, TikTok search, etc.)
- Date (when you captured it)
- SKU (or product line)
- Inferred angle (your interpretation in plain English)
- Funnel-stage guess (TOF/MOF/BOF)
Here is what that looks like in practice.
| Quote (verbatim) | Source | Date | SKU | Inferred angle | Funnel-stage guess |
|---|---|---|---|---|---|
| “I wanted to love this but I can’t figure out sizing - the chart makes no sense.” | Support ticket | 2026-07-30 | Core Tee | “Sizing confusion” proof + clarity creative | MOF |
| “Does this work for oily skin or is it only for dry?” | Ad comment | 2026-07-30 | Serum A | Segment-specific promise + routine fit | TOF |
| “Shipping took 9 days. Product is great but that’s too long.” | Review | 2026-07-30 | Bundle 2 | Preempt shipping objection + set expectations | BOF |
Two non-negotiables.
First: the quote stays verbatim, even if it is unflattering or poorly written. That awkward phrasing is often the hook.
Second: the “inferred angle” is not a thesis statement. It is a usable creative instruction like “show how sizing works in 10 seconds” or “prove it’s not greasy with a tissue test.”
Triage: cutting 40 raw signals down to the 5 angle candidates that earn a brief this week
If your sheet is working, it will feel chaotic by minute 70. Good.
You are supposed to end with 40-ish raw signals and then kill most of them.
Here is a triage system that stays fair and doesn’t turn into politics.
Step 1: cluster signals into rough themes (10 minutes)

You are not naming campaigns. You are making piles: “shipping anxiety,” “results timeline,” “taste,” “fit,” “durability,” “ingredient fear,” “is this a scam.”
Step 2: apply the “two independent quotes” rule (10 minutes)

Adopt this as law: an angle candidate needs at least two independent customer quotes before it earns a brief.
Independent means different people, different threads, ideally different sources. A review plus a ticket beats two comments from the same angry guy.
Step 3: score what’s left with a simple rubric (15 minutes)

I do not love elaborate scoring models. People fake them.
Use four binary checks instead:
- Specificity: is there a concrete detail (time, size, symptom, scenario) or just vibes?
- Stakes: does the quote reveal a real fear or real desire, not a polite compliment?
- Creative convertibility: can you imagine a 15-30 second ad structure immediately (demo, proof, comparison, objection)?
- Novelty for your brand: is this underused in your last 30 days of ads?
Angles that hit 3-4 checks survive.
Step 4: pick 5 angle candidates (5 minutes)
The output target is 5 briefable angle candidates per week for a brand shipping 8-12 variants.
If you pick 12 “maybe” angles, what you really did is assign nobody anything.
The output artifact, where it lives, and how it hands off to the angle matrix
The artifact is not the raw sheet. The artifact is the weekly distillation.
Make it a one-page doc (or Notion page) titled like this:
- UGC Intel - YYYY-MM-DD (Week of)
Inside, you include:
1) Link to the raw capture sheet
2) The top 5 angle candidates, each with:
- 2-4 verbatim quotes (minimum two)
- the SKU
- the funnel-stage guess
- one sentence on “what the ad must show”
3) A “do not ship” graveyard of 3 angles you intentionally killed (so you don’t resurrect them next week)
Where it lives matters because you will want to audit it later.
Put it in a folder anyone on growth can find, like:
- `/Growth/Creative/UGC Intel/2026/`
Keep every artifact dated so a quarter later you can trace which signals became winning ads and which were just loud.
Then you hand off the 5 angles into your funnel-stage planning doc. The clean way is to drop each candidate into your matrix before anyone writes a script, using the UGC message angle matrix by funnel stage.
This is also how you avoid restarting from a blank page each quarter. Your campaign plan stays stocked because this routine keeps feeding it, which fits neatly inside a broader UGC campaign framework.
The 30-minute Monday review that consumes the artifact and assigns briefs to owners
The Monday review is not “let’s discuss.” It is a handoff meeting.
Thirty minutes. Cameras optional. Decisions required.
Agenda that works:
1) 5 minutes: read the top 5 angle headlines out loud
2) 10 minutes: sanity check the quotes (do we actually have two independent quotes per angle?)
3) 10 minutes: assign owners and due dates for briefs (one owner per angle)
4) 5 minutes: pick what gets produced first (based on what you can ship this week)
The meeting ends with five owners, five briefs assigned, and a production queue that doesn’t depend on “who has time.”
If your team is bigger than three people, this review plugs into a fuller weekly calendar. The bigger system is laid out in the AI UGC production workflow for growth teams.
One operational detail I would keep strict: the owner is responsible for turning the angle into a brief with a hook, a proof element, and a clear ask. The group is allowed to edit. The group is not allowed to “co-own.”
Anti-patterns: the unlimited-scroll research session, the screenshot folder nobody reopens, and the competitor-copy trap
You can do all of the above and still fail if you fall into three predictable traps.
Unlimited-scroll “research”
This is when someone opens TikTok and calls it a work block.
A routine has a timer and an artifact. If you cannot point to the dated doc, it was entertainment with a business costume.
The screenshot folder nobody reopens
Screenshots feel productive because they create a sense of capture.
But a screenshot is not searchable, not comparable, and not briefable. If you want to keep screenshots, fine - paste them next to a row that includes the verbatim quote and your inferred angle.
The competitor-copy trap
Competitor ads are the easiest input because they are already packaged like ads.
The cost is you become a remix account. Worse, you import their assumptions about what the buyer cares about.
Use competitor libraries for structure (how they open, how fast they prove, what offer stack they use). Use your VoC to decide what you actually say.
Making the routine survive a bad week: named owner, backup owner, and the 20-minute minimum viable version
The real test of a routine is whether it survives the week where everything breaks.
So treat this like ops, not inspiration.
Name an owner and a backup owner
One person owns the block. One person is explicitly the backup.
If the owner is out, the backup runs the 20-minute version. Nobody asks permission. That is the whole point.
The 20-minute minimum viable version
When the week collapses, do this and only this:
- 20 minutes on last week’s comments and support tickets
No trends. No competitor library. No browsing.
You still capture rows. You still produce a dated artifact, even if it only contains 2-3 angle candidates.
Why this keeps compounding
Your best inputs are your own customers, and that supply increases as you run more ads.
That is the quiet loop: better creative generates more comments and tickets, which generates better language, which generates better creative. The capture station in your broader flywheel is what keeps this stocked, as described in the UGC content flywheel for ecommerce brands.
One last constraint worth saying out loud: if production is now cheap - roughly $5 per AI UGC video versus roughly $200 per creator video - then “we need more ideas” is not solved by another brainstorm.
It is solved by enforcing this block and shipping the five angles.
If you want to turn those five angles into actual ad variants quickly (without waiting on creator logistics), you can build them in EzUGC and keep the routine tight: capture on Monday, produce in minutes, test the same week. When you are ready, start in the EzUGC app.
Frequently asked questions
Direct answers pulled into the page to improve answer-first relevance and scanability.
Written by
Ananay Batra
Founder
Founder & CEO - Listnr AI | EzUGC