Considerations
This script should work out of the box. It’s recommended you start with a test environment of 5-10 flags. However, before running the script on a large scale, consider the following:- IMPORTANT: If you don’t need to customize this import script, you can just use Statsig’s in-console tool
-
The script uses a tag
Imported from LaunchDarkly
to identify migrated flags in Statsig. Ensure this tag is unique and recognizable. - The script includes a function to delete all Statsig feature gates with a specific tag. Use this with caution to clean up after a test or failed migration.
- The script requires API keys for both LaunchDarkly and Statsig, which should be kept secure.
Installation
To run the script, you need Node.js and npm installed on your system. You can execute directly:Configuration
- Provide your LaunchDarkly API key and Statsig Console API key in the script
- Map LaunchDarkly environments to Statsig environments that aren’t already the same by using
--environment-name-mapping
to the script. - Map LaunchDarkly context kind to Statsig’s custom unit ids and custom fields.
Running the Script
To execute the migration script, run the following command in your terminal:- Fetch all feature flags from LaunchDarkly.
- Translate each flag into Statsig’s format.
- Create feature gates in Statsig.
- Write the migration status and details to a CSV file named
flag_migration_tracker.csv
Example Translations
The following examples show how LaunchDarkly feature flags are translated into Statsig feature gates: Example 1: LaunchDarkly flag with email and name targeting conditions

Troubleshooting
If you encounter issues during the migration, check the following:- Ensure that the API keys are correct and have the necessary permissions.
- Review the error messages in the console for clues on what might have gone wrong.