Frequently Asked Questions

A curated summary of the top questions asked on our Slack community, often relating to implementation, functionality, and building better products generally.
Statsig FAQs

Why isn't the `useExperiment` hook working in my code and how can I get it to work?

In order to get the useExperiment hook to work correctly in your code, you need to ensure that the StatsigProvider wraps your entire app or at least the root component that uses Statsig. This is because the StatsigProvider initializes the SDK and passes down its state to the rest of the React application via a StatsigContext.Here's how you can modify your code:

jsx // Initialize Statsig at a higher level, ideally in your app's root component <StatsigProvider  sdkKey=CLIENT_SDK_KEY  waitForInitialization={true}  user={{userID: userData?.id, email: userData?.email}}  options={{    environment: { tier: "development" },  }} >  <App /> {/* Your app's root component */} </StatsigProvider> // Then in your ButtonModal component export function ButtonModal({ ...props }: ButtonModalProps) {  const classes = useStyles();  const [ isButtonModalOpen, setIsButtonModalOpen ] = useState(false);  const { config } = useExperiment("button_test");  // Rest of your code... } By doing this, the StatsigProvider will initialize the SDK once and provide the necessary context for all child components. This should allow the useExperiment hook to work correctly. Remember, you cannot call useExperiment in the same component that is rendering the provider. The provider needs to wrap a component above this in the hierarchy.

Join the #1 Community for Product Experimentation

Connect with like-minded product leaders, data scientists, and engineers to share the latest in product experimentation.

Try Statsig Today

Get started for free. Add your whole team!

What builders love about us

OpenAI OpenAI
Brex Brex
Notion Notion
SoundCloud SoundCloud
Ancestry Ancestry
At OpenAI, we want to iterate as fast as possible. Statsig enables us to grow, scale, and learn efficiently. Integrating experimentation with product analytics and feature flagging has been crucial for quickly understanding and addressing our users' top priorities.
Dave Cummings
Engineering Manager, ChatGPT
Brex's mission is to help businesses move fast. Statsig is now helping our engineers move fast. It has been a game changer to automate the manual lift typical to running experiments and has helped product teams ship the right features to their users quickly.
Karandeep Anand
At Notion, we're continuously learning what our users value and want every team to run experiments to learn more. It’s also critical to maintain speed as a habit. Statsig's experimentation platform enables both this speed and learning for us.
Mengying Li
Data Science Manager
We evaluated Optimizely, LaunchDarkly, Split, and Eppo, but ultimately selected Statsig due to its comprehensive end-to-end integration. We wanted a complete solution rather than a partial one, including everything from the stats engine to data ingestion.
Don Browning
SVP, Data & Platform Engineering
We only had so many analysts. Statsig provided the necessary tools to remove the bottleneck. I know that we are able to impact our key business metrics in a positive way with Statsig. We are definitely heading in the right direction with Statsig.
Partha Sarathi
Director of Engineering
We use cookies to ensure you get the best experience on our website.
Privacy Policy