Gacha Pull Probability Calculator

Calculate the probability of pulling a desired item in gacha/loot box systems, including pity system mechanics.

Results will appear here.

Formula

Without Pity: P(at least 1 success in n pulls) = 1 − (1 − p)n

With Pity (general): Uses dynamic programming over the Markov chain of (pity_counter, successes_count). At each pull index i within a pity cycle:

  • Base rate: p(i) = pbase for i < soft_pity_start
  • Soft pity: p(i) = pbase + (1 − pbase) × (i − soft_pity_start) / (hard_pity − soft_pity_start) for soft_pity_start ≤ i < hard_pity
  • Hard pity: p(i) = 1.0 at i = hard_pity (guaranteed)

Expected pulls per item: E = Σn=1pity n × P(first success on pull n) = Σ n × p(n) × Πk=1n−1(1 − p(k))

Expected pulls for k items: Etotal = k × E[pulls per item]

DP transition: dp[p+1][s] += dp[p][s] × (1 − p(p)); dp[1][s+1] += dp[p][s] × p(p)

Assumptions & References

  • Each pull is an independent Bernoulli trial with the given base rate, modified by soft/hard pity.
  • Hard pity guarantees the item at the specified pull number (probability = 1.0).
  • Soft pity linearly interpolates the success probability from the base rate to 100% between the soft pity start and hard pity thresholds.
  • Default values approximate Genshin Impact's 5-star banner: 0.6% base rate, soft pity at pull 74, hard pity at pull 90.
  • The pity counter resets to 1 after each successful pull.
  • The DP approach correctly handles the Markov property of pity systems; results are exact (not Monte Carlo).
  • For very large pull counts (>2,000), the 50%/90% threshold search is capped at 2,000 pulls for performance.
  • References: Genshin Impact wiki (pity mechanics), probability theory for geometric distributions with state-dependent success rates.

In the network