# Fractional CRO with an AI outbound engine: what you actually get

> An inventory of thirty days of operated outbound: 1 563 invitations, 59 026 text checks, 282 logged decisions, and the 19 of them a person made.

Page: https://re-vault.io/blog/fractional-cro-outbound-engine/
Published: 2026-10-12 · Dmitry Ostrovtsev, Re:Vault


A fractional revenue lead sells you judgment by the month. An outbound engine executes it: sourcing, writing, pacing, replying, and the rewriting that happens before any of that reaches a person. Buying the two together is common, and the engine half is hard to picture in advance, because it lives in logs. So here is an inventory of that half, counted on our own pipeline over thirty days, 12 September to 11 October 2026.

Everything below is one window on one set of accounts: 26 sending profiles across 22 active workspaces, 1 563 LinkedIn invitations, 1 175 direct messages, 542 emails from 12 mailboxes, 3 013 people sourced. Small numbers, counted the same way twice, which is the only kind worth publishing.

## The split: 282 decisions, 19 of them a person's

Every change the engine makes writes three fields before it takes effect: why we are doing it, what we expect to happen, and what we considered and set aside. Over the thirty days the decision log holds 282 entries, and all 282 carry all three fields, across 52 distinct areas: sourcing recipes, batch composition, copy, reply handling, sender settings, process rules. 52 of the 282 already carry a closed outcome, written back against the original prediction once the measurement window passed. The rest are still inside their window.

19 of those 282 decisions carry a person's name. That ratio, about fourteen machine decisions for every human one, holds because the human set is defined by category: price, contract wording, the offer itself, positioning, the first campaign of a new workspace, and the start of sending from a profile that belongs to somebody else. Those are the gates. Everything else runs with a default and reports what it did.

The practical read for a buyer: a fractional lead who also owns an engine spends their month on the 19, and the other 263 arrive finished with reasons attached. A month later you can ask why a segment left the line and get the dated row that answered it.

## The work that stays off the invoice

Text going to a live person went through 59 026 automated checks across 13 rules and 6 surfaces in the window, and 2 468 of those checks found something and stopped the draft.

Where the 2 468 landed:

- 703 banned stock phrases, out of 7 510 texts checked for them
- 660 drafts whose closing line had drifted away from a direct question, out of 3 239
- 646 drafts built on the symmetrical two clause sentence shape, out of 7 510
- 267 drafts assembled from a template, out of 922
- 111 cases of the same text going to two different people, out of 2 137
- 3 em dashes, out of 8 656 texts checked

The last line is the one that explains the other five. The rule banning a single punctuation mark moved into code in August, and it now costs three catches a month. A rule in code converges toward zero findings. A rule in a document keeps producing them, and the difference shows up in exactly this kind of table.

Follow-up drafting fires the same way. In the window, a queued follow-up was stopped 4 305 times for repeating the invitation note, 1 963 times because the fact it leaned on had gone stale and needed re-checking, and 891 times because the copy itself failed the voice rules. These are check events, and the same thread can trip the same check on consecutive runs until the draft is rewritten. That volume of rewriting is the service, and it stays invisible on an invoice.

## Everything addressed to a live human passes one gate

The engine writes its own drafts and sends through a single checkpoint. Over the thirty days 1 813 outgoing replies were held at that gate for a check before release, 14 were held because the sending profile belongs to a person whose approval is required for each recipient, and 11 went up to the human as a drafted escalation with the thread attached.

Eleven escalations in a month, against 766 inbound messages from 147 people. That is the ratio to ask about before signing anything: it decides whether the arrangement saves your time or moves your queue. The classes that escalate are fixed in advance: price and discounting, contract terms, an inbound pitch, visible displeasure, anything legal or press shaped, and any reply the classifier could read two ways. Scheduling, factual questions, booking links, polite closings, and the single push after a first decline all run on their own. That split, class by class, is in [how replies get handled and what a human still owns](/blog/reply-handling-system/).

## The client side of the same ledger

Two counts in the window were visible to the people whose pipelines these are.

942 reply drafts were written into client workspaces. 268 of them went out: 167 released by the forty eight hour clock untouched, 100 released by a person clicking send, and 103 of the 268 edited before they left. 610 were dismissed, and 64 were still open at the end of the window. A dismissal rate that high is a feature of the design: writing a draft costs us a model call and dismissing it costs the client one click, so the engine proposes generously.

126 tasks were opened across the workspaces, 58 on our side and 68 on the clients' side. Each one carries a verbatim quote from the call, chat or email that created it, enforced by a database constraint, and that one small requirement settles an entire category of argument about who promised what.

Underneath both: 101 scheduled jobs, 278 named self checks that answer "is this broken" on their own, and 37 routes that decide which model handles which task. That is the part of the arrangement you are actually renting, and it takes months to build and about an afternoon to describe, which is how it ends up as one line in a proposal.

## One change a week, written down

The targeting document is on its twenty fifth version, and the change log behind it holds 19 dated entries. The cadence is capped on purpose: one change a week, and only on a slice with at least 30 sends and 3 replies behind it.

This window spent its quota on a copy verdict. Three voices had been running on first touches since late August, split by a key in code so that one batch carries all of them. On the comparable corpus, the seven workspaces where all three arms were live, one voice came in at 21 replies on 389 first texts against 38 on 376 for the leader, a gap of 4.7 points, p = 0.015, and 0.044 after correcting for three pairwise comparisons. It left the line. The two remaining voices sat at 10.1% and 8.6% with p = 0.47 between them, so both stayed. The planned volume had reached 58 to 66%, and the verdict says that out loud, because it rests on the size of the gap.

One more thing came out of that verdict, and it is the reason a human reads these reports. A fourth voice looked far ahead at 18.6% against 6.3%. It runs in one workspace only, and that workspace replies more often than the others, so the gap belonged to the workspace: inside it, the same voice gave 18.6% against 15.3%, which on those counts is nothing. The ranking code was wrong and got fixed. The method for keeping that class of error out of a small sample is in [A/B testing outbound copy when the sample is small](/blog/ab-testing-small-samples/).

## What the thirty days produced

The outcome side, on a matured cohort so the accept rate has had time to land: 1 195 invitations sent between 12 September and 4 October, 318 of them accepted, which is 26.6%, and 54 of those people replied, which is 4.5% of everyone invited and 17.0% of everyone who accepted.

Across the full window 134 people replied to us for the first time, and 4 of them sit at a qualified conversation or a booked call. 733 candidates were rejected before anyone wrote to them, across 73 distinct reason codes, led by 203 who held the wrong seat for the decision, 65 outside the profile, and 58 whose employer stayed unconfirmed against a second live source.

Four qualified conversations from 134 replies is the number to plan against, and it is the number a monthly fee has to clear. The arithmetic, tier by tier and alongside a salaried hire, is in [the cost per meeting of an AI SDR, an agency and a hire](/blog/ai-sdr-agency-hire-cost-per-meeting/), and the [fully loaded cost of an SDR](/sdr-cost/) page keeps those figures current.

## What you can copy tomorrow

Three habits here work without us, and all three fit inside a spreadsheet and a calendar reminder:

1. **Write the three fields before the change.** Why, expected, rejected. Then put a date on the row for when you will check the expectation. Our log closed 52 of 282 predictions in a month, and the closures are where the learning sits.
2. **Move one rule a week from your document into a check.** Anything a person is asked to remember decays. The em dash rule caught 3 texts in 8 656 because it became a check.
3. **Cap yourself at one targeting change a week, on a slice with 30 sends and 3 replies.** Faster than that reads noise, and the version history loses its ability to tell you what worked.

The ladder here runs from $199 a month for a connected account your own model drives, through $2 000 for the operated engine, $5 000 for a team on the account daily, and $10 000 for the fractional seat where the revenue lead takes the calls and owns the strategy. [How it works](/how-it-works/) walks the same pipeline end to end. What the top tier buys, in the terms of this page, is the 19 decisions and the voice on the call. The other 263 arrive either way.

## Questions buyers ask

### What does a fractional CRO add on top of an outbound engine?

The decisions reserved for a person by category: price, contract wording, the offer and positioning, the first campaign in a new workspace, and starting to send from someone else's profile. In our thirty day log that came to 19 decisions out of 282, plus taking the calls the pipeline produces and owning the targeting strategy.

### How much does a fractional CRO with an outbound engine cost?

The fractional seat is $10 000 a month, with the revenue lead on calls and deal reviews. The operated engine on its own is $2 000 a month, a team working the account daily is $5 000, and a connected LinkedIn account that your own model drives is $199. All monthly, with no setup fee.

### How many decisions does an AI outbound engine make without asking?

In this window, 263 of 282 logged decisions ran on their own, each one recording why it happened, what was expected and what was set aside. 11 threads went up as drafted escalations against 766 inbound messages. The split runs by category, which makes it predictable in advance.

### How long before an operated outbound engine produces replies?

A new sending profile takes about two days from connection to its first invitation and climbs a deliberate ramp after that. On a matured cohort of 1 195 invitations, 26.6% were accepted and 4.5% of everyone invited replied, with the first replies landing in the second week of a profile's life.


---

Re:Vault runs LinkedIn outreach end to end for B2B companies: finds the buyers, writes in the client's voice, handles replies, books meetings. $2,000/month. MCP access for your own Claude: from $199/month.

- Book a 30-minute call: https://cal.com/dmitry.o/re-vault-gtm
- Email: dmitry@re-vault.io
- MCP access: https://re-vault.io/mcp/
