Once a site deploys from Git, every push to your repository reaches us through its webhook. The Deploy trigger decides what that push does: deploy straight away, deploy only when you tag a release, or never deploy on its own.
The three modes
On every push (the default). A push to your site's branch deploys the live site. If you have a staging copy with a branch set, a push to that branch deploys the staging copy. Pushes to any other branch are ignored.
On release tags. Only pushing a tag whose name matches your Release tag pattern deploys, and we deploy that tag, not the branch. Branch pushes are acknowledged and ignored, including pushes to your staging branch. A release tag always deploys the live site.
Manually. Pushes never deploy. You deploy when you are ready: from the Deploys tab, through the API or an AI assistant, or with a deploy hook call from your CI.
In all three modes the webhook stays connected, and the Deploys tab still shows when the last push arrived. That is how you can tell the webhook works even when a push is ignored on purpose.
Release tag patterns
The pattern is a simple glob: letters, numbers and * . - _ /. A * matches any run of characters, / included.
v*(the default, and what an empty field becomes) matchesv1.2.3andv2.release/*matchesrelease/2026-11.v2.*matchesv2.0.1but notv3.0.0.
Deleting a tag never deploys anything, even when its name matches.
What still deploys your branch
The mode only decides what a push does. These always deploy your site's branch, whichever mode you choose:
- Deploy from Git in the Git panel, and Redeploy on the Live now strip.
- A call to the deploy hook with no branch or tag in it (Trigger a deploy from CI with a deploy hook).
POST /api/v1/sites/{slug}/deployand thedeploy_sitetool, when called without aref.
So in On release tags mode, Deploy from Git deploys your branch, not your newest tag.
A push that arrives during a deploy
If a push to the same branch (or a matching tag) arrives while a deploy is still running, it is not lost: we deploy the newest commit as soon as the running deploy finishes.
Change the mode
- Open Sites → your site → Deploys, then Git settings (or open Deploy from Git).
- Under Deploy trigger, pick On every push, On release tags or Manually. Now: beside the heading shows what is saved.
- For On release tags, fill in the Release tag pattern, or leave it empty for
v*. - Press Save deploy trigger.
The new mode applies from the next push. The change is recorded in your account's audit log. Switching away from release tags keeps your pattern, so it is still there if you switch back.
You need a role that can change the site's settings (Roles and permissions). The API sets the same thing with deploy_mode (push, release or manual) and release_pattern on PATCH /api/v1/sites/{slug}/build.
With the CI/CD add-on
The mode decides when a deploy starts. With the CI/CD add-on on, every Git deploy, whatever started it, is built and tested and then waits for your approval before visitors see it.