Your First Render Deploy

Run your web app in minutes.

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

This tutorial uses free Render resources. No payment is required. All you need is a repository connected to a supported with the web app you want to deploy.

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

Check out our quickstarts.

1. Sign up

Signing up is fast and free:

Sign up for Render

2. Connect your Git provider

You can deploy to Render from a supported .

  1. Open your Account Settings page and scroll down to the Account Security section:

    Connecting your Git provider

  2. Under Git Deployment Credentials, click Add credential and authorize Render with your provider.

3. Choose a service type

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

For this tutorial, you'll create a Web Service or a Static Site:

Service typeDescriptionCommon frameworks

Web Service

Choose this if your web app runs any server-side code. The app also needs to listen for HTTP requests on a port.

Full-stack web apps, API servers, and mobile backends are all web services.

Express, Next.js, Fastify, Django, FastAPI, Flask, Rails, Phoenix

Static Site

Choose this if your web app consists entirely of static content (mostly HTML/CSS/JS).

Blogs, portfolios, and documentation sets are often (but not always) static sites.

Astro, Hugo, Docusaurus, Next.js static exports

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.

4. Deploy your code

You can deploy using the Render Dashboard, the Render CLI, or a coding agent like Codex or Claude Code.

Select the tab for your preferred deployment method:

1. Connect your repo

  1. In the Render Dashboard, click + New in the top-right corner and select Web Service or Static Site:

    The "New" dropdown in the Render dashboard

    The service creation form appears, showing a list of all the repos you have access to:

    List of available repos to use for a new service

    If you haven't connected your Git provider yet, you can do so from this form.

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

    The rest of the creation form appears.

2. Configure deployment

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:

Web service fields
FieldDescription

Branch

Your service only deploys commits on the Git branch you specify, such as main.

Render can automatically redeploy your app whenever you push changes to this branch.

Root Directory

Deploying from a monorepo? Specify the subdirectory that represents your application root. Your build and start commands will run from this directory.

Language

If your app's programming language isn't listed in this dropdown, you can still deploy using the Docker runtime if you build your app from a Dockerfile.

Build Command

This is the command that Render will use to build your app from source and install dependencies.

Common examples include:

You can also use bun or yarn.

This usually resembles the command you run locally to install dependencies and perform any necessary compilation.

Start Command

This is the command that Render will use to start your app.

Common examples include:

You can also use bun or yarn.

For some frameworks, this might differ from the command you run locally to start your app. For example, a Flask app might use flask run locally but gunicorn for production.

Compute

This determines your service's CPU and RAM, along with its cost.

Choose the Free compute plan to deploy for free:

Selecting the Free compute plan

Environment Variables

These will be available to your service at both build time and runtime.

If you forget any, you can always add them later and redeploy.

When you're done, click the Deploy button at the bottom of the form.

That's it! Render creates your service and kicks off your first deploy.

5. Monitor your deploy

In the Render Dashboard, open your new service's Deploys page to see a log explorer showing 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.

6. Open your app

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. You can 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 🎉

Next steps

Connect a datastore

Render provides fully managed Postgres and Key Value instances for your data needs. Both provide a Free compute plan 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).

Install the Render CLI

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.

Learn about operational controls

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 compute plan.

Explore other service types

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

Service typeDescription

Private services

Run servers that aren't reachable from the public internet.

Background Workers

Offload long-running and computationally expensive tasks from your web servers.

Cron Jobs

Run periodic tasks on a schedule you define.

Workflows

Define collections of composable, long-running tasks that execute across distributed compute.

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

Use this flowchart to identify the right service type for your use case: