Perk 9 Calculator

Optimize which sphere buttons to click each day
How to use this calculator
1
Character count calculator — How many perk 9 characters do you need to afford skipping certain color tiers? Enter your daily max clicks and a desired confidence level, then click the color icons to adjust which colors you’re skipping. The table will live update with how many characters are required, assuming they can all be rolled each day.
2
Strategy calculator — Enter your shop 9 level and click Calculate to see the optimal static strategy (which colors to always click or skip throughout the day) and the DP-optimal strategy. Because you can afford to be more selective early when you still have many rolls left, the threshold changes as the day progresses — the full DP table shows the exact click/skip threshold at every (rolls left, clicks left) state.
3
Live P9 Advisor — Once you have calculated your strategy, expand Save settings for Live P9 Advisor inside the inputs card and save. Then when you’re actually rolling, the bot will detect each perk 9 sphere roll and tell you whether to click or skip based on exactly how many rolls and clicks you have left at that moment.

Character count calculator

Characters needed to skip colors

Strategy calculator

Inputs
from $bonus "twice the sphere button value"
from $bonus "Additional spheres: +N"
Number of perk 9 characters guaranteed to roll per day
= 20 clicks/day

Frequencies: empirical data from 55,249 observed sphere rolls.

EV: (base × (1 + double_chance) + flat_bonus) × (1 + shop_9_bonus)

Emoji Base SP EV Frequency
Save settings for Live P9 Advisor

Save these settings so the Live P9 Advisor can recommend click/skip for each sphere button as you roll.

How it works
1 Expected value per color EV of one click

Each sphere button color has a base SP value. Your sphere double chance gives a chance to earn twice the base value, and the flat bonus adds a fixed amount on top. Shop 9 level provides a percentage multiplier.

Expected value per click EV = (base × (1 + double_chance) + flat_bonus) × (1 + shop_9_bonus)
2 Static strategy fixed threshold all day

A static strategy picks a fixed set of colors to always click and skips the rest, regardless of how many rolls or clicks remain. The calculator tries every possible threshold (skip the k lowest-EV colors, for each k), then picks the one that yields the highest total SP per day.

Over rMax rolls, the number of potential clicks follows a binomial distribution with probability P(click). The expected number of clicks actually used is capped by cMax (you can't click more than your daily budget). The total expected SP is the per-click EV multiplied by the expected clicks used.

Static strategy: always click/skip the same colors P(skip) = Σ freq(color) ← sum of frequencies of skipped colors
EV(click) = Σ freq(color) × EV(color) ← only clicked colors
X ~ Binomial(rMax, P(click)) ← clicked buttons in a day
E[clicks used] = Σj=0cMax−1 P(X > j) ← capped by daily click budget
E[SP/day] = EV(click) × E[clicks used] ← best static strategy's total
3 DP-optimal strategy adaptive threshold

The DP-optimal strategy re-evaluates the click/skip decision at every (rolls left, clicks left) state. We define V(r, c) as the expected total SP from r rolls and c clicks remaining, and work backwards from the base cases: V(0, c) = 0 (no rolls left) and V(r, 0) = 0 (no clicks left). V(1, 1) is simply the expected value of one click.

For other states, V(r, c) is computed by comparing the value of clicking — EV(color) + V(r−1, c−1) — versus the value of skipping — V(r−1, c) — taking the better option for each color and weighting by that color's frequency.

Working backwards this way gives us the optimal threshold at every (r, c) state: click any color whose EV exceeds V(r−1, c) − V(r−1, c−1), which represents the value of saving your click for a later roll. This threshold decreases as rolls run out, and so colors you'd skip early become worth clicking later.

V(r, c) = expected SP from r rolls and c clicks remaining V(0, c) = 0 ← no rolls left, no more SP
V(r, 0) = 0 ← no clicks left, can't earn
V(r, c) = Σ freq(color) × max[EV(color) + V(r1, c1), V(r1, c)]
← each roll: click if EV(color) + V(r−1, c−1) ≥ V(r−1, c), else skip
V(rMax, cMax) = total expected SP/day ← starting state
Threshold at (r, c) = value of keeping a click threshold = V(r1, c) V(r1, c1)
← click any color with EV ≥ threshold; skip if < threshold
← threshold shrinks as you run low on rolls, so worse colors become worth clicking