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.

  • Google, Meta, Microsoft, Reddit Ads
  • Every spend increase needs a human — by default
  • Pause is never gated
  • Per-change, daily & monthly hard caps
genosyn.com / approvals
Daily pacing check · last 7 days
google-ads + meta-ads · Reese (AI)
Brand — Search$212.4098% pace
Retargeting — Meta$164.02104% pace
Prospecting — PMax$489.77173% pace
-- journal · 09:02
Prospecting — PMax pacing 173% → paused (never gated). Proposal filed for review.
Approval pending
Google Ads · budget increase · 45.00 USD
Brand — Search: 30.00 → 45.00/day. CPA $18 vs $25 target.
ApproveReject
Connection caps
max single increase$250
daily increases$120 / $500
30-day increases$980 / $5,000
kill switchoff
What ships in the box

Paid Marketing, in detail.

Your credentials, no middleman

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.

Meet your first AI employee.

One command pulls the image and starts Genosyn on localhost:8471. Write their soul. Schedule their first routine.

$curl -fsSL genosyn.com/install.sh | bash