On this page

FAQ

Answers to common questions about Statsig's SDKs, experiments, gates, billing, and platform usage.

SDKs and APIs

How does bucketing in the Statsig SDKs work?

Refer to How Evaluation Works.

Can I add a layer to a running experiment?

No. Layers are fixed 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.

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

Likely yes. Post in the Statsig Slack community and the team will discuss options.

How do I retrieve all exposures for a user?

The Users tab 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 shown is Unrecognized. Refer to SDK debugging for more detail. This applies to deleted, archived, or unseen configs (for example, configs filtered by 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 the new percentage is reached. 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 when sample sizes are small or variances differ.

How does Statsig handle low sample sizes?

Statsig falls back to Welch's 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 and roll out. If it's already in production, create an experiment. 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


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.


How do I monitor and manage billable volume?

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

Usage dashboard showing event volume


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 us 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, 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. To report an issue or receive help, reach out directly in our Slack Community.

Was this helpful?