---
title: FAQ
description: "Answers to common questions about Statsig's SDKs, experiments, gates, billing, and platform usage."
product: general
lang: en
token_estimate: 1695
---
# FAQ

## SDKs and APIs

### How does bucketing in the Statsig SDKs work

Refer to [How Evaluation Works](https://docs.statsig.com/sdks/how-evaluation-works).

> For AI agents: a documentation index is available at [/llms.txt](/llms.txt). Append `.md` to any page URL for markdown, or send `Accept: text/markdown`.

---

### Can I add a layer to a running experiment

No. Layers lock after an experiment starts to preserve the integrity of results. Statsig may support editing layers in the future.

---

### Can I rename an existing experiment or feature gate

Yes. When renaming an entity (for example, a feature gate, experiment, or layer), only its display name changes. The underlying ID referenced in your code remains unchanged because IDs are immutable, which prevents breaking existing implementations.

---

### Why define parameters instead of reading the experiment group

Parameters let you iterate quickly without code changes and support richer experiment setups. For example:

```js
// Group-based approach — requires code changes for each variant
if (otherEngine.getExperiment('button_color_test').getGroup() === 'Control') {
  color = 'BLACK';
} else if (otherEngine.getExperiment('button_color_test').getGroup() === 'Blue') {
  color = 'BLUE';
}

// Statsig parameter approach — variants can be changed from the console
const color = statsig.getExperiment('button_color_test').getString('button_color', 'BLACK');
```

---

### Why aren't exposures or custom events showing up

In short-lived environments (scripts, edge workers), the process may exit before events flush. Call `statsig.flush()` before shutdown. For more detail, refer to the [Node.js server SDK docs](https://docs.statsig.com/server/nodejsServerSDK#flushing-events).

---

### My SDK language isn't listed. Can I still use Statsig

Likely yes. Post in the [Statsig Slack community](https://statsig.com/slack) and the team discusses options.

---

### How do I retrieve all exposures for a user

The [Users tab](https://console.statsig.com/users) shows historical exposures. For hypothetical assignments (e.g., to bootstrap clients) you can call `getClientInitializeResponse` on the server. Pass `{ hash: 'none' }` if you need readable keys:

```js
const assignments = statsig.getClientInitializeResponse(user, 'client-key', { hash: 'none' });
```

---

### What happens if I check a config that doesn't exist

The SDK returns defaults: `false` for gates and the supplied fallback for experiments/layers. The evaluation reason is `Unrecognized`. Refer to [SDK debugging](https://docs.statsig.com/sdks/debugging#evaluation-reason) for more detail. This behavior applies to deleted, archived, or unseen configs (for example, configs filtered by [target apps](https://docs.statsig.com/sdks/target-apps)).

---

## Feature gates

### If I change the rollout percentage, do existing users keep their result

Yes. Increasing the pass percentage (for example, 10% to 20%) keeps the original 10% and adds new traffic until it reaches the new percentage. Decreasing it removes the newest slice first. To reshuffle all users, you must resalt the gate. Experiments behave differently; use targeting gates for deterministic control.

---

## Statistics

### What statistical tests does Statsig use

Statsig uses a two-sample Z-test for most experiments and [Welch's t-test](https://docs.statsig.com/experiments/statistical-methods/p-value#welchs-t-test) when sample sizes are small or variances differ.

---

### How does Statsig handle low sample sizes

Statsig falls back to [Welch's t-test](https://docs.statsig.com/experiments/statistical-methods/p-value#welchs-t-test) and offers CUPED/winsorization to boost power.

---

### When should I use one-sided vs. two-sided tests

Use one-sided when you only care about movement in a single direction; it increases power but hides movement in the opposite direction.

---

## Experimentation

### How do I get started with an A/B test

If the feature isn't live yet, wrap it in a [feature gate](https://docs.statsig.com/guides/first-feature) and roll out. If it's already in production, create an [experiment](https://docs.statsig.com/guides/abn-tests). Results appear in the Pulse view.

---

### Can I target experiments to specific users (e.g., iOS only)

Yes. Use a feature gate with targeting rules as a pre-filter for your experiment.

![Targeting iOS users in an experiment setup](https://docs.statsig.com/images/experiments/power-analysis/navigation.png)

---

## Billing

### What counts as a billable event

Any gate/experiment check or event logged through the SDK or APIs. Pre-computed metrics and custom metrics based on existing data also count. Refer to the [Statsig pricing FAQ](https://statsig.com/pricing#faq) for a complete definition.

---

### How do I monitor and manage billable volume

1. Export usage from the **Usage and Billing** tab.
2. Pivot by event to identify high-volume events.
3. Admins receive alerts at 50/75/100% of contract.

![Usage dashboard showing event volume](https://docs.statsig.com/images/guides/first-feature/diagnostics-stream.png)

---

### How many projects can I create with a Pro subscription

Each Statsig Pro plan unlocks one project with pro features and 5M events. Additional projects require their own upgrade. Enterprise plans can cover multiple projects. [Contact Statsig](https://statsig.com/contact/demo) to discuss options.

---

## Platform usability

### When should I create a new project

Projects have distinct boundaries. If you're using the same userIDs and metrics across surfaces, apps or environments, put them in the same project. Create a new project when you're managing a separate product with unique user IDs and metrics.

For example, if you have a marketing website (anonymous users) and a product (signed-in users), you may want to separate them. However, if you want to track success across both, you should manage them in the same project. For example, track from user signup on the marketing website to user engagement within the product.

Reasons to avoid creating a new project:

- Segregating by environment: Statsig supports environments natively, and you can customize them. You can turn features or experiments on and off by environment.
- Segregating by platform: If you have an iOS app and a web app, collecting data in the same project lets you view data by platform and understand whether you increased the overall metric or moved users from one platform to the other.

---

### How can I monitor the health of Statsig and get support

You can check the live operational status of Statsig at [status.statsig.com](http://status.statsig.com). To report an issue or receive help, contact the team directly in the [Slack Community](https://statsig.com/slack).

---

