Environments Variables per Git branch

You can now add Environment Variables to a specific Git branch in the Preview Environment.

When you push to a branch, a combination of Preview Environment Variables and branch-specific variables will be used. Branch-specific variables will override other variables with the same name. This means you don't need to replicate all your existing Preview Environment Variables for each branch – you only need to add the values you wish to override.

Also, you no longer need to specify the type of Environment Variable (Plaintext, Secret, Provided by System) because all values are now encrypted. The new design is optimized for both security and convenience, ensuring you can easily view the value later by editing in the UI or running vercel env pull to fetch Development Environment Variables locally.

We previously introduced the Provided by System option as some frameworks need to map system variables like VERCEL_URL to framework prefixed variables like NEXT_PUBLIC_VERCEL_URL. You no longer need to configure this mapping because the prefixed variables are added automatically based on your Framework Preset.

Check out the documentation as well.