Jev Daily

Matthew Berman gates his Meta ad loop on Jev before Claude runs

The architecture is posted in full, the spend numbers are not.

Matthew Berman posted a five step architecture for an autonomous Meta ads loop where Jev holds the decision and Claude only writes copy after Jev clears it.

Matthew Berman
@TheMattBerman
X
don't murder winning ad hooks because your landing page can't close.
Oct 16, 2026 · View on X

Step one pulls ad metrics from the Meta API every 15 to 30 minutes, tracking spend, CPA against target, frequency, CTR against baseline, hours live and learning status. Berman also watches 6 hour velocity slopes, the idea being to catch a CPA spike before the 48 hour averages move.

The decision is four strings

Step two hands that to Jev, which returns a single JSON decision from four options, KILL, WATCH, SCALE or PATCH_PAGE_FIRST. The hard rules he publishes, and labels as tweakable per brand, are zero conversions with spend at or above 2x target equals KILL, CPA at or above 2.5x after 24 hours equals KILL, frequency at or above 3.5 with decaying CTR equals WATCH or KILL, and CPA at or below 0.8x with at least 8 conversions equals SCALE.

The part worth copying is step three. Every SCALE gets gated on a message match check, where Jev compares the ad hook, offer and CTA against the landing page H1, offer and CTA. A mismatch blocks the SCALE and fires PATCH_PAGE_FIRST instead, so a converting hook does not get killed for a landing page problem.

Jev 1.14 reads the opening frames

Step four runs three hook alignment checks on creative using Jev 1.14, which added image input. Berman checks the opening frames for whether copy is big enough on mobile and whether the visual hook, the text overlay and the verbal hook from the transcript line up, with the goal of flagging cut off text before CTR drops.

Only then does step five call Claude, which pulls winning hook structures and drafts three to five variations for new ad sets, one URL per set.

For people building on it, there are no results attached. Berman posts no spend figure, no CPA, no before and after on budget burn and no account size, so the claim that the loop never burns budget is his framing of the design rather than something measured. The thresholds are also stated as defaults to tune, which means the interesting work, picking the KILL line for your own CPA distribution, is the part the post does not do for you. Treat this as a wiring diagram for putting a cheap classifier in front of an expensive generator, which is the same shape as Berman's earlier run over 193,355 video hooks, not as evidence the gate pays for itself.

Know what Jev is good at before you bet on it

One email a day. Under three minutes. What builders found out about Jev yesterday.

Get the next one by email

Jev, read daily so you do not have to. The builds, the benchmarks, the criteria that worked and the cases where it lost, from the people shipping on TypeSafe AI's System One model.