Ad grader: how to score an ad before launch
What an ad grader can check before launch (copy craft, where the eye lands) and why no pre-launch score can tell you which ad will win the auction.
What an ad grader can check before launch (copy craft, where the eye lands) and why no pre-launch score can tell you which ad will win the auction.
Six concepts are ready for Monday. You paste them into an ad grader and get numbers back: 82, 79, 74, 71, 66, 64. Budget is tight, so you launch the top three and park the rest. Two weeks later a colleague runs the 64 in a different ad set out of curiosity, and it beats everything you shipped.
Nobody did anything stupid there. The grade was asked a question it could never answer.
My own creative workflow has a pre-launch checker, and one rule was fixed early: it may never output a single score that pretends to rank ads by future performance. Here is why.
Short answer: An ad grader can check the craft of an ad before launch: whether the copy has a clear hook, a specific claim, a believable offer and a call to action, and where attention is predicted to land on a static. A grader cannot predict CTR or ROAS, because the auction, audience and offer are not inside the file.
The takeaways
An ad grader can check anything that is visible in the asset itself. That covers the copy and the layout, and it is a longer list than it sounds.
On the copy side: does the first line give a reason to keep reading, is the claim specific enough to be believed, is the offer stated or buried, is there one clear action? I wrote up the six checks I use as pass/fail checks you can run on a static or a UGC script.
On the visual side, for statics, a saliency model can predict where the eye goes first and in what order. If the face in the photo wins the first glance and the price sits in a cold corner, you know that before spending anything.
Vendors sort these tools into three jobs: rule checks, similarity to past ads, and performance prediction. The trouble starts with the third.
A pre-launch ad score cannot predict CTR or ROAS because most of what decides those numbers is not in the creative file. The same static will post very different results depending on who sees it, what the auction charges that week, which placement it lands in, and what happens on the landing page after the click.
Think about the 64 from the opening. It lost the grade because its headline was long and its hook came late. It won the account because it named a price objection the audience had and the other five ignored. No model scoring the file could know that this audience cared about price more than speed.
Prediction tools trained on libraries of past ads add a second problem: they learn what worked for other advertisers, in other auctions, with other offers. When a vendor quotes an accuracy figure, ask what was predicted, against which holdout, for which kind of account. Without those answers the number is decoration.
A useful ad grade shows you what failed and where, in words you can act on. A single number between 0 and 100 hides that.
When my copywriting critic flags a concept, it fails a named principle and quotes the line that broke it: Offer, fail, "Discover what our app can do for your team." The designer reads that, sees there is no offer in the sentence, and fixes it in five minutes. Compare "Clarity: 6/10". A 6 starts a debate about taste. A quoted line with no offer in it ends one.
The same goes for attention. "Predicted first fixation on the model's face, CTA is fourth in scan order" tells you what to move. A "visual score" of 71 does not.
The format I trust: every check is binary, every failure points at a line or region, and the output is advisory. A human decides whether the failure matters for this ad. "Always put the price in the headline" is wrong for an awareness ad, and a grader nobody can overrule pushes you toward the average.
Use the grade as an entry ticket and let the auction rank whatever gets in. In practice that is a three-step loop.
First, run every concept through the checks and fix what fails. Most fixes are small, like moving the price up or cutting a warm-up sentence.
Second, launch every variant that passes, even the ones you like less. The variant you would have parked is the one most likely to carry a reason to buy you hadn't thought of. If budget can't carry six variants, cut by concept overlap (two ads making the same argument) and leave the grade out of that call.
Third, judge results with the noise in mind. A new ad's first two days are mostly luck, so I pull early numbers toward what the format usually does. An ad that still leads after that pull earns more budget.
Adscalr's ad grading stops at craft, on purpose. The copywriting critic scores every concept against six direct-response principles, pass or fail, with the offending line quoted. For statics, DeepGazeIIE (a saliency model trained on human eye-tracking data) predicts the heatmap and scan order. I covered how far to trust that in attention heatmaps for ad creatives.
Both are advisory. Nothing gets rejected automatically, and nothing ships without a person approving it. Neither check claims to know your future CTR.
The ad creation page shows where those checks sit in the full creative loop, from competitor angles and audience quotes to your own performance data. The grade's job is to catch the mistake you would be embarrassed to pay for. Picking the winner is still the job of spend.
This is the thinking behind Adscalr.
See the product →