Skip to content

Instance Sizes

An instance is one running replica of your app. Its size determines how much CPU and memory that replica receives. If your app runs multiple replicas, each replica gets the full resources shown for the selected size in the table below.

Instance sizeCPU per replicaMemory per replicaBeta availability
Free0.1 CPU500 MiBHobby and Pro
Micro0.5 CPU500 MiBPro beta rollout
Small1 CPU2 GiBPro beta rollout
Medium2 CPU4 GiBPro beta rollout
Large4 CPU8 GiBComing later
XLarge8 CPU16 GiBComing later
2XLarge16 CPU32 GiBComing later
  1. Navigate to your app in the dashboard.
  2. Select Scaling from the sidebar.
  3. In Instance Size, click Change.
  4. Select an instance size.
  5. Click Update and redeploy.

Changing the instance size creates a new deployment with the selected CPU and memory. The current deployment continues serving traffic until the replacement is ready.

Instance sizes other than Free require a Pro team. If you select a Pro size while using Hobby, the dashboard prompts you to upgrade.

Start with the smallest size that comfortably handles your app’s normal workload, then use the Metrics page to watch CPU and memory usage.

  • If CPU usage repeatedly reaches its limit, requests may be throttled. Move to a larger size or optimize CPU-intensive work.
  • If memory usage reaches its limit, the instance can be terminated for running out of memory and restarted. Move to a larger size or investigate memory growth.

Size and replica count solve different problems. A larger instance gives each replica more CPU and memory, while autoscaling adds or removes replicas in response to traffic. The total resources available to your app depend on both settings.