An orchestrator plans the work, specialist agents execute it, and every mutation pauses at an approval gate. Search, PMax, Demand Gen, BigQuery joins, weekly digests — across all your Google Ads, GA4, and BigQuery accounts.
Search, PMax, Demand Gen end-to-end: create campaigns, build asset groups, bulk negatives, geo cleanup, bid-modifier experiments — all from a goal in plain English.
Every mutation pauses at a per-step gate. Approve in the app, by email link, or pre-approve. Reject a single step and the rest of the plan keeps running.
Per-account memory, per-org cross-task memory, and recent-action history are injected into every plan. The agent remembers what it shipped yesterday.
Every run produces a versioned plan with timestamped marker, replay-able artifacts, and one-click restore to any prior version.
Turn any task into a cron schedule with per-IANA timezone. Re-evaluates against live data — never proposes yesterday's actions twice.
Clerk-powered orgs with admin gating. Share skills / assets cross-org with one toggle. Per-org audit, integrations, and notification prefs.
Curated playbooks the orchestrator auto-picks based on your goal. Bring your own — markdown editor, instant publish, optional cross-org share.
First-class BQ context picker, NUMERIC auto-coercion, and a Vercel Python sandbox for matplotlib charts, video, and stats — rendered inline.
Every action — successful or failed — lands in the audit log keyed by actor, account, and resource. Spot duplicate work before it ships.
Pull last 7 days of account metrics, top 10 campaigns by cost, top 10 search terms, and flag every campaign whose CPA shifted >25% WoW — with 3 ranked action items.
Audit search terms across all selected accounts. Identify wasteful terms by semantic match ("login", "download", "alternative to X", competitor names) — not by Google's unreliable conversion column.
Count current headlines / long_headlines / descriptions / images / videos against Google's "Excellent" rating targets. Auto-generate the missing assets, upload them, link via setup_pmax_asset_group.
Pull 30 days of device / geo / ad_schedule data → flag wasteful segments → create a campaign_draft → propose bid_modifier deltas → convert to a 50/50 traffic-split experiment for 14 days.
Exclude a country across every ENABLED campaign in every connected sub-account. dryRun=true first to see the blast radius, then approve, then run for real.
ROAS<1 or CTR<3% campaigns flagged with root-cause analysis. Auto-email a Resend-rendered digest to your approver list every weekday morning.
Use a BigQuery mart joining Google Ads cost with the affiliate network's backend conversions as the single source of truth — campaign-level pause/budget decisions are driven by mart ROAS, not unreliable Google Ads tracking.
Across every selected account, find disapproved / area-of-interest-only / site-suspended ads. Email the full list to your team. Or auto-skip when there's nothing to report.
We start with Google Ads — the rest of the Google marketing surface is on the roadmap.
Bring an account, write a goal in plain English, and watch the orchestrator plan out the work step by step.