BlogLifecycle4 min read

Weak ads die young. Winners are protected.

The morning lifecycle in full: the rules that pause, refresh and scale - and the day it killed our best ad set, which is where two of those rules come from.

99.48 zł≈ $27.63 · 7-day CPL of a winning ad set, the morning it was killed

Every morning, before anyone on our team is awake, the engine reads yesterday. It pulls insights for every live ad set, every ad in it, and the lead quality that came back overnight. Then it makes a small number of decisions and writes each of them down with the number that caused it. This is the lifecycle, and it is the part of Efekto we trust the least by design - because it spends money on its own.

The rules, named

  • Kill: an ad set that has spent seven days without a lead, or whose 7-day cost per lead sits above the client’s benchmark, is paused.
  • Quality kill: an ad set whose leads score below 0.6× the client’s average lead quality is paused regardless of CPL.
  • Ad kill: inside a live set, an ad that is losing on a 3-day window is paused on its own, so the set keeps its budget for the ads that earn it.
  • Refresh: a set whose creatives are wearing out gets new visuals with the same message, and the old ones are retired.
  • Scale: budget moves from the sets that lost to the sets that won, in small steps, because every budget edit resets Meta’s delivery a little.
  • Winner: an ad with a proven track record is written into a protected list that the publisher and the generator both respect.

And three safety rails that sit above all of them: at least one ad set always stays live, so a campaign never goes dark by itself; ads younger than two days are never judged, because a three-day window would sentence a one-day-old; and a set with five or more lifetime leads does not get a kill - it gets a new release.

The morning it killed a winner

In August, a solar installer we run had one ad set doing the work of a whole campaign. The “zero risk” angle had reached 46 leads at 35.89 zł (about $10) against a benchmark of 90 zł ($25). Naturally we wanted more of it, so six fresh ads were added to the same set to scale it.

Meta did what Meta does with new ads: it gave them the budget. Over two days the six newcomers spent 277 zł (about $77) and produced nothing. The winning ad, starved, produced less. The set’s 7-day cost per lead climbed to 99.48 zł ($27.63). The kill rule saw 99 above 90 and paused the set. The winner went down with it.

The rule was correct and the input was wrong. Young ads always look expensive. The engine was doing exactly what we had told it to.

What changed that day

Two things, both now in the product. First, quarantine: an ad set’s cost per lead is computed only from ads older than three days, and individual ads younger than two days are never judged at all. The age is read from the date in the ad’s name, so it does not depend on what the API remembers. A fresh ad can spend its first days looking terrible and nobody will hold it against the set.

Second, freeze: an ad set with a confirmed winner is closed to top-ups. The generator drops it from the list of sets to fill, the publisher refuses to add new ads to it, and the slot in the client’s ad set quota stays occupied. Six fresh ads cannot take a winner’s budget if six fresh ads cannot enter the set.

Later we went further. A set with five or more lifetime leads that trips the kill rule does not get paused at all. The weak ads inside it are paused, the set stays live, and the generator receives a release directive: rewrite nothing, keep the hook, the primary text, the headline and the on-image copy word for word, and change only the visual layer. Track record earns a refresh, not a funeral.

Why not just be more careful

Because a human media buyer would have made the same mistake, and has, many times. The seven-day CPL was 99. The benchmark was 90. Any reasonable person looking at that dashboard pauses the set. The difference is that a human forgets the lesson after three good weeks, and a rule does not.

The winner came back the same day, with only its two proven ads live and its angle frozen. It has not been touched since. Every rule in this post has a morning like that one behind it. None of them came from a whiteboard.

- Jakub Zwoliński

Founder, Lemon Agency · Efekto · September 8, 2026

Ready when you are

See the efekto.

7 days free from your campaign launch. Your ad account, your budget, our work. Nothing spends before you say go.