Build vs buy and DIY

n8n workflows for outbound: three that work and where they break

By Asen Levov, co-founder of Sellinger. Reviewed by Viktorio Shopov. Published . Last updated . 8 minute read.

n8n suits the plumbing around outbound: pulling new leads from a form or sheet into one place, summarising replies into a daily digest, and cleaning a list before it is imported. Those three workflows work because each step is deterministic and a failure is cheap. They break at duplicates, retries, rate limits and expired credentials, not at the happy path. Writing and sending the messages themselves is where a purpose built agent earns its place. Sellinger has no native n8n app, but its REST API and webhooks (Full Stack bundle and up) can be called from any n8n workflow.

n8n is a workflow tool you can self host or run in its cloud, and it is a favourite of sales ops people who want control. This post is for those people. It does not argue against building. It says which three builds pay off, and where each one fails after the first week.

What makes a good n8n workflow for outbound?

Three traits, and the three workflows below have all of them.

  1. Each step is deterministic. Given the same input, the same output. A model call is fine for summarising, but not for deciding who to contact.
  2. A failure is cheap and visible. If it breaks, you lose a digest or a few minutes, not a sent message you cannot recall.
  3. The data has a single owner. One sheet, one CRM, one inbox. When two systems both think they own the lead, duplicates follow.

The post on what DIY outbound breaks first lists the five places things go wrong, and everything below is a way of staying out of them.

Workflow 1: lead intake

What it does. A new row in a sheet, a form submission or an ad lead triggers the flow. It cleans the fields, looks the company up, checks that the lead is not already in your CRM, creates the record and posts a note in your team channel.

Why it works. It is pure plumbing. The decision at the end, who contacts the lead and how, is made by a person or by another system.

Where it breaks.

  • Duplicates. A trigger that polls a sheet can fire twice for the same row, and a form tool can retry a webhook. Search your CRM for the email before creating anything, and use the email as the key.
  • Partial failures. If step four fails after step three created a record, a retry will create it again. Make each step safe to repeat.
  • Polling gaps. Polling every five minutes means a lead can wait five minutes. Sellinger polls Facebook lead form sheets every 60 seconds and Google Ads sheets every 300 seconds, and it knows the polling interval is part of the speed budget. Know yours.
  • Credentials. Tokens for Google, your CRM and your sheet expire. Add an error branch that tells a person, not silence.

Workflow 2: reply digest

What it does. Once a day it reads yesterday's replies from your inbox or CRM, asks a model to group them (interested, not now, wrong person, unsubscribe), and sends one email with counts and the five that need a human.

Why it works. A summary is a safe use of a language model: it reads, it does not act. If it is wrong you read the originals.

Where it breaks.

  • Auto replies and bounces counted as replies. Out of office messages, helpdesk acknowledgements and delivery failures look like replies. Filter them first, or your reply rate is wrong in a flattering direction. Sellinger treats these as machine mail for the same reason.
  • Opt outs missed. A "stop" in a long message is easy to miss. If the digest finds one, a person must add it to the suppression list the same day.
  • Cost drift. A model call per message adds up. Summarise in batches.
  • Hallucinated certainty. Make the prompt return the quoted sentence next to each label so you can check it.

Workflow 3: list cleaning

What it does. A CSV or sheet comes in. The flow normalises names and company names, removes duplicates, removes people already in the CRM or on the do not contact list, verifies emails, and writes the clean list to a new sheet for import.

Why it works. Cleaning is repetitive and rule based, and the output is reviewed before anything is sent.

Where it breaks.

  • Fuzzy duplicates. "Acme Ltd" and "ACME Limited" are the same company. Decide your matching rules and write them down.
  • Verification limits. Verification APIs have rate limits, and catch all domains cannot be fully verified. See email verification before you send.
  • Silent data loss. A filter that drops rows should write them to a reject sheet with a reason, so nothing disappears unseen.
  • Imports that never end. Big files need batching. A 20,000 row run in one execution times out.

What does n8n cost for these?

n8n prices by monthly executions, and one run of a workflow counts as one execution however many steps it has. On its pricing page (checked 19 October 2026), Starter is 20 euros a month billed annually for 2,500 executions, and Pro is 50 euros a month billed annually for 10,000. Business, at 667 euros a month billed annually for 40,000 executions, is self hosted only.

A rough count for the three workflows above: if 1,000 leads arrive in a month, intake is 1,000 executions. The daily digest is about 30. List cleaning is one run per file. The whole set fits in Starter. The cost that matters is not the licence. It is the hours spent keeping the flows alive, which is why the real cost of owning an AI SDR is worth reading before you decide.

Where should an agent take over?

Three jobs do not fit a workflow well:

  • Deciding what to say to each person, from research on that person.
  • Holding a conversation over days, remembering what was said, and handing over when a person is needed.
  • Pacing sends per account, with quiet hours, daily limits and a stop when a platform refuses.

Those are the jobs an agent exists for. In our own LinkedIn outbound, the agents messaged 27,737 people and 40% replied, and the result depended on the list, the opener and the follow ups, none of which a trigger and a few nodes decide (see the Sellinger case study).

The two can sit together. The Sellinger REST API and webhooks (Full Stack bundle and up) let an n8n workflow create leads, read activity or react to events. There is no native n8n app, so you would use the HTTP Request node. The n8n versus AI SDR comparison sets out the trade offs.

A checklist

  • [ ] Every workflow has one owner for the data it writes.
  • [ ] Every create step checks for an existing record first.
  • [ ] Each step is safe to run twice.
  • [ ] Error branches tell a person, and credentials are monitored.
  • [ ] Filters write rejected rows to a reject sheet.
  • [ ] Auto replies and bounces are not counted as replies.
  • [ ] I decided what stays a workflow and what needs an agent.

Common questions

Is n8n good for sales automation?
For connecting systems and moving data it is. For deciding what to say to a prospect, holding a conversation across days, and respecting sending limits per account, you need more than a workflow, whether you write it or buy it.
How does n8n price its plans?
By monthly workflow executions. On its pricing page (checked 19 October 2026) Starter is 20 euros a month billed annually for 2,500 executions and Pro is 50 euros a month billed annually for 10,000. One run of a workflow counts as one execution however many steps it has.
Does Sellinger integrate with n8n?
There is no native Sellinger app in n8n. Sellinger offers a REST API with webhooks from the Full Stack bundle up, and n8n can call those with its HTTP Request node.
What breaks first in an n8n outbound workflow?
Duplicates and retries. A trigger that fires twice, or a retry after a timeout, creates two leads or sends two messages unless the workflow checks for the record first.
Should I let an n8n workflow send LinkedIn messages?
That is automated activity on LinkedIn, which LinkedIn's rules do not permit through third party software, and no approach removes the risk. See the post on automating LinkedIn yourself.

How Sellinger helps

Read how it works on See the platform, or see a real campaign in Read the Sellinger case study.

Sources

See it on your own accounts

Start with a 30 day free trial, no card. Nothing is sent without your approval unless you turn that on.

Unit4ShellyRocket.ChatGetAcceptPeopleForce

Teams that have used Sellinger

Start free trial