Skip to content

Flagsmith

Flagsmith gives an app remote switches and settings, with cloud and self-hosted ways to run the service.

Visit Flagsmith

Can one switch show a banner and choose its message?

Flagsmith can return whether a feature is enabled and an optional value. An app could use the switch to decide whether to show a maintenance banner and read the value for its wording. The app still needs code for both decisions.

A value can also be a number, such as how many examples to show. Keep settings safe for the people who receive them. Treat text intended for a browser as something a visitor could read.

Why did one tester get a different setting from the rest of the group?

Flagsmith checks individual overrides first, then matching group overrides, then the environment’s default. A group of identities that match rules is called a segment. If your app retrieves flags without identifying the person, the environment defaults apply.

Imagine that every tester should see a banner except the person recording a clean demo. An individual override could explain their different result. Inspect that identity and then the matching segment in the environment you meant to test.

What should the page show while Flagsmith is unavailable?

Choose default settings in the browser library and decide whether to let it reuse a saved response. A returning browser that uses a cache can show an older value while a new browser sees your default.

  1. Confirm the practice app is separate
    Before opening the page, verify that its Flagsmith connection belongs to a test environment and that any identities and segments contain fictional testers. Confirm any records, messages and analytics go only to test destinations. If you cannot verify it, inspect the settings or use a paper exercise.
  2. Give the built-in and fetched settings different values
    In the test app, keep the banner enabled and set its built-in message to “Practice default.” Keep it enabled in the test environment too, with “Practice remote” as the message. With browser caching enabled, open one test browser and verify it has received and saved “Practice remote.” Keep a second browser profile fresh.
  3. Simulate a flag failure while the app still loads
    Use a failure switch that affects only the flag request in the disposable copy. Keep the app and its other test services available. With the failure on, open the fresh browser and expect “Practice default.” Reopen the first browser without clearing its saved flags. If its saved response is still usable, expect “Practice remote.” If you cannot isolate the simulated failure, trace these cases on paper or inspect the app settings without running the exercise.
  4. Restore the test connection and recheck
    Turn the simulation off and change the message in the test flag to “Practice restored.” Reload both browsers and check that they show the new message. This distinguishes a fresh response from the earlier saved one. If the message does not change, check when the app fetches and applies a new response.

How do you move from two versions to measuring an outcome?

Assigning variations is the first part. To compare them, record which version a test participant reached and what happened next. Flagsmith documents a built-in experimentation beta that requires a supported library and a connected place to store experiment data.

On Flagsmith Cloud you can use its managed warehouse. Connecting your own has plan requirements. Self-hosted deployments have their own setup, and Flagsmith recommends a separate warehouse for production experimentation rather than storing those events alongside flag data.

What changes if you run Flagsmith yourself?

Flagsmith’s Cloud Free plan lists 50,000 requests per month and one team member. Check what counts as a request, including flag and identity fetches. With the open-source core, you can run the service on infrastructure you manage.

Self-hosting adds a server, upgrades and backups to your work. Before moving, record your environment defaults, rules and individual exceptions. The management API can help inspect that configuration. Verify how you will reproduce both the rules and the intended assignments before changing the app’s connection.