Skip to main content
An environment is an isolated copy of your flag configuration. Every organization starts with Production and Staging, and you can add more. The same flags exist across all environments, but each environment configures them independently. You might enable a flag at 100% in Staging while it’s still off in Production.

SDK keys

Each environment has its own SDK keys. A key tells an SDK which environment to read and how to connect. There are two kinds:

Client key

Prefix slc_. Safe to ship in browsers, mobile apps, and other public clients. Its configuration is served in an obfuscated form.

Server key

Prefix sls_. For trusted backends only. Reads the full configuration and must be kept secret.
Find both keys on the Environments page. Choose the key that matches where your code runs.
Never ship a server key (sls_) in client-side code. Use a client key (slc_) for anything that runs on a user’s device.

Choosing an environment

Point your development and staging builds at a non-production environment’s key, and your production build at the Production key. Because configuration is isolated per environment, you can test flag changes safely before they reach real users.
An environment’s configuration is independent. Changing a flag in Staging never affects Production.