How to Fix an Expandi Campaign Stuck in Processing (2026 Guide)
Leads stall because a task failed and no replacement was scheduled, leaving them in the flow with nothing queued. Filter the People tab on Processing status other, look for the triangle, and resume with Run all.
The campaign is live, the leads are loaded, and the status has read Processing for hours. No invitations going out, no error banner, no obvious step to click. Just a sequence that looks busy and is not.
There is a specific reason this happens and a specific place to look, and neither is where most people go. Leads do not get stuck because your conditions are too complex or because a server is busy. They get stuck because a task failed for them, no follow-up task was scheduled, and they are now sitting in the flow with nothing queued. Expandi will show you exactly who they are once you know the filter.

Why leads get stuck in processing
Expandi schedules one task at a time per lead. Send the invitation, wait for the outcome, schedule what comes next. That design is what makes a stall possible: if a task fails and nothing is scheduled to replace it, the lead has no next action and simply stops, while the campaign as a whole still reports itself as processing.
| Cause | What you see | What to do |
|---|---|---|
| A task failed two or more times | A triangle next to the lead, processing status other | Filter and resume with Run all |
| LinkedIn changed behaviour mid-run | A cluster of held leads from roughly the same period | Same fix, then re-check a day later |
| The account was disconnected while the campaign ran | Everything after a certain point is held | Reconnect the account first, then resume the leads |
| Daily limits reached | Tasks scheduled but waiting, no triangle | Nothing, they run on the next window |
That last row matters for diagnosis. A lead waiting on a daily limit is not stuck: the task exists and will run. A held lead has no task at all. The triangle is what separates them, and it is why the fix is a filter rather than a restart.
Expandi itself notes that leads land on hold when a message or connection request fails to send two or more times, and that this can happen when LinkedIn is running a split test that interrupts normal behaviour. Which is worth knowing before you rebuild anything: sometimes nothing on your side was wrong at all.
Find and resume the held leads
Four steps. The first two are the whole fix and take under a minute.
Open the People tab and filter on Processing status
Inside the campaign, go to the People tab and use the Processing status filter, selecting other. That is the view that isolates leads with a processing issue. They also carry a triangle beside them, so you can confirm you are looking at the right set before you act on it.
Resume them with Run all
With the filter applied, use the Run or Pause control and choose the Run all option. This resumes the filtered contacts and schedules their tasks again, so connection requests and messages start going out for those leads. This is the documented recovery and it is the step most guides on this never mention.
Check the account is actually connected first
If every lead after a certain point is held, resuming them will just fail again. Confirm the LinkedIn account is connected before you use Run all, otherwise you are scheduling tasks into an account that cannot execute them and you will be back tomorrow.
Come back a day later
If leads land in the held state again after resuming, the underlying condition has not cleared. That is the point to contact support with a specific set of affected leads rather than guessing, because you now have evidence of a repeating pattern rather than a one-off.
Reduce how often it happens
You cannot prevent every held lead, since some causes are on LinkedIn's side. Four habits keep the number small and make it visible early.
- Check the People tab, not the campaign status. The campaign will happily report processing while a third of its leads have nothing scheduled. The filter is the only view that tells the truth.
- Watch the account connection. Most large clusters of held leads trace back to a disconnection nobody noticed, so treat the connection state as the first thing to confirm rather than the last.
- Keep volume conservative. Actions that fail repeatedly are often actions the platform is resisting, and pushing more of them produces more held leads rather than fewer.
- Look at the campaign daily. A stall found the same day costs you a day. A stall found in a fortnight costs you the fortnight, and the leads have gone cold by the time you resume them.
The pattern under all four is that this failure is silent by design. Nothing alerts you, so the check has to be a habit rather than a reaction.
If failures cluster around a new sender, the ramp is usually the cause. We covered it in our guide to warming up a LinkedIn account.
Sequences with nothing to hold
The held state exists because a lead's progress is a chain of scheduled tasks. Break one link and everything after it never gets created, which is why the symptom is an absence rather than an error.
ReactIn approaches the sequence differently. Leads arrive from a signal, and the campaign evaluates who is due for what rather than each lead carrying a private queue of pre-scheduled steps. A lead whose action fails is retried on its own terms and does not sit outside the flow waiting for someone to notice.
It also changes what you look at. Instead of auditing a People tab for triangles, the list itself keeps refilling from the signal, so a lead that could not be reached this week is simply reconsidered when the campaign next runs, alongside everyone else who qualified.
The honest limit: no tool makes a failed LinkedIn action succeed. If LinkedIn refuses a connection request, it is refused in ReactIn too, and volume remains your decision. What differs is whether that refusal quietly removes the lead from the flow or is handled and retried without you having to find it.
For a feature-by-feature view of the two, see our ReactIn vs Expandi comparison.
A campaign that says processing while doing nothing is not lying, exactly. It is reporting on itself rather than on its leads, and the People tab is where you find out the difference.
Frequently Asked Questions
Sources & Further Reading
- Expandi documents the processing status filter and the resume action in campaign filters and actions.
- The broader diagnostic is in why is my campaign not sending.
- For resuming several campaigns at once, see bulk pause and continue.
- And for reading the interface, campaign tabs explanation.
Related Articles
How to Fix Expandi Messages Not Sending (Pending Invites)
A connector campaign opens with a connection request, and a lead who already has one pending cannot receive a second. So the campaign has nothing it is allowed to do, and it says so in a tab most people never open.
How to Fix Phantombuster "Error During Loading of Chat Widget"
Phantombuster documents this one, and the documented fix is mostly to wait. The expensive part is a Phantom left looping against it, burning execution time on attempts that cannot succeed.
Working Around the Limitations on Salesflow (2026 Guide)
CSV import exists, so does a campaign type for contacts you already hold, and so do shared blacklists. The constraints that actually bite are narrower: rejected Sales Navigator URLs, per-route caps, and a deliberate block on duplicates.
How to Fix Dripify Lead Collection Stalls (2026 Guide)
Most stalled collections have finished or are waiting. The Lead Collection Report names the cause, the search cap ends runs silently, and working hours suspend lead loading as well as sending.