The account
Selling a star rating back to the people it is costing money
Pepper Partners is a Tallinn firm whose reputation practice does one thing: it takes a
company with a bad public review profile and works the profile back above four stars —
auditing it, getting fraudulent and competitor reviews pulled, and triggering genuine
review invitations at the moments customers are happiest.
Their best argument is a single number they publish themselves: roughly
18% less conversion for every star below 4.0. That reframes a rating from
a vanity metric into a line item, which is the only framing that gets a Head of Growth to
answer a stranger.
Claim source: pepper-reputation.com. Pepper's own published figures, reproduced as theirs.
Their case outcomes (150+ companies, 4.6-star average finishing rating) are likewise their
claims, not results measured here.
We are not Pepper. The arrangement is a referral: every email goes out as one person making
an introduction, signed with his own name, from his own domain, disclosing the referral in
normal type. The agent was never allowed to write “we at Pepper.”
That constraint shapes the whole campaign — an introduction can be honest about what
it does not know, and a vendor pitch cannot.
The signal problem
The data the pitch needs is fenced off — deliberately
The pitch only works if the first line already contains the prospect's own number.
“Your rating is 2.3” earns a reply; “we do reputation
management” does not. So the campaign lives or dies on getting ratings at scale.
There are four ways to get them. We tested all four in a single day. Three are closed and
one we refused on purpose.
Closed
Trustpilot's official API
The sanctioned route, and the right one. It returns the 90-day delta, the star histogram
and the company's reply rate. It needs a partner key we do not hold.
Refused
Scraping Trustpilot
Their robots.txt ends in a blanket Disallow: /, refuses
9 AI crawlers by name — anthropic-ai among them — and bars the ones
it half-admits from the review pages and every filter. Not attempted.
Biased
The prospect's own site
Companies publish their rating in structured data for Google. Structurally useless: a
company marks up its flattering number, never its bad one. Of 20 brands, 17
published nothing and the rest published app-store scores of 4.70–4.87 stars.
Uncorrelated
The public app-store API
Works, needs no key, measures something else. One company carried 4.8 stars across
400,000+ app-store ratings and 1.6 stars across roughly 1,300 on Trustpilot — in the
same week. A rating is not a fact about a company. It is a fact about a channel.
A headless browser pointed at that Disallow would not be routing around a
technical limit. It would be evading a refusal.
So the agent never fetched a Trustpilot page. The ratings came from the client's own lead
file, which already carried the star value and the review count in two columns — and
the honest sourcing turned out to be the stronger commercial position anyway.
First parse of that file inverted the entire target list: the star column used a European
decimal (3,8 = 3.8) and the review column used thousands separators (10,443). A single
strip-the-commas turned 3.8 stars into 38 and made every company look excellent. Two
separate parsers now; the campaign would have mailed the wrong half of the market.
What “autopilot” honestly means here
The machine ran the campaign. The human showed up for the yes.
This is the part most case studies fudge, so here is the division of
labour exactly as the logs record it.
The agent, unattended
- Sorted 954 contacts into four cohorts by rating and review volume.
- Wrote every email from a proof pack that refuses unsourced numbers —
a figure with no source fails composition and the email never renders. This page is
built by the same rule.
- Scheduled a 5-touch, 7-business-day sequence on business-day spacing, re-sorted daily
toward each recipient's 8am local.
- Sent 2,388 emails across 24 sending days, ramping 20 → 250/day.
- Polled bounces, suppressed the addresses, and stood their campaign rows down
in the same breath.
- Ingested replies over IMAP and stopped every colleague at a company that
answered.
- Paused itself when the 24-hour bounce rate crossed 5.0%.
- Ran ten integrity invariants nightly — each one a leak that had
actually happened once.
The human, every time
- Supplied the lead list. The agent cannot source this market on its own.
- Signed the cold-send approval: 329 named domains, with an expiry date.
The send gate itself refuses any domain outside that file.
- Answered both live replies personally, from his own mailbox.
- Made the introduction to the principal.
- Created the calendar invite by hand.
- Took the meeting.
Read the right lesson from the right-hand column. It is not a list of gaps waiting to be
automated — it is the list of moments where a person's judgment is worth more than
throughput. The agent removed the thousand repetitive steps, not the six that matter.
The ledger
Every number, including the denominator
Cold-outbound case studies publish conversion rates and hide the base
they were computed on. Here is the base, as of 28 September 2026.
Campaign: pepper-reputation · 28 Aug – 28 Sep 2026
| Stage | Count | Note |
| Companies on the approval | 329 | every one below 4.0 stars; median 2.3 |
| Contacts enrolled | 954 | 2.9 people per company |
| People actually contacted | 776 | the rest are still queued |
| Touches attempted | 3,389 | includes every refusal |
| Emails delivered | 2,388 | 22 refused as malformed before sending |
| Human replies | 7 | 4 under the campaign's own stricter count |
| Meetings booked | 2 | 1 no-showed |
| Meetings held | 1 | 17 Sep 2026, 21:15 UTC |
| Revenue | $0 | the held meeting is unpriced |
Reply rate on people contacted: 0.9% (the 95% interval runs
0.4–1.9%). On companies: 2.1%. Both are below the 8%
the plan assumed and above the 0% this list had produced before. 24 days of sending is not a
verdict on the offer; it is a verdict on the list.
Bounce rate by where the address came from · measured 2026-09-17
| Address source | Sent | Bounced |
| Supplied by the client | 473 | 8 |
| Constructed by the agent | 47 | 11 |
The agent inferred missing addresses from patterns it could already see at the
same domain. It is an order of magnitude worse at this than the client's list, and an MX check
catches none of it — every bounced domain publishes valid mail records. The defect is a
wrong name on a real company's domain, which only mailbox-level verification sees.
214 untouched constructed addresses were quarantined the day this was measured.
Campaign-wide, 37 of 776 recipients have bounced (4.8%).
The failure ledger
Four things that went wrong, and what each cost
The brake bit
On 2026-09-17 the 24-hour bounce rate touched 5.3% and the guardian soft-paused the
entire email channel. Roughly 4,000 queued touches were refused over about 13 hours
before it cleared itself.
channel:soft-paused until 2026-09-17T16:48:57Z (24h bounce_rate 5.3% exceeded 5.0% threshold)
VerdictWorking as designed. A day of lost volume is cheaper than a burned
sending domain — and the source of those bounces was the agent's own guessed
addresses, now quarantined.
Wrong company, right recipient
The lead file contained spliced rows where the company name, the domain and the contact
belonged to three different organisations. The composer rendered them faithfully, which
meant one prospect was told about another company's rating.
FixedThe ingest now flags name/domain mismatches as their own review
class — not folded into the existing validation list, because adding a finding to an
old list silently changes every decision that list drives. Five provable cases paused; the
rest went to a human, since most mismatches are ordinary parent companies.
The best follow-up was starving
With a backlog, owed touches were released in calendar-day order. That meant the day-2
email — 2 replies from 109, both negative — permanently outranked the day-5
email, which had produced the only positive follow-up in the campaign. The weakest touch
was systematically eating the strongest one's budget.
FixedOwed touches now queue by measured reply rate, with day order
breaking ties. Nothing is skipped; the sequence shape is unchanged.
Arithmetic that insulted the reader
One email computes how many five-star reviews a company needs to climb back to 4.0. On
thin profiles the honest answer is “two” — printed directly above a
paragraph arguing that reviews move the needle. Twenty-two companies fell under that floor
and nineteen had already been sent it.
FixedThat touch now refuses to render below a minimum gap. For thin
profiles the argument is different and so is the email.
What transferred
Findings, with the sample sizes attached
Rates below come from the 2026-09-12 conversion analysis; reply
latencies are recomputed nightly from the send ledger.
2 of 34 vs 1 of 235Of 34 second people
contacted at a company, 2 replied positively. Of 235 first people, 1. Two replies is a
direction, not a rate — the intervals overlap — but both booked meetings came from the second person
(1 held, 1 no-show), and the next campaign threads every company by default.
5, 14, 18, 27, 32 min5 of 7 replies arrived
inside 35 minutes of a send. The 2 that did not took a day and three days
— and one of those slow ones is the meeting that was held. Fast replies are common;
the valuable one was not.
2 of 3 from touch 12 of the 3 positive replies
came from the opening email. The third — the one that became the meeting
— came from the day-5 colleague touch, on that person's fourth email. The proof
email went 0 for 46.
61.1% absent201 of 329 companies were
not named when an AI assistant was asked for the top five in their own
category — a second, unclaimed problem, and a better opening line for thin profiles.
All 3 under 2.5 starsEvery positive reply came from a
profile rated 1.6, 1.7 or 2.2. Severity in the right vertical sells. In the
wrong one it does not: 68 residential real-estate contacts produced 1 reply, and it was an
unsubscribe — their reviews were true, and no reputation work fixes that.
One hard noA prospect rejected the
entire category — “we deliberately do not manage ratings in any
form.” Logged as a loss against the offer, not the copy. A campaign that cannot record
that keeps optimising the wrong thing.
The dataset
Who an AI assistant names instead
Every company in the campaign was checked once: name the top five
providers in this category, asked of an AI assistant, answer recorded verbatim with the
date and the model. Aggregate results, no company named.
Absent from an AI assistant's top five, by industry · asked 2026-09-13
| Industry | Companies | Absent | Share |
| Insurance | 109 | 86 | 78.9% |
| Financial Services | 57 | 32 | 56.1% |
| Hospitality | 40 | 30 | 75.0% |
| Real Estate | 25 | 9 | 36.0% |
| Banking | 24 | 7 | 29.2% |
| Hospitals and Health Care | 13 | 8 | 61.5% |
| All 329 companies | 329 | 201 | 61.1% |
Single-model snapshot, asked once — a reading, not a ranking. Quoted to
prospects only as what it is: “when we asked an AI assistant on this date, it named these
three, not you.” Industries with fewer than ten companies are folded into the total.
Where it stands, 28 September 2026
1 meeting, no revenue, 359 people still in sequence
The meeting that was held came from a US consumer-finance brand rated below two stars by its
own customers — reached through a colleague, after the first people contacted there
stayed quiet. From the campaign's first email on 28 Aug to twenty minutes on a call on 17 Sep. It has not yet been
priced.
One meeting is not a business. It is the first evidence that the machine can produce a
conversation a principal wants to be in — which is the only thing 24 days of sending can
prove, and the thing this list had never produced before.
Held-meeting receipt: calendar invite, class calendar_invite. The campaign has
one writer for that status and it demands a receipt and a pointer; a positive reply can never
be counted as a meeting.
What is still missing is supply. Every lead file on hand is fully enrolled, and the four ways
to find more companies without a human are the four closed routes above. That is the honest
constraint, and it is not a software problem.
The offer
The same machine, pointed at your list
Rick Acquisition runs this loop for one client at a time: segment the list, compose from a
proof pack that refuses invented numbers, sequence it, send it, catch the replies, and stop
itself when something is wrong. You supply the list and the approval, and you show up for the
yes.
Rick Acquisition — $800/month
Every figure on this page is regenerated nightly from the campaign's send ledger,
referral record and integrity checks; the renderer refuses to print a number that is not in
figures.json. Prospect names are withheld
deliberately: they did not consent to appear in marketing, and a campaign that publishes the
people it emailed has no business asking anyone to trust it. Trustpilot is a trademark of
Trustpilot A/S; this page describes its published crawling policy and is not affiliated with it.