Why doesn't my environment variable change take effect? - Vercel DevOps for Jira

When you use the Set Vercel Environment Variable automation action, the variable is written to Vercel immediately - but whether it affects your running app depends on how the variable is consumed.

Build-time vs. runtime variables

  • Build-time variables are read while your project is being built and are baked into the output. In Next.js these are the NEXT_PUBLIC_* variables inlined into the client bundle, and any variable read in build scripts (Webpack, Vite, etc.). Setting a new value has no effect until the next deployment, because the currently running build still contains the old value.
  • Runtime variables are read each time your code runs - for example a serverless or edge function reading process.env on each request. These take effect on the next invocation, with no redeployment needed.

How to make a build-time change live

Follow the Set Environment Variable action with a Trigger Vercel Redeployment action in the same rule, and always put them in this order:

1. Set Vercel Environment Variable   (writes the new value)
2. Trigger Vercel Redeployment       (bakes it into a fresh build)

Setting the variable after the redeployment means the new build will not include it - the value would only be picked up by the following deployment.

A few other things to check

  • Right environment. The action targets a single environment (production or preview). A value set for preview will not change production, and vice versa.
  • Right project. The action operates on the Vercel project you selected in the rule, which must be connected to the Jira project the rule runs in.
  • Valid key. Keys must use uppercase letters, digits and underscores, and must not start with a digit. An invalid key is rejected.
  • Plaintext only. Values are stored as plaintext in Vercel, so never use secrets here.

Still stuck? Reach out to our support team.