Skip to main content
All articles

Automation

Automating LinkedIn follow-ups without sounding automated

How to automate LinkedIn follow-up messages that still read as personal: what each message is for, how to space them, and how to branch on replies.

By Swimlane Updated September 14, 2026 8 min read

Most LinkedIn conversations that turn into meetings need more than one message. And most automated follow-ups that fail, fail for one of two reasons: they say nothing new (“just bumping this”), or they land on someone who already answered. If you want to automate LinkedIn follow-ups, those are the two problems to design out. Timing is the easy part.

This guide covers what to hand to a sequence, what to keep for yourself, how to write each message, and how to build the reply check that stops a script from talking over a real conversation.

What to automate and what to keep

A follow-up has two halves. One is mechanical: remembering that Sarah accepted nine days ago, noticing she never answered, and putting the next message in front of her on the right day. The other is judgment: deciding what to say, and what to do when she writes back.

Hand the mechanical half to automation:

  • The timing. Each message waits a set number of days after the previous step.
  • The reply check. Before every follow-up, a condition asks whether the contact has written back.
  • The soft touch. A like on their latest post between two messages puts your name in front of them without another message.
  • The bookkeeping. A tag on whoever replied, and on whoever went quiet, so both groups can be found later.

Keep the judgment half:

  • Every reply. The moment someone answers, the script is done with them. A human answer deserves a human reply.
  • The words. A sequence sends what you wrote. It cannot notice that a prospect just changed jobs.
  • The decision to try again. Someone who stayed silent through three messages needs a different angle next quarter, not a fourth message this week.

A follow-up sequence that respects the reader

For a new connection, three messages and a closing note are plenty. Every message needs a job. If you cannot name it, delete the message.

  1. The opener, a day after they accept. Why you connected, and one question they can answer in a sentence. No pitch, no link.
  2. The new angle, about five days later. Not a reminder of message one. Something they can use: an observation about their market, a short resource, a narrower version of the question.
  3. The specific ask, about a week later. Like their latest post first, then make a short, concrete proposal they can say yes or no to.
  4. The close, ten days or so after the ask. Give them an easy way out and leave the door open. It often gets answers the ask did not, because it asks for nothing.

The gaps widen on purpose. Two messages in three days reads as pressure; the same two messages a week apart read as someone who remembered.

The flow
  1. Source List "New connections · pricing thread", built before the campaign: one context everyone shares
  2. Message 1 day: the opener, why you connected and one question
  3. Condition After 5 days: replied to message? (window: last 7 days)
  4. Yes Tag Tag "replied-opener" and stop: the inbox takes over
  5. No Message The new angle: something useful, not a reminder
  6. No Condition After 7 days: replied to message? (window: last 7 days)
  7. Yes Tag Tag "replied-angle" and stop
  8. No Like their last post Like their latest post
  9. No Message 2 days later: the specific ask
  10. No Condition After 10 days: replied to message? (window: last 14 days)
  11. Yes Tag Tag "replied-ask" and stop
  12. No Message The close: an easy way out, the door left open

Building the reply check

A Swimlane sequence does not stop by itself when someone replies. You decide what a reply means by adding a condition, and the branch you draw is the behaviour you get.

  • Put a “Replied to message” condition before every follow-up. Its Yes branch ends the flow for that person, ideally with a tag so you can find them. Its No branch carries the next message.
  • The condition’s delay is your “wait and see”. A condition is evaluated once, when the flow reaches it. Give it a five-day delay and it checks five days after the previous message.
  • Always set a time window. With “Any time”, a message they sent you last year counts as a reply. Pick the window that covers the gap since your last message: last 7 days after a five-day wait, last 14 days after a longer one.
  • Late replies are caught at send time. If someone answers after the check but before the next message leaves, Swimlane re-checks the conditions above that message just before sending and moves them onto the Yes branch instead.

Two other conditions earn their place in follow-up flows. “Has a conversation”, with a window, skips people you have already written to recently, which matters when a list mixes new and existing connections. “Viewed profile” lets you send a more direct message to people who looked you up after your like, as in the flow for reactivating connections that went quiet.

Writing follow-ups that don’t read as automated

Variables are not personalisation

{firstName} and {company} prove you own a database, not that you read anything. Personalisation that scales comes from the list: if everyone in it commented on the same post or attended the same webinar, one sentence about that context is true for all of them. Build narrow lists and write for the group.

Swimlane replaces seven variables: {firstName}, {lastName}, {fullName}, {company}, {title}, {headline} and {location}. Anything else, such as a {painPoint} you meant to fill in, reaches the prospect exactly as typed. A variable with no data behind it comes out empty, so do not build a sentence around {company} on a list assembled from mixed sources.

Each message adds something

A second message that only asks whether they saw the first gives them nothing to reply to. Bring a new fact, a sharper question or a smaller request.

Short beats clever

Two to four lines. A LinkedIn message is read on a phone between two meetings.

Four messages to adapt

The opener, one day after acceptance:

Hi {firstName}, thanks for accepting. I reached out after your comment on
the pricing thread about annual contracts. Did your team end up moving
away from them?

The new angle:

{firstName}, one idea from the same thread stuck with me: keeping annual
plans but adding a quarterly true-up. Is that close to what you're weighing?

The ask, two days after the like:

Would 20 minutes next week be useful, {firstName}? I can walk you through
how two teams changed pricing mid-contract without a painful renewal.

The close:

I'll leave it there, {firstName}. If pricing comes back on the table later
this year, I'm easy to find. Good luck with the renewals season.

Once a campaign is launched, its steps are locked. If you expect to refine the wording, link each message step to a saved template: editing the template changes what future sends say, without relaunching anything.

When they reply

The reply is where automation stops and selling starts. In the inbox, the “Last message by contact” view lists every conversation where the other person wrote last: the threads waiting on you, whether they came from a campaign or not.

  • Answer in your own words. The AI draft helps with a first version: it reads the latest messages of the thread and writes in the tone of voice you set, and you edit before sending.
  • Turn “not now” into a date. “Ask me after the summer” is a reminder, not a lost lead. Set a reminder on the thread and the conversation comes back on that day.
  • Record where it stands. Move the contact to the right stage of your pipeline, so nobody on your team restarts the conversation from zero.

Timing, volume and folklore

Articles that name the best hour to send a LinkedIn message rarely show data you could check against your own market. Two rules hold up better:

  • Send during working hours. Virtual office hours give each day of the week one working window, plus a timezone, and campaign steps only run inside it.
  • Expect the queue to spread out. Campaign messages leave at random gaps of a few seconds to a few minutes, never at a fixed interval, and a daily message ceiling (150 in Safe Mode) holds the rest for the next day. A campaign on 300 contacts is a week of work, not a morning.

Pacing and limits are covered in our guide to LinkedIn automation without getting banned.

Measuring what works

Each campaign reports messages sent, connections accepted, replies and reply rate. Two habits make those numbers useful:

  • Tag each Yes branch differently. “replied-opener”, “replied-angle”, “replied-ask”. The tag counts show which message actually starts conversations, which the campaign total cannot.
  • Compare two campaigns, not two words. To test a new opener, run a second campaign on a comparable list. Small lists produce noisy differences, so wait for dozens of replies before declaring a winner.

Reading the result: few replies to the opener usually means the question is too big or too generic. Most replies arriving only after the close means the earlier messages gave no reason to answer.

Mistakes that kill a thread

  • A follow-up sequence with no reply condition.
  • “Just checking in” as the whole message.
  • Four messages in eight days.
  • A pitch in the opener.
  • A message within minutes of acceptance, which looks exactly like what it is.

For a ready-made version, see the follow-up flow for connections who accepted and went silent, or how the steps and conditions work on the LinkedIn automation product page.

Do this with Swimlane

Everything in this article, minus the manual part.

Start my free trial

See how it works in Swimlane LinkedIn automation

Keep reading