Testing your feature flag

Last updated:

|Edit this page

Once you've written your code, it's a good idea to test that each variant behaves as you'd expect. There are 3 ways you can do this:

Method 1: Assign a user a specific flag value

For boolean flags, you can roll out the flag to a specific user. For multivariate flags, you can assign a user to a specific variant by adding an optional override to your release conditions.

To do this:

  1. Go to your feature flag.

  2. Ensure the feature flag is enabled by checking the "Enable feature flag" box.

  3. Add a new condition set with the condition to email = your_email@domain.com. Set the rollout percentage for this set to 100%.

    • in cases where email is not available (such as when your users are logged out), you can use a parameter like utm_source and append ?utm_source=your_variant_name to your URL.
  1. If it is a multivariant flag, set the optional override to the variant you want to assign these users to.
  2. Click "Save".

Method 2: Use posthog.featureFlags.override()

Note: The posthog.featureFlags.override() method is only available in the JavaScript web and React Native SDKs.

You can add a manual override directly in your code by calling posthog.featureFlags.override():

JavaScript
posthog.featureFlags.override({
'your_boolean_feature_flag_key': true // for boolean feature flags
'your_multivariate_feature_flag_key': 'your_variant_name', // for multivariate feature flags
})

Method 3: Use the PostHog toolbar

Note: The PostHog toolbar is only available for the JavaScript web SDK.

The toolbar enables you to test your feature flags. You can enable, disable, or override your feature flags, and then view how your website or app changes with the new feature flags values.

To do this, click on the "Feature Flags" button in the toolbar, search for any feature flag, and click on the toggles to change its value.

Overriding feature flags will only affect your browser. You may also need to refresh the page to see how your change affect your website. It does not affect feature flags evaluation for your backend.

Questions?

Was this page useful?

Next article

Feature flag best practices

1. Call your flag in as few places as possible It should be easy to understand how feature flags affect your code. The more locations a flag is, the more likely it is to cause problems. For example, a developer could remove the flag in one place but forget to remove it in another. If you expect to use a feature flag in multiple places, it's a good idea to wrap the flag in a single function or method. For example: 2. Identify users Because PostHog evaluates flags based on the user's distinct ID…

Read next article