Outbound AIBenchmark

Our 923 LinkedIn Sends Talked Us Out of Publishing a Reply Rate Benchmark

We read 923 LinkedIn sends on our own seats, then 18 accounts. The rate ran 6.7% to 36.0% inside one account, and the ranking inverts across accounts.

What we ranOne snapshot of Kairon's own production Postgres at 2026-08-28 15:24:37 UTC, over campaign_node_run joined to campaign_node, campaign_sequence_run and campaign. Every sent invite and message counted by outcome, reply, reply classification, elapsed time to reply and per-campaign split for Kairon's own workspace; then the same count widened to all 18 sending organizations, reported anonymised by rank and volume. Both send time and reply time are bounded at the snapshot, so every figure describes that one moment and reproduces on replay.

Kairon's own LinkedIn seats sent 923 invites and messages in 70 days, and 115 earned a reply — 12.5%. That number cannot tell you whether yours is bad. Inside that one account the reply rate ran from 6.7% to 36.0% by campaign, and across 18 accounts the invite reply rate the benchmark pages publish inverts the ranking once you count every reply.

We set out to publish our own benchmark, the way about a dozen pages already do. On 2026-08-28 we ran the two searches an operator runs — what is a good linkedin connection request reply rate average and linkedin outreach response rate benchmark 2026 — and both returned a dense field of vendor pages, nearly all titled some variant of "LinkedIn Outreach Benchmarks 2026". The figures those pages put in circulation, as we read them that day: a good reply rate of 10–25%, top performers at 30–50%, connection acceptance at 28–45%, post-connection messages at 10.4%. One of them advertises 13.2 million data points.

We have 923. On volume we lose, and we lose permanently. What we can do instead is open ours. You cannot see inside 13.2 million data points. You can see inside 923, down to the campaign — and down there, the average matches not one of the campaigns it averages.

Method, exactly: one snapshot of our production database, taken 2026-08-28 at 15:24:37 UTC. Every figure in this piece describes that one moment, which is why they add up across tables. It covers every invite and every message sent in the window — 2026-06-19 to 2026-08-28, 70 days — joined to the campaign each one belonged to, and counts them by what happened next: accepted, replied, how the reply was classified, how long the reply took, and which campaign it came from. Most of the piece reads our own account; the last section widens the same count to every organization sending through the product. Aggregate counts only — no lead names, no company names, no message text.

Everything up to the last section is one workspace: ours. Two people, two LinkedIn accounts between them. Nineteen other organizations also send through Kairon in this window, and they are excluded until the last section — where every one of them appears anonymised, with no names, no identifiers, no seats, no industries and no message text. Counts, ranks and volumes, and nothing else.

"Sent" means the send actually reached LinkedIn. On the invite side that leaves out 90 canceled, 51 failed, 21 skipped and 18 still sitting in draft; on the message side, 20 drafted, 19 failed, 13 scheduled and 4 canceled. Every one of the 923 sends that stayed in carries a matching provider receipt marked ok — 923 of 923. A reply, here, is the timestamp the engine writes onto the send that a reply answers. Every campaign in this window had reply-halt switched on, so that stamp also ends the person's run: 111 of the 112 sequence runs behind these replies closed as replied, with their queued remaining steps cancelled. Nothing here kept sending at somebody after they answered.

LinkedIn's User Agreement prohibits automated access to the platform. The numbers below describe outreach we ran on our own Kairon seats on the dates shown — they are not permission, not a safety guarantee, and not advice to breach that agreement. Your account, your risk.

754 invites, 169 messages, 115 replies

The account-level number came out clean, and clean is the problem with it.

SentTo peopleAcceptedRepliedReply rate
Invites754751282 (37.4%)9212.2%
Messages1691332313.6%
Both92311512.5%

Messages are counted per message, not per person: 169 messages went to 133 people, so some people got more than one.

Do not read 13.6% against 12.2% as messages beating invites. Because of the reply-halt above, a message only ever went out to somebody who had not answered the invite yet — 3 of the 169 slipped out after a reply was already stamped, and no more. The message rate is conditional on the invite having gone unanswered. The invite rate is not conditional on anything.

An invite sent yesterday has had no chance to earn a reply, and it still sits in the denominator. So we ran the same count over only the sends that were at least 14 days old at the snapshot. 635 invites: 239 accepted (37.6%), 81 replied (12.8%). 129 messages: 17 replied (13.2%). That is 0.6 of a point above the 12.2% headline, and we cannot call that gap the cost of censoring. The 119 invites too young to count belong to eight campaigns of their own, and not one of the three big campaigns below has a single invite among them. So 12.8% and 12.2% are two different campaign mixes, not the same mix seen at two ages. Use 12.8% if you want the number whose sends have all had time to answer — but the spread two sections down matters more than either.

The accept step is where most of the reply rate is decided. 282 invites were accepted, and 80 of those 282 people also replied: 28.4%. The other 12 replies came in on invites that carry no accept stamp at all. 80 plus 12 is the 92 in the table. So the reply rate among people who accepted is 28.4%, against 12.2% across everyone we invited.

115 replies came from 112 distinct people. Three people replied on more than one send.

What the 115 replies actually said

Each reply is read by a classifier — a language model, working from a fixed four-category rubric that ships with the product. It returns one category or nothing. A later, stronger verdict can replace a weaker one, never the reverse. This is a model's read of the reply, not a human's, and you should discount it accordingly.

interestedneutralnot_interestedobjectionTotal
Invites51316492
Messages895123
Both5940115115

Across all 115: interested 51.3%, neutral 34.8%, not_interested 9.6%, objection 4.3%. Nothing came back unclassified.

The rubric's own definitions are worth knowing before you read those shares. interested means clear positive intent to keep talking or engage the offer. objection means the person engaged and pushed back — on price, timing, fit or authority. That is a warm signal, not a no. not_interested is a clear no, an unsubscribe or a firm brush-off, and it is 11 of 115. neutral is acknowledgement without commitment — "thanks, will look", a polite deferral — and the rubric also files automated and out-of-context messages there, so it is a wider bucket than "lukewarm".

How long to wait before a non-reply is a non-reply

RepliesMedianp90Within 7 daysWithin 14 days
Invites924.2 h66.1 h90 (97.8%)91 (98.9%)
Messages235.2 h289.8 h19 of 2321 of 23

Half of the invite replies landed inside 4.2 hours. 97.8% of them landed inside 7 days, and one single reply arrived after day 14. Message replies start about as fast — median 5.2 hours — but the tail is much longer: the p90 sits at 289.8 hours, roughly twelve days.

For invites, a week of silence is the answer. Waiting a second week bought us one reply out of 92. Message threads deserve more patience: 4 of the 23 replies came in after day 7.

Zero replies in the whole set are stamped before the send they answer. That is the arithmetic sanity check on every elapsed time above.

The spread is the number that should change what you do

Then we split the 12.2% by campaign, and it fell apart. 23 campaigns sent invites in this window. Three of them sent 50 or more:

Invites sentAcceptedRepliedAccept %Reply %
50331866.036.0
172733242.418.6
202542026.79.9

Those three account for 424 invites and 70 replies. The remaining 20 campaigns sent 330 invites between them and got 22 replies back — 6.7%.

So inside one account, one product, the same 70 days, the same two operators, the reply rate runs from 6.7% in the tail to 36.0% in the best campaign. The four figures we can actually see are 36.0%, 18.6%, 9.9%, and a twenty-campaign tail at 6.7%. The 12.2% headline is what they average to, and it is not what any of them did.

That is the answer to "is my reply rate bad?". Your account average is an artifact of your mix. Ours hid a campaign at 36.0% behind a tail at 6.7%, and no amount of staring at 12.2% would have shown us either. Split your own number by campaign before you rewrite a single line of copy.

Three accounts replied to 0.0% of their invites and had the fullest inboxes

We thought that was the finding. Then we ran the same count across every account sending through the product, and it got worse for the metric.

Same snapshot, wider scope. Across every organization in the window, 18 sent invitations — 5,554 of them — and 17 sent messages, 2,690 of them. Ten organizations sent 100 invitations or more. Ranked by invite reply rate:

RankInvites sentAcceptedRepliedAccept %Reply %
1 (ours)7542829237.412.2
23231282839.68.7
38882526728.47.5
41,5054867932.35.2
57961963324.64.1
622963927.53.9
715060140.00.7
811952043.70.0
910637034.90.0
10397214053.90.0

The eight organizations under 100 invitations sent 287 between them and got 20 replies back.

Ranks 8, 9 and 10 all read 0.0%, so the order among those three is a tie the database broke for us, not a finding. The numbers are the same whichever way they fall; the rank labels just give us a consistent way to point at the same three accounts in the tables below.

Read that table as a benchmark and ranks 8, 9 and 10 are a catastrophe. Between them, 622 invitations, 303 people accepted, and not one reply. Now look at the accept column. The highest accept rate in the whole set, 53.9%, belongs to an account with zero invite replies. The second highest, 43.7%, belongs to another one. Hundreds of people said yes to these accounts and, by this metric, nobody spoke.

Then we counted their messages.

RankInvitesAcceptedReplied to inviteMessages sentReplied to messageMsg reply %
811952 (43.7%)0456459.9
910637 (34.9%)050918.0
10397214 (53.9%)02114722.3

Account 8 sent almost four messages for every invitation. And the engine's own attribution rule explains the zeros, so this is not a reading we are inferring from three rows: an inbound reply is credited to the latest send that fired before it. Invite, get accepted, follow up with a message, and any answer that arrives after that message is stamped on the message. The invitation can only be credited when somebody answers the note itself, before the follow-up goes out.

Their LinkedIn inboxes settle it. All three hold inbound messages in the dozens-to-hundreds, against invitation reply counts of zero. They are not being ignored. We are deliberately not printing the exact figures: with eighteen accounts in this read, every additional precise number attached to a rank makes that rank easier to tie back to a real company, and "replied to 0.0% of its invitations" is not a sentence worth risking on somebody else's behalf.

So we recounted with the attribution step taken out — every reply over every send, invitations and messages together — and the ranking inverts:

AccountTotal sendsTotal repliesReplies per send
683110612.8%
Ours (rank 1)92311512.5%
24674810.3%
31,2311048.4%
8575457.8%
10608477.7%
915695.8%
51,008565.6%
41,609845.2%
7211115.2%

We are second. The account that beats us is rank 6 on the metric we were about to publish — 3.9% of its invitations drew a reply, and 12.8% of everything it sent did. The three zero-reply accounts land fifth, sixth and seventh here rather than at the bottom. The account that finishes last is the one ranked seventh on invitations, at 0.7% — though the bottom two both print 5.2% and there is nothing between them: 84 replies on 1,609 sends edges out 11 on 211 by less than a hundredth of a point. Do not read a gap there.

We were first on the number the benchmark pages report and second on the number that counts replies.

That second number is less distorted, not undistorted, and it would be cheap of us to pretend otherwise after four sections arguing the opposite. Invitations and messages reply at different base rates, so an account sending four messages per invitation is still being measured on a different blend from one sending a quarter of that. It removes the attribution artifact. It does not produce a clean number, and there may not be one.

The conclusion is narrow and it is the point of the piece: the invite reply rate measures campaign shape, not message quality. An account that invites and then messages will show a low invite reply rate, or a zero one, no matter how good its copy is. A benchmark table that ranks accounts on it is ranking them on the order of their steps.

What this does not tell you is which shape is better. We did not test that. Nobody was assigned a shape — every account chose its own — so setting invite-first accounts against message-heavy ones is an observation, not an experiment, and an account that invites then messages is running a different offer at a different audience from the one ranked beside it.

What this read cannot tell you

It cannot tell you what causes anything. Nobody was randomly assigned. The three campaigns at the top of the spread had different audiences and different copy, both chosen by the same two operators who also chose the ones in the tail. The gap between 36.0% and 6.7% is real, and its cause is unmeasured. The same holds across accounts: all 18 run their own ICPs, markets and offers, and we measured none of those.

It says nothing about LinkedIn's limits, detection, or account safety. This read counts outcomes. It does not touch thresholds, and the note above still applies in full.

It compares no products. Every account in both reads sends through the same engine. Any figure here that you want to hold against a different tool is a figure we did not measure, and the ranges we quoted from the benchmark pages are their arithmetic, not ours — we re-derived nothing behind them.

It is one workspace, two operators, seventy days, 923 sends, widened once to 5,554 invitations across 18 accounts. That is small. A customer running a different ICP in a different market should expect a different number, and we have no basis to say which direction.

And the classification split is a model's read, applied to 115 short replies. Treat "51.3% interested" as a rough shape, not a count you could defend line by line.

One more: we also split the 169 messages by whether the same sequence had sent an invite first. 142 messages inside a sequence that also invited got 21 replies (14.8%). 27 messages with no invite in the sequence got 2 (7.4%). Twenty-seven messages is not a sample. We are reporting the count because we ran it, and we are refusing to call the gap a finding.

This reply rate sits at the end of a longer funnel, and the rest of it is worth reading before you judge your own: we read 9,592 sequence runs the same way, including the losses that are the product working rather than failing. The 754 invites counted here are the ones that got out the door — separately, we counted the ones that never did, 382 refusals across 4,355 attempts. And the campaigns behind our own 923 sends are built, published and read back through the same MCP surface we hand to operators, where campaign_stats returns these counts per campaign.

Which is the whole of it. We came to publish one number and found a spread, and the figure we would have printed on a benchmark page turned out to be the single worst description of what actually happened. If you take anything from 923 sends, take the instruction rather than the rate: go and split your own.