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

# Machine configuration

> Set the power and cost of the servers that run your published app: CPU, memory, and the maximum number of machines.

Machine configuration controls the power of the servers running your published app. Replit picks a sensible default, so most builders never need to change it. Consider a more powerful configuration when your app feels slow under load or works with large amounts of data in memory.

To change it, open the Publishing tool, select **Adjust settings**, and select **Edit** next to **Machine configuration**.

## The settings

* **CPU**: How much simultaneous work each server can handle. More vCPUs help when many people use your app at the same time.
* **Memory (RAM)**: How much data your app can hold in memory. More RAM helps with large files, media, or data-heavy work.
* **Max machines**: Autoscale only. The upper limit of servers Replit can add when your app is busy. Your app never scales beyond this number, which caps your maximum cost.

## What it costs

The pane shows two numbers as you configure:

* **Per machine**: The hourly cost of one server with your chosen configuration.
* **At max traffic**: The hourly cost if your app is busy enough to use every machine up to your maximum.

Costs are measured in compute units, a unit of cloud computing based on the CPU and memory you choose. To see current rates and how usage is billed, see [usage-based billing](/billing/about-usage-based-billing#2-compute-units).

## How billing differs by deployment type

The same configuration bills differently depending on your [deployment type](/features/publishing/deployment-types):

* **Autoscale**: You pay while requests are being served. When your app is idle, it scales to zero and costs nothing to run.
* **Reserved VM**: Your server is always on, so you pay a fixed monthly cost for the chosen configuration.
* **Static**: No machines run your site, so machine configuration doesn't apply.
* **Scheduled**: You pay for the machine during each scheduled run.

## Apply your changes

Publish your app again after changing the configuration. The new machine settings take effect with the new deployment.

## Next steps

* [Deployment types](/features/publishing/deployment-types): Choose how your app is hosted.
* [Publishing costs](/billing/deployment-pricing): View publishing costs by deployment type.
