Create an optimizer agent
An optimizer is an autonomous analyst that watches your campaigns and proposes or makes changes toward a target you set. You build one from a kit — a ready-made setup for a platform and job.
Create it
- Open Kits (opens in a new tab), pick a kit (Paid Media, E-Commerce, or Monetization), and select Use this kit.
- Connect the platform (if it isn't already) and choose the ad account it runs on. An optimizer runs on one account, so create a separate agent for each account you want covered.
- Set it up across its tabs (below).
- Publish it. An optimizer only runs on its schedule once it's published.
The agent page
The agent page opens with a header showing its goal and publish state (with Duplicate and Activate / Deactivate). Below are four tabs.
Configure
The four tabs are the same for every kit — what changes is what's inside Configure. The steps below are the ad-optimizer setup (campaign scope and a target KPI). E-commerce and publisher (monetization) kits use this same tab for their own settings instead — their platform integration and sync or yield options (see the Kits pages).
Configure is a guided wizard with two steps — Platform, then Optimization. Alongside it, a Replay (last 7 days) panel estimates the impact of your current settings — proposals, pauses, bulk actions, and spend saved — and flags how many you've changed from the kit's defaults.
Step 1 · Platform
- Connected resource. Choose the connected integration (Meta Ads, Google Ads, TikTok, DV360, and so on) and the ad account whose campaigns this optimizer can evaluate — one account per agent.
- Allowed actions. Turn on exactly what the agent may do, with a live "X of Y enabled" count:
- Targeting dimensions it may adjust — which dimensions appear depends on the platform and kit. On Meta, for example: placement, device, operating system, geography, age, gender, audience, and schedule / dayparting; other platforms expose their own.
- Tiered actions, grouped by how broad they are — from surgical (within a single ad set or ad group, such as pausing or resuming an ad), through entity-level, to campaign-wide.
Step 2 · Optimization
Set your goals, scope, budget, pacing, and safety, plus how it analyzes and who gets notified.
- Scope. Pick a scope mode — a single campaign, selected campaigns, or all eligible — and optionally auto-enroll new campaigns. Narrow with status and objective filters, then choose exactly which campaigns the agent manages. (On Meta, objectives are Sales · Awareness · Traffic · Engagement · Leads · App Promotion.) Then set the optimization levels it may act on — the campaign and the level beneath it (ad set, ad group, or line item, depending on the platform). Syncing is account-level; use Sync campaigns to refresh the list.
- Success criteria. Set the primary KPI (for example View Rate, ROAS, CPA, CPC, CPM, CTR) and a target
value, plus a direction — whether the KPI should land above, below, or within a band of the target. Zimmer
sets the direction from the KPI (higher-is-better for ROAS or CTR, lower for CPA or CPC), and you can
override it. You can also
optimize for a second KPI with its own target, direction, and priority weight; when the two conflict, the
primary wins. A readout shows the campaign's current platform setup (objective, delivery optimization) and
reminds you that your target KPI is the optimizer's evaluation goal — it doesn't rewrite the platform's own
delivery or bidding.
- Per-campaign override. From the campaign list in Scope, open a campaign to give it a different KPI, target, and direction (plus its own budget guardrails) just for that campaign. Campaigns you leave alone follow the agent's defaults.
- Daily pacing. Off by default. When enabled, it pauses entities that hit a daily cap and resumes them the next day.
- Budget & bid control. Choose reallocation (shift budget between a campaign's sub-units — ad sets or ad groups — keeping the total constant) or elastic (total can grow or shrink with performance). Set a minimum spread, and cap how far budgets and bids can move (max increase / decrease %, with optional hard caps). Bid caps apply to all bid actions (for example ad set / ad group bid, target CPA, target ROAS, max CPC).
- Analysis mode. How the agent generates proposals — Judgment (weighs the curated evidence in two passes), Raw (the LLM works straight from the raw data, with no analyst curation), or Deterministic (statistically driven and most consistent — the same data yields the same proposals). Most teams keep the kit's default.
- Execution mode. Monitor (advice only), Approve First (proposals wait for you — the default), or Auto (applies changes automatically — proposal-only actions still wait for you).
- Notifications. Add email recipients and an optional digest, and connect Slack to post to a channel on a cadence you choose (for example, every run).
Brain
The agent's AI setup, in two parts:
- AI Config — the model and how it responds (its instructions and response style). Most teams leave the kit's defaults.
- Memory — facts, preferences, and corrections the agent carries across runs. Use Add Memory to write what it should remember, then set a type (fact, preference, correction, or instruction), a strength (from a Rule that always applies, down to a Note that stays available but isn't auto-applied), and a scope (this agent, or narrowed to a specific platform or campaigns). You can add or edit memories yourself.
Activity
This agent's own run history — when it ran, what it proposed, and what's waiting on you. You approve changes in Runs.
Settings
Basic agent details — its name and housekeeping (including deleting the agent). The optimization logic lives in Configure, not here.
Publishing & status
An agent is always in one of three statuses:
- Draft — still being set up; it never runs. Every new agent starts here.
- Published — live and running on its schedule.
- Archived — retired and kept for reference; it doesn't run.
Publishing runs a quick readiness check — a popup that confirms the essentials are set (Configure, triggers) and flags anything missing before the agent goes live. After publishing, edits are saved as a draft and don't affect the running agent until you publish again.
Next
- Kits — the kinds of optimizers you can build
- How your optimizer works · Runs