# Render Instance Types — Specify your service's available RAM and CPU.

A Render service's *instance type* determines its RAM and CPU specs. For most service types, you specify an instance type during [service creation](your-first-deploy) and can change it later:

[image: Selecting a web service's instance type in the Render Dashboard]

If you [scale](scaling) a service to run multiple instances, each instance uses the same instance type.

A couple of service types handle instance types differently from the others:

- A workflow service defines multiple runnable tasks, each of which can use a different instance type. You specify each task's instance type directly in your code. [Learn more](/workflows-defining#instance-type-compute-specs).
- Static sites do not have an instance type at all, because they do not perform server-side processing.

## Changing a service's instance type

> *Render Postgres and Key Value instances require brief downtime when changing their instance type.*
>
> See details for each:
>
> - [Render Postgres](postgresql-creating-connecting#changing-your-instance-type)
> - [Render Key Value](key-value#changing-instance-types)
>
> Other service types redeploy with zero downtime, unless they have an attached persistent disk.

Change your service's instance type using any method listed below.

Note that your service's instance type does not change until the first successful deploy _after_ you update it.

**Dashboard**

1. From your service's *Settings* page in the [Render Dashboard](https://dashboard.render.com), find the *Instance Type* setting under *General*:

    [image: Updating a service's instance type in the Render Dashboard]

2. Click *Update* and select a new instance type.

3. Click *Save Changes*.

Render automatically triggers a new deploy to apply the new instance type.

**API**

> *Get started with the [Render API](api).*

1. Send a request to the Render API endpoint that corresponds to your service type:

    - [Update service](https://api-docs.render.com/reference/update-service) (all non-datastore services)
    - [Update Postgres instance](https://api-docs.render.com/reference/update-postgres)
    - [Update Key Value instance](https://api-docs.render.com/reference/update-key-value)

    In your request body, provide the new instance type in the `plan` field. For [Update service](https://api-docs.render.com/reference/update-service) only, this field is nested under `serviceDetails`:

    ```json
    {
      "serviceDetails": {
        "plan": "pro_plus"
      }
    }
    ```

2. For [Update service](https://api-docs.render.com/reference/update-service) only, follow up with a request to the [Trigger deploy](https://api-docs.render.com/reference/create-deploy) endpoint to apply the new instance type.
    - The Update service endpoint does _not_ trigger a new deploy.

**Blueprint (render.yaml)**

In your Blueprint file (usually `render.yaml`), set your service's `plan` field to a new instance type:

```yaml{5}:render.yaml
services:
  - type: web
    name: my-service
    runtime: node
    plan: pro plus
```

See all Blueprint-formatted plan names for [services](blueprint-spec#plan) and [databases](blueprint-spec#plan-1).

The next time you sync your Blueprint, Render triggers a new deploy to apply the new instance type.

## Available instance types

> *For pricing details on instance types, see the [pricing page](/pricing#compute).*

Available instance types vary by service type. Select a tab below to view instance types for a particular service type.

**Web service**

| Instance Type | RAM | CPU |
| --- | --- | --- |
| [*Free*](free) | 512 MB | 0.1 |
| *Starter* | 512 MB | 0.5 |
| *Standard* | 2 GB | 1 |
| *Pro* | 4 GB | 2 |
| *Pro Plus* | 8 GB | 4 |
| *Pro Max* | 16 GB | 4 |
| *Pro Ultra* | 32 GB | 8 |

**Private service / Background worker**

| Instance Type | RAM | CPU |
| --- | --- | --- |
| *Starter* | 512 MB | 0.5 |
| *Standard* | 2 GB | 1 |
| *Pro* | 4 GB | 2 |
| *Pro Plus* | 8 GB | 4 |
| *Pro Max* | 16 GB | 4 |
| *Pro Ultra* | 32 GB | 8 |

**Cron job**

| Instance Type | RAM | CPU |
| --- | --- | --- |
| *Starter* | 512 MB | 0.5 |
| *Standard* | 2 GB | 1 |
| *Pro* | 4 GB | 2 |
| *Pro Plus* | 8 GB | 4 |

**Workflow**

All workspaces can use the following instance types for workflow tasks:

| Instance Type | RAM | CPU |
| --- | --- | --- |
| *Starter* | 512 MB | 0.5 |
| *Standard* | 2 GB | 1 |
| *Pro* | 4 GB | 2 |

If you need to handle more resource-intensive workloads, you can request access to the following larger instance types for your workspace:

| Column 1 | Column 2 | Column 3 | Column 4 | Column 5 | Column 6 |
| --- | --- | --- | --- | --- | --- |
| Instance Type | RAM | CPU | *Pro Plus* | 8 GB | 4 |
| *Pro Max* | 16 GB | 4 |  |  |  |
| *Pro Ultra* | 32 GB | 8 |  |  |  |

**Postgres**

> *Your Render Postgres instance type does not affect storage capacity.*
>
> Instance type only determines your database instance's RAM and CPU. For details, see [Flexible Plans for Render Postgres](postgresql-refresh).

| Instance Type | RAM | CPU | Connection Limit |
| --- | --- | --- | --- |
| [*Free*](free) | 256 MB | 0.1 | 100 connections |
| *Basic-256mb* | 256 MB | 0.1 | 100 connections |
| *Basic-1gb* | 1 GB | 0.5 | 100 connections |
| *Basic-4gb* | 4 GB | 2 | 100 connections |
| *Pro-4gb* | 4 GB | 1 | 100 connections |
| *Pro-8gb* | 8 GB | 2 | 200 connections |
| *Pro-16gb* | 16 GB | 4 | 400 connections |
| *Pro-32gb* | 32 GB | 8 | 500 connections |
| *Pro-64gb* | 64 GB | 16 | 500 connections |
| *Pro-128gb* | 128 GB | 32 | 500 connections |
| *Pro-192gb* | 192 GB | 48 | 500 connections |
| *Pro-256gb* | 256 GB | 64 | 500 connections |
| *Pro-384gb* | 384 GB | 96 | 500 connections |
| *Pro-512gb* | 512 GB | 128 | 500 connections |
| *Accelerated-16gb* | 16 GB | 2 | 400 connections |
| *Accelerated-32gb* | 32 GB | 4 | 500 connections |
| *Accelerated-64gb* | 64 GB | 8 | 500 connections |
| *Accelerated-128gb* | 128 GB | 16 | 500 connections |
| *Accelerated-256gb* | 256 GB | 32 | 500 connections |
| *Accelerated-384gb* | 384 GB | 48 | 500 connections |
| *Accelerated-512gb* | 512 GB | 64 | 500 connections |
| *Accelerated-768gb* | 768 GB | 96 | 500 connections |
| *Accelerated-1024gb* | 1024 GB | 128 | 500 connections |

**Key Value**

| Instance Type | RAM | Connection Limit |
| --- | --- | --- |
| [*Free*](free) | 25 MB | 50 connections |
| *Starter* | 256 MB | 250 connections |
| *Standard* | 1 GB | 1,000 connections |
| *Pro* | 5 GB | 5,000 connections |
| *Pro Plus* | 10 GB | 10,000 connections |
| *Pro Max* | 20 GB | 20,000 connections |
| *Pro Ultra* | 40 GB | 40,000 connections |



---

##### Appendix: Glossary definitions

###### service type

When you deploy code on Render, you select a *service type* based on the capabilities you need.

For example, you create a *web service* to host a dynamic web app at a public URL.

Related article: https://render.com/docs/service-types.md

###### Render Workflows

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

Ideal for agents, ETL pipelines, and background jobs.

Related article: https://render.com/docs/workflows.md

###### static site

Deploy this *service type* to host a static website (HTML/CSS/JS) over a global CDN at a public URL.

Related article: https://render.com/docs/static-sites.md

###### persistent disk

A high-performance SSD that you can attach to a service to preserve filesystem changes across deploys and restarts.

Disables [zero-downtime deploys](/deploys#zero-downtime-deploys) for the service.

Related article: https://render.com/docs/disks.md