Per-message approval sounds safe and works badly. By the fortieth draft you are not reviewing, you are clicking, and a control that everyone clicks through is not a control. So GTM asks for one approval that actually gets attention: the ICP and the first three messages, on one screen, before anything sends.
After that, each agent carries its own mode. Full auto, or approve-before-send. Per agent, not per account, so a proven motion runs hands-off while a new one earns trust on approval.
What an approval covers
In approval mode, the queue shows the exact words that will go out, plus the plan around them: how the first touch leaves, how many follow-ups on what cadence, what stops them, and where the lead lands if nothing comes back. You are approving a sequence, not a sentence.
There are three decisions, not two. Approve covers the sequence. Request changes sends the draft back with your note, and it returns rewritten. Remove takes a categorized reason. Wrong ICP, not qualified, bad timing, and that judgement trains the same telemetry the sourcing gate is tuned against. Every human overrule makes the next list better.
Approving is also the moment the product spends. A sourced lead arrives without an email address. Enrichment is charged per person, and buying details for a whole market to write to a fraction of it is a bill with no argument for it. The approval is when someone says this person will be written to, so it is when the reveal runs.
Approved does not mean immediately
An approved first touch still waits for intent. It leaves when the contact's heat crosses the agent's threshold. They engaged a monitored keyword, they replied to something, the signal fired, so the message lands while the evidence it was written from is still warm. A workspace can switch this off per agent, but the default is that timing is part of the message.
The backstop that is not optional
Full auto means no human sits between a generated message and a real person. That is exactly why the pre-send compliance gate is architecture rather than a feature flag: jurisdiction, entity type, and lawful basis are checked on every send, the unsubscribe link and postal address are injected by the platform, and the database itself refuses to mark a message sent without a gate verdict. An approval flow you can turn off, backed by a gate you cannot.