The multi-channel marketing OS

When AI gets asked, does your business come up?

See where you rank inside AI answers — then run the ads, posts and local work that change them. The agent does the work. You keep the veto.

Free plan, no card, no countdown.

AI Visibility · weekly run · 2 min ago

ChatGPT

#2

↑ 3

Gemini

#4

↑ 1

AI Overviews

#1

↑ 2

AI Mode

#6

— 0

Grok

#3

↑ 5

Coverage · 25 points

Share of voice · who the answers name

You38%
Summit Home Co.26%
Front Range Pros19%
Mile High Services11%

Shift $35/day into “Denver — Service Pages”

The four grid points where you are unnamed all sit north of the city. ROAS 5.1 over 14 days, comfortably above your 2.5 break-even.

ApproveReject

Publish 3 location posts · Instagram, TikTok, YouTube

Drafted from your brand profile, scheduled for Thursday 9:00. One target per platform, each with its own status.

Awaiting review
Spend cap enforcedROAS floor 2.5Every call logged
AI answer engines
5AI answer engines
Channels connected
10Channels connected
Agent actions
40+Agent actions
Unapproved spends
0Unapproved spends

Measured on

ChatGPTGeminiAI OverviewsAI ModeGrok

Marketing broke into pieces, and one of them is new.

01

Buyers ask an AI first

You have never seen what it answers about your category.

02

Six logins, no compounding

Nothing compares, so the thing that works never gets more budget.

03

Advice is not work

A recommendation still needs somebody with a free hour.

Where the new search happens

Rank tracking for AI answers

Your map pack rank has been measurable for a decade. The answer an AI gives about your category has not been.

  • A grid of points, not one lucky sample — answers change block to block.
  • Daily, weekly or monthly runs, all stored, with per-surface trends.
  • Share of voice: who the answers recommend instead of you.
ChatGPTGeminiAI OverviewsAI ModeGrok

The question

“Who should I call for a roof repair in north Denver?”

Who it named

  1. 1Summit Home Co.
  2. 2Your businessYou
  3. 3Front Range Pros

Asked from 25 points across the service area — because the answer changes block to block.

One place

Paid, organic, local and search — in one system

Meta Ads

Campaigns, budgets, status

Read + write

Google Ads

Campaigns + daily metrics

Read-only

Facebook Pages

Images, video, scheduling

Publish

Instagram

Posts and Reels

Publish

TikTok

Chunked video upload

Publish

YouTube

Long-form and Shorts

Publish

Search Console

Queries, clicks, impressions

Read-only

GA4

Traffic and sessions

Read-only

Google & Apple Maps

Geo-grid map rank

Rank tracking

AI answer engines

All five, on a schedule

Rank tracking

An agent that acts

It does the work. You keep the veto.

Not a chatbot with a to-do list. A tool-calling agent with a gate in front of every action and a ceiling it cannot lift.

A request

From you, the agent, or your own AI client

40+ typed tools

A fixed catalogue. No free-form access to your accounts

Risk tier + guardrails

Checked before the call runs, every time

Runs now

Reads, and reversible changes inside the app

Waits for you

Anything that spends money or leaves the building

Hard floorsDaily + monthly spend capsROAS floorGeo allow / blockBlocked creative anglesEvery call in the audit log

Autonomy you hand over

Start at approve-everything. Move a tier to autopilot when you trust it — it never widens itself.

Money caps it cannot argue with

No prompt, no setting and no model can switch a spend cap or ROAS floor off.

It answers in the Terminal

Ask in plain language. Approval cards drop straight into the conversation.

Your assistant · marketing-os

You: which ad set is dragging our CPA up this week?

→ get_ad_performance · read · ok
→ propose_budget_change · high · awaiting approval

Assistant: “Retargeting — Broad” is 41% of spend at a 1.8 ROAS against your 2.5 break-even. I staged a cut from $90/day to $55/day — nothing has changed yet.

Bring your own assistant

Or run it from the AI you already use

Claude CodeClaude DesktopChatGPTCursorVS CodeGemini CLIWindsurf
  • One remote URL — nothing to install, no local process.
  • Keys scope to a single business, and to read-only.
  • High-risk calls answer “awaiting approval”, never fake success.
  • Apache-2.0 skills pack teaches your client to drive it.

For agencies

Built for the twelfth client, not the first

Every client is its own business with its own economics, ceilings and access list.

One screen, every client
Pacing, ROAS, open approvals, failed publishes.
Per-business roles
A strategist on two accounts sees two accounts.
White-label portal
Your brand, on your own verified domain.
Reports that send themselves
Branded PDF, emailed on your cadence.

Clients · this month

Your logo, your colours

Northside Dental

92% of cap

ROAS

4.2

2 approvals

Ridgeline Roofing

61% of cap

ROAS

3.1

Healthy

Cedar & Co. Salons

78% of cap

ROAS

1.9

Below floor

Apex Auto Glass

34% of cap

ROAS

5.6

Healthy
Ranked by what needs a human first · reports go out Monday

Honestly

Against a Meta-only ad tool

Channels

Meta ads only
10, paid through local

AI search visibility

Not offered
5 engines, geo-grid, scheduled

What the AI does

Writes you a recommendation
Calls the tool itself

Spend safety

Per-action confirmation
Caps, ROAS floor, geo rules

API key scope

Organization-wide only
Per business, per permission

Agency features

Advertised, not documented
Roll-up, roles, portal, reports

Where we are behind: Google Ads is read-only in this release. Meta is the channel we write to. Better you read that here than find it in week two.

Pricing

Start free. Pay when it is doing the work.

The free plan is not a countdown — no card, no expiry, one business and a monthly allowance of agent tool calls. Paid plans add businesses, seats and a much larger allowance.

Loading plans…

Every plan includes every dashboard and every channel we support — the tiers differ in how many businesses and people you bring, how many agent tool calls you get a month, and the agency features. Change or cancel from the billing portal at any time.

How it works

Four steps, no surprises

  1. 1

    Paste your URL

    We read the site and draft your brand, services and economics.

  2. 2

    Connect channels

    Ads, pages, profiles and analytics — one or all of them.

  3. 3

    Set the ceilings

    Spend caps, a ROAS floor, the geos you will run in.

  4. 4

    Work the queue

    The agent proposes and publishes. You approve or reject.

Tokens encrypted at restOnly the accounts you connectDisconnect and delete anytimePrivacy Policy

FAQ

The questions we always get

Can it spend money without me?

Not unless you decide it can. Anything that touches spend or publishes outside the app stages a proposal in your approvals inbox and changes nothing until you release it — new campaigns are always created paused. Per-business spend caps, a ROAS floor and geo rules are checked before any call runs, and those only ever refuse. If you later want a tier to run unattended, you grant that explicitly and can revoke it the same day.

What does AI search visibility actually measure?

We ask ChatGPT, Gemini, Google AI Overviews, Google AI Mode and Grok the questions your customers would ask, from a grid of points across your service area. For each point we record whether the answer names you, where you sit, and which other businesses it recommends. Runs are stored, so you get per-surface trends and a share-of-voice leaderboard rather than a screenshot.

Which channels are live right now?

Meta Ads reads and — after your approval — writes. Google Ads is read-only in this release. Publishing is live for Facebook Pages, Instagram, TikTok and YouTube. Search Console and GA4 are read-only. Geo-grid rank tracking covers Google and Apple maps plus the five AI answer engines.

Can I drive it from Claude, ChatGPT or my editor?

Yes. Marketing OS exposes a remote MCP endpoint — one URL, no local process — and any MCP client (Claude Code, Claude Desktop, ChatGPT, Cursor, VS Code, Gemini CLI, Windsurf) gets the same tool catalogue the in-app agent uses, gated identically. Keys are confined to one organization and can be narrowed to a single business and to read-only. We also publish an open-source, Apache-2.0 skills pack.

I run an agency. What do I get?

A roll-up across every client with pacing, ROAS, open approvals, failed publishes and integration health on one screen; per-business roles so a strategist sees only their accounts; a white-label client portal on your own verified domain; and scheduled client reports delivered as branded PDFs. All shipped, not roadmap.

What does the free plan actually include?

Every dashboard and every channel we support, on one business, for one person, with a monthly allowance of agent tool calls over MCP. No credit card, no expiry date and no feature stripped out to make it useless — the paid tiers add more businesses, more seats, a much larger tool-call allowance and, higher up, the agency features. If you stop paying, you land back on free rather than being locked out of your own data.

Do I have to stop using Ads Manager?

No. Everything is written through the official Meta Marketing API and the platforms’ own publishing APIs, so anything created here is fully visible and editable in Ads Manager, Meta Business Suite, TikTok and YouTube Studio. Use both side by side.

What if it gets something wrong?

Reject the proposal and nothing happens — the rejection is recorded and feeds future suggestions. Every call, approved or not, lands in an audit log with its input, its result and any guardrail that blocked it, and budget and status changes store the state they changed from.

Find out what the AI says about you

Paste your website. We read it, build your brand profile and run your first visibility check.

We reply within one business day

Talk to us about your marketing

Questions about Marketing OS, the channels it covers, running it for a book of clients, or whether it fits your business? Send a note — a human reads every message.

Prefer email? contact@keyescode.com

We use your details only to reply — see the Privacy Policy.