01, The frozen 5 KPIs
RoastIQ scores every ad on the same five KPIs in the same order with the same weights. The names are frozen. The weights are frozen. This is not a stylistic choice, it is the only way a score from March can be compared to a score from October, or one client's ad compared to another's at the same benchmark percentile.
Beat the Skip carries the heaviest weight because in feed environments, TikTok, Reels, Shorts, nothing else matters if the viewer is gone in two seconds. Get Noticed and Brand Impact share the middle weight band. Build Brand sits at 15%, not because long-term equity is unimportant, but because for a single ad it is the slowest signal to move.
02, How the composite is computed
The composite is a weighted sum, not an average. The difference matters when one KPI is dragging.
For our worked example, Beat the Skip 70, Get Noticed 65, Brand Impact 45, Sell Proposition 68, Build Brand 60, the math is:
03 · Check the verdict gate first
Meta, unsupported cohorts and missing lineage remain Directional only. An eligible recommendation can describe strengths or proposed edits, but it is not a spending instruction. Review the source evidence and record the human decision separately.
04 · Four different evidence questions
- Named model: which system produced this result?
- Validation estimate: what was tested, on which held-out material and against which outcome?
- Cohort coverage: how closely do the saved peers match the creative and its context?
- Run stability: were repeated runs actually measured, and what varied?
Missing historical evidence stays Not recorded. Attribute certainty is not a calibrated probability, a large cohort does not automatically validate the result, and a completed human-coder agreement study is not established.
05, Reading an illustrative decision trace
This authored example is not a saved customer run. Its scores and recommendations are illustrative and do not establish validation.
Every analysis stores a Zod-validated record. This is what makes a RoastIQ verdict auditable instead of vibes-based. A trimmed example:
Read each score alongside its supporting frames or transcript passages and the specific edit it suggests. Check the benchmark context and evidence limits before using a result to make a decision.
06, Worked example: composite 62
A 9:16 brand ad for a mid-market beauty client. Eight seconds. Product-led, with a brand logo arriving late at 6.8s. Here is the full KPI table the report returned.
| KPI | Weight | Score | Contribution | Confidence | Band |
|---|---|---|---|---|---|
| Beat the Skip | 25% | 70 | 17.5 | high | Strong |
| Get Noticed | 20% | 65 | 13.0 | high | Moderate |
| Brand Impact | 20% | 45 | 9.0 | medium | Moderate |
| Sell Proposition | 20% | 68 | 13.6 | high | Moderate |
| Build Brand | 15% | 60 | 9.0 | medium | Moderate |
| Composite | 100% | 62 | 62.1 | high | Sharpen |
The verdict is Sharpen. The composite is in the 55–69 band, no KPI is under 45, so it does not trip the Rebuild double rule. The weak spot is unambiguous, Brand Impact at 45, and the trace pinpoints why: the first distinctive brand asset does not appear until 6.8s of an 8-second cut. The recommendation is mechanical: move the asset before 2.0s.
07, Three reviewers, three reads
Consider an illustrative review disagreement: different reviewers may choose different actions from the same creative. This is a teaching example, not a recorded three-person study.
Saw a clean hook, a clear product shot, no obvious craft issue. Pattern-matched to ads that performed last quarter. Did not notice the logo timing.
Bothered by the late brand entry and the flat closing card. Felt the whole spot lacked a distinctive idea. Wanted to go back to brief.
Argued the hook and proposition were earning their weight. Suspected the brand asset placement was the issue, but had no way to prove it inside the meeting.
In this authored example, the trace makes the proposed edit explicit: inspect the delayed brand cue and test an earlier one. It does not prove which reviewer is right, how long an editor needs or whether the edit improves an outcome.
08, The honest caveat
RoastIQ scores are model diagnostics, not measurements. The separate platform-native attribute model is evaluated against TikTok CTR and YouTube view counts; this does not validate the five-KPI composite. As of 2026-08-25, held-out out-of-sample Spearman ρ is between +0.33 and +0.40 across those outcomes. Cohort coverage and repeated-run stability require separate evidence.
What this guide does not claim:
- That a 62 predicts ROAS, attributed sales, or in-market business outcomes.
- That a 62 predicts brand recall the way a survey would. Different construct.
- That Meta-Feed scores have the same validation depth, for brand ads on Meta, outcome data is sparse and the scores are directional defaults.
What it does claim, plainly: a Sharpen verdict with a Brand Impact score of 45 and a frame-level pointer to a late logo is more decision-useful than three smart people disagreeing in a meeting.
Keep reading
Hook rate vs thumbstop
Two metrics. Two questions. Which one are you actually answering?
Brand cue placement
Where the logo, palette, and proposition land, and why timing beats frequency.
Synthetic vs live test
When a simulated panel is enough and when it isn't.
The first two seconds
What earns the rest of the ad the right to exist.
Benchmark credibility
500 ads × 43 attributes = 21,500 data points. How the pool is built.
All six guides
The full creative analysis hub index.
Frequently asked
What does a composite score of 62 actually mean?
In this authored example, 62 is a raw diagnostic within the numerical Sharpen band. The evidence gate still controls the recommendation: Meta, unsupported or unknown coverage remains Directional only. The number is not a measured campaign outcome.
Can the KPI weights ever change?
No. The 5 KPI names and their weights, Beat the Skip 25, Get Noticed 20, Brand Impact 20, Sell Proposition 20, Build Brand 15, are frozen by product rule. Changing them would invalidate historical comparisons and benchmark percentiles.
Why are scores predictions and not measurements?
The platform-native attribute model has held-out Spearman ρ of +0.33 for TikTok CTR and +0.40 for YouTube views. Those estimates do not validate the five-KPI composite in this example. Neither model output measures ROAS, attributed sales or brand recall.
How do I know the verdict is trustworthy?
Inspect the saved model version, source pointers and cohort coverage. Historical missing fields stay Not recorded. Validation estimates, cohort coverage, attribute certainty and measured run stability answer different questions; none substitutes for the others.