Skip to content
NewSee how
Improvement

Smarter warmup when tracking has a hiccup

Your senders' warmup health no longer takes a hit when open tracking is briefly unavailable — the system now tells the difference between "no opens" and "no data" before adjusting any account.

Warmup should react to real signals about your sending reputation — not to blind spots in the data. We made the nightly warmup adjustment smarter about one specific case: what to do when it can't see any opens at all.

What changed

Every night, FirstSales reviews each sending account and nudges its daily send limit and warmup score based on health signals — bounces, replies, and open rate. Open rate is a meaningful input, but only when opens are actually being measured.

If open tracking is briefly unavailable across the board, every account looks like it has a 0% open rate. That's not a sign of poor sending performance — it's a sign that the measurement system has a gap. Previously, the nightly warmup job couldn't distinguish between the two cases. A tracking interruption could cause healthy senders to be scored as if they were genuinely underperforming, resulting in reduced daily limits and lower warmup scores that then required days of normal sending to recover.

How the fix works

Warmup now recognizes that situation explicitly. When zero opens are recorded across all of your senders in the scoring window — the fingerprint of a tracking interruption rather than genuine underperformance — the open-rate check is suspended for that night's run.

Bounce and reply signals still apply in full. So a sender that is genuinely unhealthy — one generating hard bounces or complaint signals — is still caught, throttled, and protected. But no account that sent cleanly all day gets penalized for a data gap it didn't cause.

Concretely: if the tracking pixel is briefly offline when the nightly review runs, a healthy sending account holds its daily limit, keeps its warmup score intact, and resumes full open-rate scoring the following night once opens are flowing again. The adjustment reason is also logged, so every scoring decision is auditable.

Why warmup decisions compound

Warmup isn't a one-night calculation — it's a cumulative ramp. A single night of incorrectly downgrading a healthy sender can cut that account's daily limit and set its score back meaningfully. Recovering from an unnecessary penalty means days of below-capacity sending while the score climbs back up, which delays campaign launches and reduces the total volume you can run through a fully warmed sender.

By separating "no opens because performance is poor" from "no opens because measurement is offline," warmup stays on its intended trajectory through infrastructure blips that are invisible from a sending perspective. Your sender keeps building reputation at the pace its actual health deserves.

What this means for your outreach planning

For anyone managing multiple senders across a high-volume workspace, this fix removes a category of variance from warmup progression. Scores and daily limits now reflect genuine sending health rather than incidental measurement gaps. When you plan campaign capacity around expected warmup levels, those projections are more reliable because warmup isn't being disrupted by events outside your control.

What you should do

Nothing — this runs automatically in the nightly warmup pass. You will see steadier, more trustworthy warmup behavior, especially across the rare moments when tracking infrastructure is briefly unavailable. Check the Warm Up tab on any connector to see the current score and daily target, and review the seven-day chart to confirm the progression matches expectations.

All updates

Outreach that keeps going after you log off.Leads, emails, follow-ups and replies, handled.

Connect unlimited mailboxes and let AI agents find leads, write each email and follow up. Or send your own templates in manual mode. From $29/mo.

$1 for 3 days · Cancel anytime · No contract

Install with AI

Your coding agent sets up the FirstSales CLI and skills for you.

Prompt for 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.