Home › Guides

How to turn off auto-deploy on Render

In the Render dashboard, open the service, go to Settings → Build & Deploy and set Auto-Deploy to Off. For Blueprints add autoDeployTrigger: off to each service in render.yaml, and over the API send PATCH /v1/services/{id} with {"autoDeployTrigger":"off"}.

Last updated · by Patrick Schmetzer, author of Deploy Center

The service stays connected to its repository either way. Pushes simply stop starting deploys, and you deploy with one click or one call.

1. In the dashboard

  1. Open the service on dashboard.render.com.
  2. Go to Settings, section Build & Deploy.
  3. Set Auto-Deploy to Off. The other choices are On Commit and After CI Checks Pass.
  4. Deploy by hand with Manual Deploy → Deploy latest commit.

2. In render.yaml (Blueprints)

If your services come from a Blueprint with auto-sync, set it in the file. Otherwise the next sync can switch auto-deploy back on.

services:
  - type: web
    name: api
    runtime: node
    buildCommand: npm ci && npm run build
    startCommand: npm start
    autoDeployTrigger: off   # commit | checksPass | off

3. With the Render API

Create an API key under Account Settings → API Keys. List your services and their current setting:

curl -s "https://api.render.com/v1/services?limit=100" \
  -H "Authorization: Bearer $RENDER_API_KEY" \
  | jq -r '.[].service | [.id, .name, (.autoDeployTrigger // .autoDeploy)] | @tsv'

This returns at most 100 services. With more, pass the cursor of the last item as &cursor=… to get the next page, or some services are missing from the list.

Turn it off for one service:

curl -s -X PATCH "https://api.render.com/v1/services/$SERVICE_ID" \
  -H "Authorization: Bearer $RENDER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"autoDeployTrigger":"off"}'

Older responses carry autoDeploy: "yes" | "no" instead; the jq line above prints whichever is there. Deploy the latest commit by hand:

curl -s -X POST "https://api.render.com/v1/services/$SERVICE_ID/deploys" \
  -H "Authorization: Bearer $RENDER_API_KEY" \
  -H "Content-Type: application/json" -d '{}'

4. Every service at once: Deploy Center

Deploy Center keeps the API key in your macOS keychain, turns auto-deploy off for every service in one click, and lists the commits and PRs each service is behind.

deploys render set-key                 # store the API key in the keychain
deploys render autodeploy-off --all
deploys changed
deploys deploy-changed --yes

Less than off

Trade-offs. With auto-deploy off a merged fix is not live until someone deploys it. Pull request previews are a separate setting and are not changed by this. Deploy hooks keep working.

Turn it back on

Set Auto-Deploy to On Commit again, or send {"autoDeployTrigger":"commit"}, or change render.yaml.

Questions

Does turning off auto-deploy disconnect the repository?

No. The service keeps its repository and branch; only pushes stop starting deploys. Manual deploys still build the latest commit.

Why did auto-deploy turn itself back on?

Usually a Blueprint sync. Put autoDeployTrigger: off on each service in render.yaml.

Can I deploy a specific commit?

Yes. In the dashboard choose Manual Deploy → Deploy a specific commit, or pass commitId in the body of the deploys API call.

Are preview environments affected?

No. Pull request previews and preview environments have their own setting.

Do it for every project in one click.

Deploy Center is a free, open-source Mac app. It turns off auto-deploy on Vercel, Render, Netlify, Cloudflare Pages and more, shows the commits and PRs waiting to go live, and deploys what changed when you decide.