Your First Render Deploy

Welcome! Let's get up and running on Render.

This tutorial uses free Render resources. No payment is required. All you need is a GitHub repo with the web app you want to deploy (GitLab and Bitbucket work too).

Want to deploy an example app using a particular language or framework?

Check out our quickstarts.

Signing up is fast and free:

Sign up for Render

To deploy to Render, you create a service that pulls, builds, and runs your code.

  1. Open the Render Dashboard.

  2. In the top-right corner, open the + New dropdown:

The "New" dropdown in the Render dashboard

Here you select a service type.

For this tutorial, choose Web Service or Static Site:

You can deploy either of these service types for free on Render.

Free web services "spin down" after 15 minutes of inactivity.

They spin back up when they next receive an incoming HTTP request or new WebSocket connection. Learn more about free instance limitations.

After you select a service type, the service creation form appears.

  1. First, connect your GitHub/GitLab/Bitbucket account to Render:

    Options for connecting your Git provider to Render

    After you connect, the form shows a list of all the repos you have access to:

    List of available repos to use for a new service

  2. Select the repo that contains your web app and click Connect.

    The rest of the creation form appears.

Complete the service creation form to define how Render will build and run your app.

Click the tab for your service type to view important field details:

When you're done, click the Deploy button at the bottom of the form. Render kicks off your first deploy.

Render automatically opens a log explorer that shows your deploy's progress:

Logs for a service deploy

Follow along as the deploy proceeds through your build and start commands.

  • If the deploy completes successfully, the deploy's status updates to Live and you'll see log lines like these:

  • If the deploy fails, the deploy's status updates to Failed. Review the log feed to help identify the issue.

    • Also see Troubleshooting Your Deploy for common solutions.
    • After you identify the issue, push a new commit to your linked branch. Render will automatically start a new deploy.

After your app deploys successfully, you're ready to view it live.

Every Render web service and static site receives a unique onrender.com URL. Find this URL on your service's page in the Render Dashboard:

A service's onrender.com URL

Click the URL to open it in your browser. Your service will serve the content for its root path.

Congratulations! You've deployed your first app on Render 🎉

When you're ready, check out recommended next steps.

Render provides fully managed Postgres and Key Value instances for your data needs. Both provide a Free instance type to help you get started.

Free Render Postgres databases expire 30 days after creation.

You can upgrade to a paid instance at any time to keep your data. Learn more about free instance limitations.

Learn how to create datastores and connect them to your app:

Paid services can also attach a disk for persistence of local filesystem data (by default, local filesystem changes are lost with each deploy).

The Render CLI helps you manage your Render services right from your terminal. Trigger deploys, view logs, initiate psql sessions, and more.

Get started with the Render CLI.

Add a custom domain

Each Render web service and static site receives its own onrender.com URL. You can also add your own custom domains to these service types. Learn how.

Deploying your app is just the beginning. Check out a few of the ways you can manage and monitor your running services on Render:

Note that some of these capabilities require running your service on a paid instance type.

In addition to supporting web services and static sites, Render offers a variety of other service types to support any use case:

Note that free instances are not available for these service types.

Use this flowchart to help determine which service type is right for your use case: