Chance of the featured drop by number of pulls
How the math works
In Zenless Zone Zero the base S-Rank chance is 0.6%. From signal 74 it rises sharply (soft pity) and signal 90 guarantees an S-Rank. On the exclusive channel the S-Rank is the featured agent 50% of the time and a lost 50/50 guarantees the next one. W-Engines have an 80-pull hard pity, soft pity from about 65 and a 75/25 split.
The calculator runs this model from your current pity: the probability of an S-Rank on each following signal, then the chance the first one is the featured agent or the second one is — the guarantee. That gives the chance within your budget, the average and the worst case in signals and polychrome.
This is a model: Hoyoverse only publishes the base rate and the hard pity. The soft-pity curve is the community estimate from millions of recorded pulls (base rate until the threshold, then a fixed increase per pull up to 100%). Capturing Radiance and similar bonuses are not included, so the estimate is slightly conservative.
Common questions
How many signals for a guaranteed S-Rank agent?
Worst case 180 signals from zero pity (28,800 polychrome): 90 to an S-Rank and another 90 if the 50/50 is lost. With the guarantee active the worst case is 90. On average the featured agent costs about 93 signals.
Do the channels share pity?
No. The exclusive (agent) channel, the W-Engine channel, the stable channel and the Bangboo channel each keep their own counter.
When does soft pity start in ZZZ?
From signal 74 on the agent channels and about 65 on the W-Engine channel. Most S-Ranks land between 74 and 80.
What is the 50/50 and the guarantee?
When an S-Rank drops on the exclusive channel there is a 50% chance it is the featured agent. If it is not, the next S-Rank is guaranteed to be featured — the guarantee stays until it fires, even into the next banner.
How does the W-Engine channel pity work?
Hard pity is 80 signals, soft pity from about 65. An S-Rank W-Engine is the featured one with 75% chance; if not, the next S-Rank is guaranteed featured. The W-Engine counter is separate from the agent one.
How does the tracker know my pity?
From your imported signal history: it counts the signals since the last S-Rank on each channel separately and checks whether that S-Rank was featured, so it knows if the guarantee is active. When you are logged in, the calculator above is pre-filled with those numbers.
Stop counting by hand
Import your history once — the tracker keeps pity, 50/50 status and full statistics for every banner, forever.
Import history