# Progressive Rollouts

Progressive rollouts let you gradually release a feature to an increasing percentage of users, reducing risk and giving you time to monitor for issues.

## How Rollouts Work

Instead of switching a flag from off to on for everyone at once, you specify a percentage of users who should receive the new value. AccessIQ uses consistent hashing to determine which users are included, so the same user always gets the same experience for a given percentage.

## Creating a Rollout

1. Open a flag and select the target environment (typically Production).
2. Click **Add Rollout** instead of setting a fixed value.
3. Configure the rollout:

| Setting           | Description                                             |
| ----------------- | ------------------------------------------------------- |
| Start value       | The value for users outside the rollout (e.g., `false`) |
| Rollout value     | The value for users in the rollout (e.g., `true`)       |
| Percentage        | The percentage of users who receive the rollout value   |
| Rollout attribute | The attribute used for bucketing (default: User ID)     |

4. Click **Save**.

## Adjusting the Percentage

To increase or decrease the rollout:

1. Open the flag and environment.
2. Change the percentage.
3. Click **Save**.

Users who were already in the rollout remain in it when you increase the percentage. This means existing users will not see their experience change.

## Scheduled Rollouts

You can schedule automatic percentage increases:

1. On the rollout configuration, click **Add Schedule**.
2. Set a date, time, and target percentage for each step.

**Example schedule:**

| Date     | Percentage |
| -------- | ---------- |
| March 1  | 5%         |
| March 3  | 25%        |
| March 7  | 50%        |
| March 14 | 100%       |

## Combining Rollouts with Targeting Rules

Targeting rules are evaluated before rollouts. For example:

1. **Rule**: Internal employees always get the feature (value: `true`).
2. **Rollout**: 10% of remaining users get the feature.
3. **Default**: Everyone else gets the old experience.

## Monitoring a Rollout

* Check the **Analytics** tab on the flag to see how many users are receiving each value.
* Monitor your application's error rates and performance metrics alongside the rollout.
* If issues arise, reduce the percentage to 0% to immediately stop the rollout.

## Best Practices

* Start with a small percentage (1-5%) and monitor before increasing.
* Use targeting rules to include internal users at 100% so your team can verify the experience.
* Have a rollback plan: reducing the percentage to 0% is the fastest way to revert.
* Clean up completed rollouts by setting the flag to a fixed value once the feature is fully launched.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://accessiq.gitbook.io/accessiq-docs/feature-entitlements/rollouts.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
