Guide

Percentage Rollouts

Release a feature to a slice of your users, 1%, 10%, 50%, with no code changes. ShipSilently keeps each user's bucket sticky so refreshes never flip them between variants.

Configure a rollout

  1. Open the flag in the dashboard.
  2. Toggle Rollout on and set the percentage (0–100).
  3. Pick the bucketing attribute, userId by default.
  4. Save. New evaluations honor the rollout within seconds.

How bucketing works

ShipSilently hashes the bucketing attribute together with the flag key into a deterministic 0–99 bucket. A user is in the rollout when their bucket is below the configured percentage.

  • Sticky: same input, same bucket, every time.
  • Per-flag: a user can be in flag A's rollout but not flag B's.
  • Monotonic: bumping a rollout from 10% to 20% only adds users; it never removes anyone who was in.

Rules vs. rollouts

Targeting rules are evaluated before the rollout. A user matched by a rule gets the rule's value; everyone else falls into the rollout bucket. Pair them to ship to internal users at 100% while ramping public traffic.

Worked example: internal staff (matched by email) see the new flow at 100%; everyone else ramps from 1% → 5% → 25% → 100% over a week.

Recommended ramp

  1. 1%: smoke test in production.
  2. 5%: surface common errors.
  3. 25%: load and performance signal.
  4. 100%: full release. Keep the flag for the kill switch.