Bulk Activate rebuilt: local stats instead of Meta reads + honest custom date range
The bulk activation button no longer reads lists from Meta — candidates and their ad sets come from the local database (including the new ad set / creative stats level); only “activate” commands are sent to Meta.
The “Activate ad sets” button on the Rule Sets page has been rebuilt from the ground up.
What was wrong. The button pulled full campaign and ad set lists from Meta
for every account. Meta returns such lists in pages of at most 500 records — in
large accounts (500+ ad sets) older campaigns never made it into the response:
they passed the CPA condition, but their ad sets silently stayed off while the
report looked successful. Separately, the custom “From — To” date range was
actually computed as “N days back from today” — the “To” date was ignored.
What happens now:
- Both candidate campaigns (CPA filter) and their ad sets are resolved from the local database — including the new ad set / creative statistics level (RedTrack conversions per ad, history since February 16, refreshed every 30 minutes).
- Only batched “activate” commands are sent to Meta. No reads — no API limits and no “invisible” campaigns.
- Ad sets that already spent today are skipped — they are clearly running.
- The custom “From — To” range is applied literally, including ranges ending in the past. The 7d/14d/30d presets work as before.
- The confirmation message shows how many ad sets were activated and how many were skipped as already running.
Note: an ad set that never spent (created but never launched) has no
statistics and is invisible to the button. For re-enabling proven ad sets — the
primary use case — this limitation does not matter.