Adding AI agents to a broken GTM stack is dangerous.

40

agents, after an audit of a B2B2C org, was what actually drove ROI.

AI agents for GTM

The scope of work

Every day a new tool appears promising AI agents and AI driven process. Outbound, inbound replies, field updates, dashboards, video. Adding them costs thousands a month, and the question nobody asks first is do they really drive ROI, or justify the spend?

We audited a B2B2C org and reduced that footprint from nearly 40 agents, duplicating each other and overwriting fields, down to 2. That saved their outbound.

How do you tell which agents are earning their keep?

Step 1

We inventory every agent you are running

  • What triggers it, and what it writes to
  • Whose budget it sits on, if anyone’s
  • Nothing written, changed or deleted
THE INVENTORY NOBODY HAD
Agents running40
Writing to the same fields11
On a named budget line6
With an owner2
Read only. We start by writing down what is actually running.
Step 2

We score each one against a revenue activity

  • Does it protect revenue that was leaking
  • Does it produce revenue nobody had time to chase
  • If neither, it does not survive
SCORED AGAINST A REVENUE ACTIVITY
No traceable revenue activity31
Duplicating another agent7
Protects or produces revenue2
If it cannot be traced to revenue, it does not survive the audit.
Step 3

We keep the ones a rule cannot replace

  • A fused signal line across sources
  • A memory line of what happened here before
  • Everything else goes back to being a rule
WHAT THE TWO ACTUALLY DO
Signalfused across sources into one line
Memorywhat happened here before, cited
Nothingelse. Rules do the rest
Both are language problems, not logic problemsno rule writes a sentence a rep will actually read
Step 4

We constrain what the model may say

  • Every line cites the note it came from
  • It never infers an event not in the record
  • A rep can click through and check it
THE CONSTRAINT THAT MAKES IT TRUSTED
Cites the source noteevery line
Never infers an eventnot in the record
A rep can click throughand check it
A model that cannot cite its source does not get to speak.
Step 5

We put the output where a human reads it

  • Into Slack, in the format they already read
  • Reaction based feedback, no forms
  • A dead agent is obvious within a day
WHAT IT RETURNED
38 offagents retired, outbound recovered
6 hrsa week back to the SDR team
2 daysto spot a failure, down from weeks
Spend cut, and the two that stayed are traceableeach to a revenue activity, each with a named owner
Step 6

You own the pipeline

  • Built inside the systems you already own
  • Each agent has a named owner and a budget line
  • Turn the model off and the pipeline still runs
Book time with us →
SapwoodYou
Turn the model off tomorrow and the pipeline still runs. That is the test.

What was running, and which two were worth keeping.

What is running, and why

What we found: Nobody has a list. Agents get added by whoever is evaluating a tool that month, each with its own credentials, its own write access and its own idea of what a field means. At 40 of them, several are writing the same record within the same hour.

What we did: A full inventory first: every agent, what triggers it, what it writes to, whose budget it sits on. Then the question each one has to answer, which is what revenue activity it protects or produces.

The numbers
40agents found, none of them inventoried
11writing to the same five fields
$0of attributed revenue on 31 of them
Where an agent earns its place

What we found: The pitch is always breadth. In practice an agent earns its keep in one of two ways: it protects revenue that was leaking, or it produces revenue nobody had time to chase. Everything else is a demo.

What we did: Each agent scored against a revenue activity it can be traced to. If it cannot be traced, it goes. The two that survived were doing work no rule could do and no human had time for.

The numbers
2 of 40traceable to a revenue activity
6 hrsa week returned to the SDR team
1 ownerper agent, named, with a budget line
Delivery and the feedback loop

What we found: An agent that writes silently into a CRM is unauditable. Nobody notices when it is wrong, and nobody notices when it stops. Most of the 40 had been failing quietly for weeks.

What we did: Output goes where a human sees it, in Slack, in the format they already read. Reaction based feedback tells you which lines were useful without anyone filling in a form, and a dead agent is obvious within a day.

The numbers
Visibleevery write surfaced where a human reads
2 daysto notice a failure, down from weeks
Reactionfeedback without a form
How many agents are writing to your CRM right now?We will inventory every one, score it against a revenue activity, and tell you which ones are earning their keep. Free, and the write up is yours either way.
Get a free audit →

Case study: 40 AI agents overwriting each other's fields and burning tokens, hourly.

What was running
IntentStageOwnerLead scoreNotes

Forty agents across five tools, all writing to the same handful of fields. Eleven hitting the same five every hour, overwriting each other and billing tokens on every pass.

After the audit
IntentStageOwnerLead scoreNotes Signal lineMemory line

Grouped by source, then scored against a revenue activity. Thirty eight could not be traced to one. Two could, and both do work no rule can do.

HubSpotZoomInfoSalesforceGongApollo

Outbound recovered, spend cut, and the two that stayed each have a named owner.