Web feature flags installation
- 1
Choose an installation method
RequiredYou can either add the JavaScript snippet directly to your HTML or install the JavaScript SDK via your package manager.
Add this snippet to your website within the
<head>tag. This can also be used in services like Google Tag Manager:HTMLInstall the PostHog JavaScript library using your package manager. Then, import and initialize the PostHog library with your project token and host:
JavaScript - 2
Send events
RecommendedOnce installed, PostHog will automatically start capturing events. You can also manually send events to test your integration:
Click around and view a couple pages to generate some events. PostHog automatically captures pageviews, clicks, and other interactions for you.
If you'd like, you can also manually capture custom events:
JavaScript - 3
Use boolean feature flags
RequiredCheck if a feature flag is enabled:
- 4
Use multivariate feature flags
OptionalFor multivariate flags, check which variant the user has been assigned:
- 5
Use feature flag payloads
OptionalFeature flags can include payloads with additional data. Fetch the payload like this:
- 6
Ensure flags are loaded
OptionalEvery time a user loads a page, we send a request in the background to fetch the feature flags that apply to that user. We store those flags in your chosen persistence option (local storage by default).
This means that for most pages, the feature flags are available immediately — except for the first time a user visits.
To handle this, you can use the
onFeatureFlagscallback to wait for the feature flag request to finish: - 7
Reload feature flags
OptionalFeature flag values are cached. If something has changed with your user and you'd like to refetch their flag values:
- 8
Running experiments
OptionalExperiments run on top of our feature flags. Once you've implemented the flag in your code, you run an experiment by creating a new experiment in the PostHog dashboard.
- 9
Next steps
RecommendedNow that you're evaluating flags, continue with the resources below to learn what else Feature Flags enables within the PostHog platform.
Resource Description Creating a feature flag How to create a feature flag in PostHog Adding feature flag code How to check flags in your code for all platforms Framework-specific guides Setup guides for React Native, Next.js, Flutter, and other frameworks How to do a phased rollout Gradually roll out features to minimize risk More tutorials Other real-world examples and use cases