Deploying on Render – Render Docs

Render can automatically deploy your application each time you merge a change to your codebase:

You can also trigger manual deploys, both programmatically and in the Render Dashboard.

All service types redeploy with zero downtime, unless they attach a persistent disk.

You can view your service's deploy history and current live deploy from its Deploys page in the Render Dashboard.

Automatic deploys

As part of creating a service on Render, you link a branch of your Git provider repo (such as main or production). Whenever you push or merge a change to that branch, by default Render automatically rebuilds and redeploys your service.

Auto-deploys appear on your service's Deploys page in the Render Dashboard:

If needed, you can skip an auto-deploy for a particular commit, or even disable auto-deploys entirely.

Auto-deploys require a connected Git provider. Services that use a prebuilt Docker image or a public Git repository URL must be deployed manually.

Configuring auto-deploys

Configure a service's auto-deploy behavior from its Settings page in the Render Dashboard:

Under Auto-Deploy, select one of the following:

Option Description
On Commit Render triggers a deploy as soon as you push or merge a change to your linked branch.
This is the default behavior for a new service.
After CI Checks Pass With each change to your linked branch, Render triggers a deploy only after all of your repo's CI checks pass.
For details, see Integrating with CI.
Off Disables auto-deploys for the service.
Choose this option if you only want to trigger deploys manually.

Integrating with CI

If you set your service's auto-deploy behavior to After CI Checks Pass, Render waits for a new commit's CI checks to complete before triggering a deploy. If all checks pass, Render proceeds with the deploy.

For GitHub checks, Render considers a check "passed" if its conclusion is any of success, neutral, or skipped.

Render does not trigger a deploy if:

If your repo doesn't run CI checks, use On Commit instead of After CI Checks Pass to enable auto-deploys.

Select the tab for your Git provider to learn which CI checks are supported:

GitHubGitHub

GitLabGitLab

BitbucketBitbucket

Render detects the results of CI checks originating from the following:

Supported checks appear on commits and pull requests in the GitHub UI:

Render detects the results of jobs executed as part of GitLab CI/CD pipelines.

Render detects the results of steps executed as part of Bitbucket Pipelines.

Skipping an auto-deploy

Certain changes to your codebase might not require a new deploy, such as edits to a README file. In these cases, you can include a skip phrase in your Git commit message to prevent the change from triggering an auto-deploy:

$ git commit -m "[skip render] Update README"

The skip phrase is one of [skip render] or [render skip]. You can also replace render with one of the following:

When an auto-deploy is skipped, a corresponding entry appears on your service's Events page:

For additional control over auto-deploys, configure build filters.

With build filters, Render triggers an auto-deploy only if there are changes to particular files in your repo (no skip phrase required). See details.

Manual deploys

You can manually trigger a Render service deploy in a variety of ways:

From your service's Deploys page in the Render Dashboard, open the Manual Deploy dropdown:

Select a deploy option:

Option Description
Deploy latest commit Deploys the most recent commit on your service's linked branch.
Deploy a specific commit Deploys a specific commit from your service's linked repo. Specify a commit by its SHA, or by selecting it from a list of recent commits.
This disables automatic deploys for the service. This is because an automatic deploy might reintroduce commits you wanted to exclude from this deploy.
Learn more about deploying a specific commit.
Clear build cache & deploy Similar to Deploy latest commit, but first clears the service's build cache. This way, the new deploy doesn't reuse any artifacts generated during a previous build.
Use this option to incorporate changes to your service's build command, or to refresh stale static assets.
Restart service Deploys the same commit that's currently deployed for the service, with the same values for user-defined environment variables. For details, see Restarting a service.

Run the Render CLI's deploys create command:

$ render deploys create

This opens an interactive menu that lists the services in your workspace. Select a service to deploy, then proceed through the prompts.

Each Render service has a unique Deploy Hook URL available on its Settings page in the Render Dashboard:

You can trigger a manual deploy by sending an HTTP GET or POST request to this URL. For details, see Deploy Hooks.

Send a POST request to the Render API's Trigger Deploy endpoint.

This endpoint accepts optional body parameters for clearing the service's build cache and/or deploying a specific commit. For services that pull a Docker image, you can specify the URL of the image to pull.