Render Service Types
Render supports five different service types for hosting your app:
You can also create fully managed data stores to use with your app:
Choosing a service type is the first step of creating a new service in the Render Dashboard:
See below for a summary of each service type, along with links to full documentation.
The most common service type. Dynamic web apps with a public
If you’re building a public web app using Express, Django, Rails, or something similar, use this service type.
To get started, you can create a free instance.
Apps that consist entirely of statically served assets (commonly HTML, CSS, and JS). Static sites have a public
Create a static site if you’re building with a framework like:
Dynamic web apps that don’t have a public URL. Private services do expose an internal hostname for receiving traffic from your other Render services over their shared private network.
Private services are great for deploying tools like:
Internal apps that run continuously, often to process jobs that are added to a Redis-backed queue or similar.
Background workers do not expose a URL or internal hostname, but they can send outbound requests to other service types.
Use background workers with a framework like:
Internal apps that run—and then exit—on a defined schedule. A cron job might run a single bash command, a script with multiple commands, or a compiled executable.
Cron jobs do not expose a URL or internal hostname, but they can send outbound requests to other service types.
In addition to the managed data stores below, Render supports attaching a persistent disk to most other service types.
A powerful, open-source relational database. To get started, you can create a free instance that expires after 90 days.
An in-memory key-value store that’s ideal for use as a job queue or a distributed cache. To get started, you can create a free instance.
All paid Redis instances regularly write to disk to persist data across restarts.