GRADUAL_ROLLOUT
All functions > BUSINESS_SIMULATIONS > GRADUAL_ROLLOUT
Returns the exposure to a new version based on the given hashing key and rollout parameters.
Syntax
GRADUAL_ROLLOUT(hashing_key: VARCHAR, time_ref: TIMESTAMP, time_0pc: TIMESTAMP, time_100pc: TIMESTAMP) → BOOLEAN
sql
Arguments
Parameter | Type | Required | Description |
---|---|---|---|
hashing_key | VARCHAR | Yes | String value to hash (typically user ID or session ID) |
time_ref | TIMESTAMP | Yes | Reference timestamp to evaluate rollout at |
time_0pc | TIMESTAMP | Yes | Start time of rollout (0% exposure) |
time_100pc | TIMESTAMP | Yes | End time of rollout (100% exposure) |
power | ANY | Yes | Optional power curve exponent (default 1.0 = linear) |
chunks | ANY | Yes | Optional number of discrete rollout chunks (default 10) |
Returns
BOOLEAN - TRUE if user should see new version at given time
Notes
- Deterministic - same key and time always produce same result
- Gradually increases exposure from 0% to 100% over time period
- Before time_0pc: 0% exposure (returns FALSE)
- After time_100pc: 100% exposure (returns TRUE)
- Between times: gradual rollout based on user hash
- Power parameter controls rollout curve (>1 = slow start, <1 = fast start)
- Chunks parameter creates discrete rollout steps
- Useful for controlled feature releases, phased migrations