> ## Documentation Index
> Fetch the complete documentation index at: https://docs.shuttle.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Scaling

> Adjusting the computational resources allocated to your application

At Shuttle, you can adjust the vCPU and memory resources allocated to your application’s compute environment.
This functionality enables you to **vertically scale** your application to better suit your specific performance requirements and workload demands.

> [!WARNING]
>
> Changing the instance size of your project is limited to the Pro tier and above, and will result in additional charges. These are calculated according to our [usage-based pricing](https://docs.shuttle.dev/pricing/billing.md#usage-based-pricing) model. Please ensure you review the pricing details before making adjustments.

### Example

The example below illustrates how to configure your application to use a **medium** instance size using **Infrastructure from Code (Provisioning resources directly from your code, instead of having to deal with complex consoles and yaml files)**:

```rust main.rs theme={null}
#[shuttle_runtime::main(instance_size = "m")]
async fn main() -> shuttle_axum::ShuttleAxum {
    // Your application logic here
}
```

### Available Instance Sizes

The table below lists the available `instance_size` values, along with the corresponding instance type and minimum required Account Tier:

| Instance Size | Value | vCPU | Memory (GB) | Account Tier |
| - | - | - | - | - |
| **Basic** (default) | `xs` | 0.25 | 0.5 | Pro+ |
| **Small** | `s` | 0.5 | 1 | Pro+ |
| **Medium** | `m` | 1 | 2 | Pro+ |
| **Large** | `l` | 2 | 4 | Pro+ |
| **X Large** | `xl` | 4 | 8 | Pro+ |
| **XX Large** | `xxl` | 8 | 16 | Growth+ |

*Ensure your selected instance size aligns with your application's current and anticipated workload.*


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.