GTM Systems
Your GTM Stack Is Not a GTM System
Owning fourteen tools is not the same as owning a system. A system exists when decisions, states, ownership, feedback and exception handling are designed on purpose. Here is how to tell the difference and what to do about it.
- Author
- Felipe Soza
- Published
- Updated
- Reviewed
- Read
- 10 min
Summary
- Tools produce activity. Systems produce predictable outcomes because decisions and states are defined before the tools are wired.
- Every stage from data to feedback either has designed decision rules, owners, states and exception handling, or it has a person improvising.
- The fastest diagnostic is not an audit of the stack. It is asking who decides, what states exist, and what happens when something goes wrong.
Thesis
A collection of tools becomes a system only when decisions, states, ownership, feedback loops and exception handling are explicitly designed. Everything else is a stack that happens to be running.
The distinction that matters
Almost every revenue team I look at can produce a stack diagram. Data provider, enrichment vendor, sequencer, mailbox infrastructure, dialer, CRM, a workflow tool holding it together, a warehouse nobody queries, and a BI layer that three people have opinions about. The diagram is real. The system usually is not.
A stack is a set of tools that can each do work. A system is a set of designed decisions with defined states, owners, feedback and exception handling. The difference shows up the moment something does not go as planned, which in outbound is roughly every day.
Here is the practical test. Take one record. A company that fits your profile, sourced yesterday. Ask what happens to it over the next ninety days without anybody thinking about it. If you can answer stage by stage, with the rules that route it and the states it can occupy, you have a system. If your answer includes the phrase probably one of the reps would, you have a stack and a set of habits.
This is not a semantic complaint. It determines whether adding volume adds pipeline or adds noise. A designed system absorbs volume because the decisions are already made. A stack absorbs volume by consuming attention, and attention is the input you cannot buy more of.
Signs you have a stack but not a system
None of these require a tool audit. They are observable in a single week of watching a team work.
- Someone starts the day by checking whether anything broke overnight. If a human is the monitoring layer, there is no monitoring layer.
- Two people can look at the same account and disagree about whether it is in play, and both can defend their answer with the CRM.
- Nobody can state the rule that moved a record from a list into a sequence. It was moved because a person decided it looked right.
- The definition of a qualified reply lives in a Slack thread, and the thread has been superseded twice without being updated.
- When a reply is ambiguous, it waits. Ambiguity has no owner, so it accumulates.
- Reporting is assembled monthly by hand. If measurement requires effort, it will happen less often than decisions do.
- When results decline, the first debate is about copy. Nobody has the data to argue about anything upstream of copy.
- The system works well when a specific person is present and degrades when they take a week off. That person is the architecture.
Any one of these is survivable. Four or more of them together means output is a function of individual effort, and that has a hard ceiling that arrives without warning.
Walk the path and look for the decisions
The useful exercise is not inventorying tools. It is walking the path a record travels and asking, at each stage, four questions. What decision is made here. What states can a record be in. Who owns the decision. What happens when the input is wrong. Most teams can answer the first question and stall on the other three.
Data
The decision at the data stage is what counts as a record worth spending on. That means source precedence when two providers disagree, a freshness threshold beyond which a record is not usable, and a validity bar that gates entry rather than being checked after a bounce.
In a stack, the decision is made implicitly by whichever import ran last. Duplicates enter under slightly different company names. A contact who changed jobs eight months ago is still addressed as though they run the department. Nobody is wrong, because nobody owns correctness. In a system, records enter through one path, that path applies thresholds, and rejected records are visible in a queue rather than silently absorbed.
Segmentation
The decision here is which records belong together and why. Not a list. A segment is a hypothesis about a shared problem, and it should be defined by attributes and triggers you can restate as a rule.
The failure is subtle because it looks like work is being done. Someone builds a list of two thousand companies from a filter set nobody wrote down, hands it to a sequence, and the results become a permanent mystery. You cannot learn from a segment you cannot reconstruct. Suppression belongs here too, and it is where I most often find silent damage: open opportunities, current customers and churned accounts receiving cold sequences because suppression was a manual step in a process that got busy.
Messaging
The decision is which claim gets made to which segment, and what evidence supports it. Messaging is the stage teams instinctively treat as creative and therefore exempt from systems thinking. It is not exempt. Variants need to be attributable, personalization inputs need to be fields with defined fill rates, and there needs to be a rule for what happens when the input is missing.
That last part is where AI drafted messaging quietly breaks. A model given a thin record will write a confident sentence about nothing. The system requirement is not a better prompt. It is a defined fallback when the input does not meet the bar, and a quality gate that a human or a check can enforce before send.
Sending
The decisions are how much volume goes through which infrastructure, how reputation is distributed, and what the system does when a signal degrades. Sending is the most mechanical stage and the one most often run on vibes.
A designed sending layer has units with independent reputation, per unit volume ceilings, and a rule that throttles or pauses a unit when bounce or complaint rates cross a threshold. A stack has a large number of mailboxes, a shared assumption that warmup handled it, and a slow decline that gets attributed to copy fatigue for a quarter before anyone checks placement by sending unit.
Replies
The decision is what a reply means and what it triggers. This is the highest leverage undesigned stage in most companies, and the cost is almost never measured.
A system defines a small set of reply categories, a target response time per category, an owner, and a next state. Referral to a colleague is a category. Not now with a stated reason is a category, and it should set a follow up date rather than dying in an inbox. Out of office with a named alternate contact is a category, and it is a data update the system should capture. In a stack, replies are read by whoever gets there first, the interesting ones get answered, and the ambiguous ones become archaeology. Interest that waits two days is not interest anymore. It is a note.
Calling
The decision is who gets called, when, and based on what signal. Calling is where the absence of state discipline becomes expensive fastest, because a call consumes a person minute by minute.
Dispositions are the states. If your disposition list contains two options that a rep can reasonably choose between for the same outcome, your call data is decorative. If dial lists are built by a person each morning from a saved view they modify by feel, the input to your most expensive channel is undefined.
CRM
The CRM is not the system. It is the record of state. The decision it should encode is what has to be true for an object to occupy a stage, and what is required to leave it.
Ambiguous stage definitions produce a specific and recognizable symptom: forecast conversations become negotiations about the meaning of words rather than about the business. Optional fields produce another one, which is that every question requires a manual export to answer. A stage without an exit criterion is a holding area, and holding areas fill up.
Reporting
The decision is what gets measured, at what grain, and what threshold triggers action. Reporting is not a display problem. It is a decision support obligation.
Three numbers per stage are enough to run a program: volume entering, conversion to the next stage, and median time in stage. The third one is the one nobody reports and the one that most often contains the answer. Blended averages across cohorts of different ages will hide a collapsing new cohort behind a healthy old one for weeks. If reporting cannot be produced without a person assembling it, it will be produced less often than the system changes, which means the team is steering on stale information by design.
Feedback
The decision is what the system does with what it learned. This is the stage that is missing entirely in most stacks, and its absence is why the same lessons get learned every quarter.
Feedback is concrete, not cultural. A reply that says wrong person, talk to operations is a segmentation input. A call where the prospect describes the problem in words your messaging does not use is a messaging input. A closed lost reason that repeats across a segment is a targeting input. In a system, each of those has a path back to the stage it belongs to and a review cadence where somebody with authority actually changes the rule. Without that path, the learning stays with the individual who heard it, and it leaves when they do.
Failure modes
These are the patterns I see repeatedly when a team tries to fix a stack by buying or automating rather than designing.
- Buying a tool to resolve an undefined decision. The tool now requires the decision as configuration, so the ambiguity moves into a settings page where fewer people can see it.
- Automating a process that has no defined states. Automation makes an undefined process fail faster and more quietly than a human would.
- Treating an integration as a system. Two tools exchanging records is plumbing. It says nothing about who decides or what happens when a record is bad.
- Adding headcount at a stage that is not the constraint. Output does not move, and now the cost base has a new floor.
- Measuring activity because activity is what the tools report by default. Sends and dials are inputs, not evidence.
- Designing only the happy path. The exception rate in outbound data work is not marginal, so a system that has no defined behavior for bad input is undefined most of the time.
- Keeping the operating knowledge in one person because they are effective. Effectiveness is not transferability, and only one of those scales.
An operator framework
You can convert a stack into a system incrementally, and you should, because a full rebuild that reveals itself in six months is its own failure mode. Work stage by stage in this order.
- 01Name the decision. Write one sentence stating the decision made at this stage. If you cannot write it, that is the finding.
- 02Enumerate the states. List every state a record can occupy here, including the ones people currently express as unwritten conventions. States that exist in practice but not in the model are where data goes to die.
- 03Assign one owner. One name, not a team. The owner owns the rule, not the execution.
- 04Define the exception path. State what happens when the input is missing, stale, contradictory or ambiguous. This is the part that separates a design from a diagram.
- 05Instrument three numbers. Volume, conversion and median latency for the stage. If you cannot measure latency, you cannot see the most common constraint.
- 06Write the runbook line. One or two sentences an operator who joined last week could execute without asking anybody.
Six passes over nine stages is a manageable amount of work, and it produces something more valuable than a new tool: a written statement of how the company actually acquires revenue, with the gaps visible.
Sequence the fixes upstream first. A data stage with a low valid rate poisons every measurement below it, so improving messaging while the input is broken produces conclusions you will have to throw away. Fix in the order the record travels.
What changes when it becomes a system
The visible change is not usually a step increase in output. It is that output becomes explainable. When pipeline moves, you can point at the stage that moved it. When it drops, the argument lasts an afternoon instead of a quarter, because the three numbers per stage tell you where to look before anyone offers a theory.
The second change is that volume stops being frightening. Doubling send volume in a stack doubles the surface area for undefined situations, which means it doubles the load on the people absorbing them. Doubling volume in a system mostly changes numbers, because the decisions were already made and the exception paths already exist.
The third change is the one that matters most for the business, and it is a knowledge change rather than a performance one. In a stack, the operating knowledge lives in people. In a system, it lives in definitions, rules, states and instrumentation that other people can read. That is what makes a commercial motion transferable, and transferability is what people are actually describing when they say a business is scalable.
None of this requires more software. Every company I have described here already owns everything it needs. What is missing is not capability. It is the decision to treat the path from data to revenue as something designed rather than something that accumulated.