Updated · 11 min read
IP warm-up in Braze — the playbook that actually holds
Most warm-up guides teach the ramp curve and stop there. The ramp is the easy part. The audience you send to each day is what decides whether the curve holds — and that's where real warm-ups come off the rails. This is the version I've watched work on consumer-scale programs for a decade: exponential ramp, Random Bucket Numbers, and the discipline to say no when a stakeholder asks for just one quick full-volume send on day ten.
By Justin Williames
Founder, Orbit · 10+ years in lifecycle marketing
Why a new IP has no right to volume yet
Gmail, Yahoo, Microsoft, and Apple iCloud track the reputation of every IP that sends them mail. That reputation is a rolling judgment built from volume consistency, bounce rates, complaint rates, and engaged recipients. A brand-new IP has none of that history, so the filters default to suspicion. Messages land in spam, get rate-limited, or bounce outright.Source · GoogleEmail sender guidelinesOfficial Gmail sender requirements covering reputation, authentication, bounce rates, and complaint thresholds.support.google.com/mail/answer/81126
A warm-up schedule is how you introduce yourself politely. Small volume on day one, a little more on day two, exponentially more over two to four weeks, until the inbox providers have enough clean sending to trust your target volume. Standard ramps run 14 to 30 days. Fourteen is aggressive and works when the list is clean and engagement is strong. Thirty is what you pick for unknown-quality lists, sustained sending over 500,000 a day, or a program that has scorched its reputation before and is trying again.
The ramp curve, and why it's exponential
A 14-day ramp starts around 2% of target daily volume, roughly doubles every two days, and hits 100% by day fourteen. A 30-day ramp doubles less aggressively and ends in the same place. Exponential because reputation compounds — every clean early day earns the headroom for a bigger next one.
Shape of the thing:
Standard 14-day IP warm-up ramp Sends on day 1 start at ~2% of target daily volume and ramp exponentially to 100% by day 14. The curve is steeper in the back half because ISP filters reward consistent engagement signals before granting headroom for larger volumes.
Treat the ramp target as a ceiling, not a floor. If peak Tuesday is 100,000 sends and Wednesday is 30,000, warm up to the peak and don't go over. ISPs notice volume spikes more than almost any other signal, and a single day at double the expected volume can put the warm-up back 5 to 7 days.
Random Bucket Numbers matter more than ramp speed
Day one at 2,000 engaged users and day fourteen at 100,000 mixed users isn't a warm-up. It's the same IP impersonating two different senders a fortnight apart.
The question every team asks is how fast to ramp. The better question is who receives the send on each day of the ramp. If day one is two thousand of your most engaged users and day fourteen is a hundred thousand users including the dormant, the complaint-prone, and the barely-opted-in, the reputation curve will collapse exactly when it matters most. You're effectively two different senders on the same IP a fortnight apart.
Random Bucket Numbers solve this. Assign every subscriber a stable random integer from 0 to 9,999 at signup. Bucket 0–199 is a random 2% of the base. Bucket 0–999 is a random 10%. The numbers never move.Source · BrazeRandom Bucket Number attributeOfficial Braze docs on random_bucket_number — the attribute used for consistent sampling, IP warm-up cohorts, and Global Holdout Groups.www.braze.com/docs/user_guide/engagement_tools/segments/random_bucket_number
Day one sends to bucket 0–199. Day two expands to 0–299. Each bucket expansion adds new users without removing old ones, so the behavioural mix stays constant as volume climbs. Every day of the ramp looks like a scaled-up version of the day before. Which is exactly what ISPs reward.
The Orbit IP Warm-Up Planner generates the exact RBN ranges for each day and carves out a Global Holdout Group if you're already running one — so the measurement program doesn't accidentally get eaten by the warm-up math.
What actually derails a warm-up
< 2%
Bounce rate ceiling during warm-up. Above triggers rate-limiting.
< 0.1%
Spam complaint rate. Above actively damages reputation.
> 90%
Inbox placement (seed tests). Below means reputation is fading.
Three failure modes keep showing up: un-engaged sending, volume spikes, and a complaint rate that quietly climbs. The pattern is almost always the same. A stakeholder wants to just test one quick campaign at full volume on day ten. Volume doubles. Bounces spike because dormant users are swept in. Complaints follow because those dormant users don't remember signing up. Microsoft temporarily blocks the IP. The recovery runs into weeks.
Defensive moves before the ramp starts. Suppress users inactive 90+ days for the full warm-up window. Quarantine any segment that arrived from a bulk import without explicit confirmation. Put the ramp schedule in writing and circulate it to every stakeholder who has the ability to request a send.
Monitor daily during the ramp. Bounce rate should stay under 2%, spam complaints under 0.1%, seed-test inbox placement above 90%. Miss any of those, slow the ramp or tighten the audience before advancing. The full deliverability guide covers what to watch once you're sending at full volume, and the Orbit Braze Deliverability Health Check skill pulls these numbers directly from the Braze API — so monitoring is automatic, not a manual morning ritual.
Dedicated, shared, or a split — pick the right one
A dedicated IP is only worth the warm-up tax if your sustained daily volume earns the isolation. Below roughly 100,000 sends a day, the Braze shared pool almost always delivers better, because it inherits the reputation of thousands of other established senders. You get their good behaviour for free — and, yes, occasionally their bad behaviour too. Net, it's the better deal at that scale.
Above the 100,000-a-day threshold — and especially for regulated sending, financial services, or high-volume promotional programs — a dedicated IP earns its place. You own the reputation entirely, which cuts both ways: isolation from other senders' problems, and no safety net when you cause your own. A week of bad sending on a dedicated IP undoes months of trust.
If Braze has given you multiple sending IPs, the third option is the most conservative one. Warm the new IP alongside an established one, split daily volume between them, and gradually shift more to the newcomer as reputation builds. Plan 4 to 6 weeks rather than 14 days. You pay the time tax and get rid of the day-14 cliff where the new IP has to stand alone for the first time.
How you know it actually worked
The warm-up is complete when five conditions hold together for at least a week of sending at target volume. Bounce rate under 2%. Spam complaints under 0.1%. Seed-test inbox placement above 90% across Gmail and Microsoft. Open rate on the warm-up cohort matches your normal sending cohort. Sender reputation — Google Postmaster Tools, Microsoft SNDS, whichever deliverability monitor you pay for — consistently shows High or Good.Source · GooglePostmaster ToolsGoogle's free tool for monitoring Gmail sender reputation, spam rate, authentication results, and delivery errors.postmaster.google.com
Skip any of the five and you're running at full volume on an IP that wasn't actually ready. The failure mode I see most often: opens match baseline but seed-test inbox placement is 78% instead of 92%, which means a meaningful slice of sends are quietly landing in Promotions or spam and never showing up in the open-rate number at all. The dashboard looks fine. The program isn't.
Frequently asked questions
- How do I warm up a new IP in Braze?
- Start small (500-1,000 sends on day 1), target only your most engaged segment first (engaged-30-day cohort), and ramp volume exponentially over 2-6 weeks. A typical schedule: day 1, 500; day 3, 1,500; day 7, 5,000; day 14, 25,000; day 28, full volume. Pause the ramp if bounce rate or complaint rate spikes. Braze's own IP warm-up team coordinates the schedule for managed customers. The Orbit IP Warm-Up Planner at /apps/ip-warmup generates a day-by-day plan for any list size and target ramp duration.
- How long does IP warming take?
- Typically 2-6 weeks depending on target send volume and available engaged audience. Smaller programs (up to ~500K/day full volume) warm in 2-3 weeks. Larger programs (1M+/day) take 4-6 weeks because the daily ramp rate is capped by engagement-signal build-up — mailbox providers need time to see positive interaction patterns before they grant full-volume trust.
- Do I need to warm up a shared IP pool?
- No — shared IP pools have established reputation from the aggregate sending behaviour of all customers on the pool. You can send at full volume from day one on a shared IP, though mailbox providers still track per-domain reputation, so your From domain still has to earn its own trust independently.
- What happens if I skip IP warm-up?
- Hard throttling, bulk rate-limiting, blocks, or outright rejection from major mailbox providers. Gmail and Microsoft are the strictest — a new IP sending 100,000 cold emails on day one will trigger rate limits within hours and may take weeks to recover even after pausing. The damage is usually not instantly visible in Braze dashboards because deferred mail gets retried for hours before failing, so the full impact shows up 24-48 hours later as a bounce-rate spike.
- Can I warm up an IP faster by sending to unengaged users first?
- No — the opposite. Warming relies on positive engagement signals (opens, clicks, replies, out-of-spam moves). Sending to unengaged or old users early generates complaints and spam-trap hits, which damages reputation faster than the warm-up builds it. Always warm with your most engaged segment first and expand outward only once the IP has earned full placement.
This guide is backed by an Orbit skill
Related guides
Browse allEmail deliverability — the practitioner's guide
Deliverability isn't a setting. It's the running total of every send decision you've made since you bought the domain. Four pillars hold it up. Break one and the whole program starts leaking.
List hygiene: the six-rule policy
List hygiene isn't cleanup; it's a continuous policy that runs automatically. Here's the six-rule policy every lifecycle program should have written down, each tied to a specific deliverability outcome.
Spam complaints: the playbook for detecting and reducing them
Spam complaints are the hardest-hitting negative reputation signal in email. They compound faster than bounces and recover slower. This is the playbook — what actually triggers them, how to catch them early, and the four levers that reliably bring the rate back down.
Google Postmaster Tools: a walkthrough for people who actually send email
Postmaster Tools is the single most valuable free deliverability tool and most programs either ignore it or misread the charts. Here's what each tab actually says, what to act on, and what to stop looking at.
The deliverability mental model: one picture for authentication, reputation, content, and monitoring
Every deliverability guide covers one piece — SPF, DKIM, DMARC, BIMI, reputation, warmup. What's missing is the systems-level picture that ties them together. This is the one diagram a senior operator needs: how mailbox providers decide whether your email reaches the inbox, and where each piece of the stack plugs in.
Apple Mail Privacy Protection, four years in
Apple broke the open rate in 2021. Half the lifecycle industry is still pretending it didn't happen. Four years on, the programs that actually adapted are beating the ones that kept optimising a metric that doesn't exist anymore.
Found this useful? Share it with your team.
Use this in Claude
Run this methodology inside your Claude sessions.
Orbit turns every guide on this site into an executable Claude skill — 54 lifecycle methodologies, 55 MCP tools, native Braze integration. Pay what it's worth.