Skip to content
4 min read
Table of Contents
Choose a framework to optimize documentation to:

Vercel provides a set of Environment Variables that are automatically populated by the System, such as the URL of the Deployment or the name of the Git branch deployed.

To expose them to your Deployments, make sure Automatically expose System Environment Variables is checked in your Project Settings.

Automatically exposing System Environment Variables in the Project Settings.
Automatically exposing System Environment Variables in the Project Settings.
Automatically exposing System Environment Variables in the Project Settings.

If you are using a Framework for your Project, Vercel provides prefixed Environment Variables, which you can find in the table below:

When you choose to automatically expose System Environment Variables, some React warnings, such as those in a create-react-app will display as build errors. For more information on this error, see How do I resolve a process.env.CI = true error?
Name
Description
VERCEL
An indicator to show that System Environment Variables have been exposed to your project's Deployments. Example: 1.
CI
An indicator that the code is running in a Continuous Integration environment. Example: 1. Note: This Variable is only exposed during Build Step.
VERCEL_ENV
The Environment that the app is deployed and running on. The value can be either production, preview, or development.
VERCEL_URL
The domain name of the generated deployment URL. Example: *.vercel.app. The value does not include the protocol schemehttps://.
VERCEL_BRANCH_URL
The domain name of the generated Git branch URL. Example: *-git-*.vercel.app. The value does not include the protocol scheme https://.
VERCEL_REGION
The ID of the Region where the app is running. Example: cdg1. Note: This Variable is only exposed during Runtime for Serverless Functions.
VERCEL_GIT_PROVIDER
The Git Provider the deployment is triggered from. Example: github.
VERCEL_GIT_REPO_SLUG
The origin repository the deployment is triggered from. Example: my-site.
VERCEL_GIT_REPO_OWNER
The account that owns the repository the deployment is triggered from. Example: acme.
VERCEL_GIT_REPO_ID
The ID of the repository the deployment is triggered from. Example: 117716146.
VERCEL_GIT_COMMIT_REF
The git branch of the commit the deployment was triggered by. Example: improve-about-page.
VERCEL_GIT_COMMIT_SHA
The git SHA of the commit the deployment was triggered by. Example: fa1eade47b73733d6312d5abfad33ce9e4068081.
VERCEL_GIT_COMMIT_MESSAGE
The message attached to the commit the deployment was triggered by. Example: Update about page.
VERCEL_GIT_COMMIT_AUTHOR_LOGIN
The username attached to the author of the commit that the project was deployed by. Example: johndoe.
VERCEL_GIT_COMMIT_AUTHOR_NAME
The name attached to the author of the commit that the project was deployed by. Example: John Doe.
VERCEL_GIT_PREVIOUS_SHA
The git SHA of the last successful deployment for the project and branch. Example: fa1eade47b73733d6312d5abfad33ce9e4068080. Note: This Variable is only exposed when an Ignored Build Step is provided.
VERCEL_GIT_PULL_REQUEST_ID
The pull request id the deployment was triggered by. If a deployment is created on a branch before a pull request is made, this value will be an empty string. Example: 23.

Frameworks typically use a prefix in order to expose Environment Variables to the browser.

The following prefixed Environment Variables will be available during the Build Step, based on the Project's selected Framework Preset.

System Environment Variables will be populated with an empty string if the value is not applicable, for example when running vercel dev during Development or if the Deployment is not triggered by a Git Commit.
Last updated on September 27, 2023