# Limits

The numbers behind the platform, collected. Each links to the page that explains it.

## Container sizes

See [Application settings](/create/application-settings#size) and [Pricing](/billing/pricing#containers).

| Size | vCPU | Memory | Max concurrency | Notes |
| --- | --- | --- | --- | --- |
| Nano | 1 | 256 MB | 40 | Scale to zero only |
| Micro | 1 | 512 MB | 80 | Default size |
| Small | 1 | 1 GB | 100 | |
| Medium | 2 | 2 GB | 200 | |
| Large | 4 | 4 GB | 300 | |

Sizes up to 8 vCPUs and 32 GB are coming.

## Scaling

See [Scaling](/create/scaling).

| Setting | Range | Default |
| --- | --- | --- |
| Min instances | 0-5 | 0 (scale to zero) |
| Max instances | 1-100, plan-capped | 10 |
| Concurrency | 1 to the size's cap | 80 |
| CPU target | percentage | 80% |
| SSR frontends | pinned Micro, scale 0-3 | [policy](/create/scaling#the-ssr-policy) |

## Regions

See [Application settings](/create/application-settings#region) and [Pricing](/billing/pricing#regions).

| Status | Regions |
| --- | --- |
| Available (tier 1) | Belgium `europe-west1`, Iowa `us-central1`, South Carolina `us-east1`, Oregon `us-west1` |
| Coming (tier 1) | Netherlands `europe-west4`, Taiwan `asia-east1` |
| Coming (tier 2, +20%) | London, Frankfurt, Tokyo, Singapore, Sydney |

Shared-tier databases run in Belgium (`europe-west1`) today.

## Databases

See [Databases](/platform/databases) and [Database settings](/create/database-settings).

| Item | Value |
| --- | --- |
| Engines | PostgreSQL 15 (port 5432), MySQL 8.0 (port 3306) |
| Tiers | Shared, Dev, Starter, Pro, Business, Enterprise |
| Shared storage | 1, 2, 5, or 10 GB |
| Dedicated storage | 10, 20, 50, or 100 GB (250 and 500 GB coming) |
| Storage changes | Grow without downtime; never shrink |
| Provisioning time | Shared: seconds; dedicated: 10-20 minutes |
| Password rules | 12+ characters; no spaces, quotes, or backslashes |
| High availability | 2x compute price |

## Ports

See [Build settings](/create/build-settings#port). `PORT` is set in every container (default `8080`).

| Runtime | Default port |
| --- | --- |
| Node.js, Go, Java, PHP, .NET, Dockerfile | 8080 |
| Python | 8000 |
| Ruby | 3000 |
| Next.js, Nuxt, SvelteKit, Remix | 3000 |
| AdonisJS | 3333 |

## Retention

See [Observability](/platform/observability).

| Data | Kept |
| --- | --- |
| Deploy history | Last 20 deploys per environment |
| Runtime logs | 7 days, searchable |
| Metrics | 90 days, 30-second refresh while open |
| Activity history | Settings and variable changes, without values |

## Trial

See [Billing](/billing/billing#free-trial).

| Item | Limit |
| --- | --- |
| Length | 30 days; card needed from day 14 |
| Resources | 3, any mix of containers, databases, static sites |
| Container sizes | Nano and Micro, scale to zero required |
| Database tiers | Shared or Dev, up to 10 GB |
| Static sites | 10 GB storage, 50 GB bandwidth |
| High availability | Not included |

## Domains and TLS

See [Custom domains](/platform/custom-domains).

| Item | Value |
| --- | --- |
| Domains per environment | One target per domain, platform-wide |
| Certificates | Issued and renewed automatically |
| TLS | 1.2 minimum, everywhere |
| DNS propagation | Usually minutes, up to 48 hours |
