An AI employee on your ad accounts. With spending caps it cannot talk its way around.
Paid Marketing gives an AI employee read-first access to your ad accounts — campaign spend, pacing, GAQL and Insights reports — and a deliberately tiny set of levers: pause, enable, change a budget. Every spend increase queues in the Approvals inbox by default; pausing a runaway campaign never waits for anyone. Every authorized change lands in a SQL ledger, so what the AI spent is a query, not a guess.
Each platform connects with credentials your company owns — a Google Ads developer token on your own MCC, a non-expiring Meta system-user token, a self-service Microsoft dev token, an instant Reddit app. No partner program, no vendor in your data path.
Caps above approvals
Per-change, rolling 24-hour, and rolling 30-day limits on authorized budget increases, plus a kill switch — enforced on every path, so even a human approval cannot exceed a hard cap.
Approvals that reach you
A budget raise or campaign enable queues an Approval with a before→after snapshot; owners and admins get bell, websocket, and web-push. If the campaign changed by the time you approve, the replay aborts instead of firing stale.
The emergency lever stays fast
Spend-decreasing actions — pause a campaign, lower a budget — never wait in a queue. A runaway campaign at 2am gets paused first and explained after.
A ledger, not a log line
Every authorized delta is a row in the AdSpendEvent table: connection, employee, campaign, signed amount, approval id. “How much did this employee authorize this month?” is SQL.
A path for the gatekept platforms
LinkedIn, X, and TikTok gate their ads APIs behind months-long reviews — so the documented path is the built-in browser with pinned hosts, approval-gated form submits, and human take-over for logins and 2FA.
With AI employees
A performance marketer on the roster
The Performance Marketer template ships a Soul that treats budget discipline as the job: cite spend data for every claim, escalate anomalies instead of quietly fixing them, and never raise a budget without an approval.
Daily pacing check
A Routine reads every granted ad account each morning, judges pacing over a 7-day window (platforms legally overdeliver on single days), flags zero-delivery campaigns, and treats “couldn’t read the account” as itself an alert.
ROAS against real revenue
The weekly report joins ad spend to GA4 conversions by UTM campaign — and where you run Finance in Genosyn, to actual invoiced revenue, not the platform’s self-graded attribution.
Proposals a CFO can approve
Budget changes arrive in the Approvals inbox with current budget, proposed budget, evidence, and worst-case daily blast radius — a ten-second decision.
Questions
Frequently asked.
Which ad platforms are supported?
Native Integrations for Google Ads, Meta (Facebook/Instagram) Ads, Microsoft Advertising, and Reddit Ads — the four whose APIs let a self-hosting company bring its own credentials without a partner-program review. LinkedIn, X, and TikTok are served by the built-in browser tools with human-approved submits until their API access programs become tractable.
Can the AI create campaigns or ads?
Not in v1 — deliberately. The mutation surface stops at pause, enable, and budget changes, all recorded to a ledger and gated by caps and approvals. Campaign authoring earns its way in once the read-and-lever loop has proven itself on your account.
What stops it from burning my budget?
Five layers: every spend increase queues a human Approval by default; per-change, daily, and monthly hard caps run even on approved replays; a kill switch blocks all mutations per Connection; approvals snapshot before-state and abort on drift; and everything lands in the AdSpendEvent ledger. Also set the platform’s own account spending limit — the docs insist on that backstop.
Do I need my own API access on each platform?
Yes — that’s the point. Google’s auto-granted Explorer developer-token tier, Meta’s system-user tokens, Microsoft’s self-service dev token, and Reddit’s instant OAuth apps all work for a company managing its own accounts, with no human review. The docs walk through each, including the Google consent-screen trap that silently expires refresh tokens every 7 days in Testing status.
What does it cost?
Nothing beyond your model usage — the platform APIs are free, and Genosyn is open source and self-hosted. There is no per-seat ads-tool subscription and no aggregator in the middle.