Saltar al contenido
NuevoVer cómo
Corrección

Paused campaigns resume on the first try, and stranded follow-ups send

Expired internal locks no longer block a paused campaign from resuming on the first try, and inherited subject lines no longer strand follow-up messages.

Two bugs were quietly keeping paused campaigns from doing what resuming and following up are supposed to do.

What changed

Resuming a paused campaign could fail on the first attempt because of an expired internal lock left over from segmentation, the process that groups contacts before drafting begins. If that lock had not cleared properly, the campaign would not actually resume even though you had told it to, and you would need to try again, sometimes more than once, before it took effect. From your side, this just looked like clicking resume and nothing happening, with no indication of why or whether it would eventually work.

Separately, follow-up messages in a sequence could get stuck because they inherited a subject line from an earlier step in a way that made the follow-up invalid to send. Instead of failing loudly, these follow-ups just sat there, stranded, never reaching the contact even though every earlier step in the sequence had gone out fine. This was a quiet failure mode: the first message in a sequence would send successfully, so nothing looked wrong at first glance, but later steps never made it out.

Both are fixed. The expired lock no longer blocks a resume, so pausing and resuming a campaign works reliably on the first try. And follow-ups no longer get stranded by inherited subject line issues; they generate correctly and go out on schedule, following the same sequence timing as every other step.

Both issues could compound each other in a campaign that was paused and resumed more than once, since each resume attempt was another chance for the lock issue to surface, and any follow-up steps that were already stranded stayed stranded regardless of how many times the campaign was paused and resumed around them. Fixing the root cause of each means neither problem can recur going forward.

How to use it

There is nothing new to configure. Pause and resume campaigns the same way you always have. If you previously had to click resume more than once to get a campaign moving again, that should no longer be necessary; a single resume action should take effect immediately.

If you have an older campaign with a sequence that seemed to stop partway through (later follow-up steps never sending even though the campaign was active), this fix should let the stranded follow-ups process going forward. You do not need to manually re-trigger anything for this to take effect; it applies to how the sequence generates and sends its steps from here on.

If you want to confirm a previously affected campaign is behaving correctly now, check its sequence activity for a contact who is due for a follow-up step and confirm it goes out on the expected schedule. This is a good habit generally when you are relying on multi-step sequences to carry most of your reply volume, since follow-ups often matter as much as the first message.

If you have a campaign you paused specifically because resuming it seemed unreliable, it is worth trying again now. The lock issue behind that unreliability is resolved, so a resume attempt should take hold the first time you make it.

Why it matters

A campaign that does not resume when you tell it to, or a sequence that silently drops later follow-ups, both quietly cost you replies. Follow-ups are often where a chunk of your reply rate comes from, since prospects who did not respond to the first message sometimes respond to the second or third, after they have had more time to consider it or after a subject line lands better with them. Fixing both issues means your sequences run the way you set them up to run, without you having to notice and manually re-trigger anything.

The resume fix matters because pausing a campaign is often a deliberate choice, whether to review a list, adjust sequence copy, or wait on something external, and the whole point of pausing is that you can pick back up exactly where you left off. A resume that silently fails to take effect undermines that, turning what should be a quick pause-and-continue into a source of uncertainty about whether the campaign is actually running.

The follow-up fix matters because it is invisible until you go looking for it. A campaign with a stranded follow-up step still looks active and still shows activity from its first message, so there is no obvious signal that something downstream is broken. Fixing the underlying cause means you do not need to audit every sequence manually to catch this kind of silent gap.

Both fixes together restore something specific: the ability to trust that pausing a campaign is a genuinely reversible action, and that a sequence you built with several follow-up steps will actually carry through every one of those steps once the campaign is running.

These kinds of gaps matter most for anyone running longer sequences, four or five steps deep, where a single early problem with segmentation or subject line generation could quietly cut off a meaningful share of your planned follow-up volume. A sequence that stops delivering after step one, even though it was designed to run through step four, is not doing the job you built it to do, even if nothing about the campaign's dashboard looks obviously wrong. Fixing the causes rather than the symptoms means the sequence you designed is the sequence that actually reaches your contacts.

Both of these fixes also reduce a specific kind of hidden cost: the time you would otherwise spend manually checking whether a paused campaign actually resumed, or whether a sequence's later steps actually went out. That kind of manual verification is reasonable to do occasionally, but it should never be a requirement for trusting the basic mechanics of pause, resume, and follow-up delivery to work as designed.

Reliability at this level rarely gets noticed when it is working. Nobody celebrates a campaign that resumed correctly or a follow-up that sent on schedule; it simply happens, the way it is supposed to. That is exactly the standard these fixes are meant to restore, so pausing, resuming, and following up fade back into the background of running a campaign instead of being something you have to actively verify.

Availability

These fixes apply to all campaigns going forward.

Todas las novedades

Prospección que sigue cuando te desconectas.Leads, emails, seguimientos y respuestas, resueltos.

Conecta buzones ilimitados y deja que los agentes de IA busquen leads, escriban cada email y hagan seguimiento. O envía tus propias plantillas en modo manual. Desde $29/mes.

$1 por 3 días · Cancela cuando quieras · Sin contrato

Instalar con IA

Tu agente de código configura la CLI y las skills de FirstSales por ti.

Prompt para Claude Code

I'm setting up FirstSales (https://firstsales.io), an AI outbound sales platform: campaigns, contacts, a reply inbox, deliverability and lead signals. Help me get my workspace sending real, good emails end to end, from Claude Code.

Read these first so you know how FirstSales works:
- Developer docs and API: https://developer.firstsales.io
- CLI: https://www.npmjs.com/package/@firstsales.io/cli
- Skills for coding agents: https://github.com/firstsalesio/firstsales-skills (read README.md and GUIDE.md)

Setup
1. Install the CLI: npm install -g @firstsales.io/cli
2. Install the FirstSales skills:
   claude plugin marketplace add firstsalesio/firstsales-skills
   claude plugin install firstsales@firstsales
3. Ask me if I already have a FirstSales account. If not, send me to https://app.firstsales.io to sign up.
4. Ask me to create an API key under Settings → API → API Keys, with only the scopes we need.
   Never ask me to paste the key into this chat. Tell me to run this in my own terminal, so the key stays hidden:
   read -rs FS_KEY && firstsales auth login --api-key "$FS_KEY"; unset FS_KEY
5. Run `firstsales whoami` and tell me which workspace and organisation we are connected to.

Then ask me about my business: what I sell, who I sell to (roles, company size, countries), my best customers, and what I use today for outbound (tools, lists, mailboxes). Walk me through:
1. Teaching FirstSales my business: website, offer, proof points and case studies in the knowledge base, so the AI writes like someone who knows the product.
2. Connecting my sending mailboxes and checking my sending domain: SPF, DKIM, DMARC and warm-up. If anything is unhealthy, tell me the exact DNS record to add.
3. Bringing in contacts: import my CSV or CRM export into a clean list, remove duplicates and bad emails, and block domains I must never email (customers, competitors, my own).
4. Building my first campaign: the right list, senders, steps and timing. Write the sequence with me, show me the drafts, and do not launch until I say yes.
5. Setting up Signals if it fits: find people engaging with LinkedIn posts about topics my buyers care about, and turn them into leads.
6. Inviting my team and giving each person the right access.

Once campaigns run, show me how to work the reply inbox from here: which replies need an answer, draft responses in my voice, and move good conversations into deals. If I use Cal.com, connect it so follow-ups can offer my booking link (not the first email).

Throughout, as you learn about my business, proactively suggest and help create:
- Reply templates for the questions and objections my prospects are likely to raise, based on my product, site and codebase if you can see them.
- Campaign ideas and segments worth testing, with the reason for each.

Safety rules:
- Show every change as a dry run (--dry-run) first and wait for my yes. Never send emails, launch campaigns or delete anything without my yes.
- Tell me before anything that spends credits, and how many.

Be opinionated. If the docs give a sensible default, just use it. Don't make me choose between five options.