Best VPS for Appwrite in 2026: Requirements & Costs
Appwrite is an open-source Backend as a Service for authentication, databases, storage, serverless functions, messaging, and realtime APIs. Developers can use Appwrite Cloud or run it on self-hosted infrastructure through the official Docker deployment.
Appwrite is not a lightweight notes application with one process and a small SQLite file: self-hosting coordinates an API, database, Redis, workers, executors, and persistent storage. The best VPS for Appwrite needs enough RAM, CPU, and storage for application data and operational growth. This guide separates the official minimum from production planning, compares five providers, and explains the Ubuntu installer.
Checked November 12, 2026. Appwrite documentation and version 2.7.1 were current at review time. Provider prices exclude tax and optional services unless stated. No purchased-server benchmarks are claimed. The LightNode links are affiliate links; we may earn a commission.
What Is Appwrite?
Appwrite supplies APIs and SDKs for web and mobile applications. It covers authentication, structured and document databases, file storage, functions, realtime, messaging, and integrations. It suits developers, startups, and small teams wanting a coherent backend or control over data placement. Unlike a conventional VPS website, the host runs a coordinated platform and stateful dependencies, not one application process.
Appwrite VPS Requirements
The official installation guide specifies 2 CPU cores, 4 GB RAM, 2 GB swap, a Docker-compatible operating system, and Docker Compose v2. These are minimum installation requirements, not guaranteed production capacity.
| Deployment | CPU | RAM | Storage |
|---|---|---|---|
| Minimum / Development | 2 vCPU | 4 GB | 40–60 GB SSD |
| Recommended / Small Production | 4 vCPU | 8 GB | 80–120 GB SSD |
| Growing Applications | 8+ vCPU | 16 GB+ | 160 GB+ SSD |
Only the first row's CPU and RAM match Appwrite's official minimum. Every storage figure and both larger tiers are editorial planning recommendations. Size from database volume, uploaded files, function builds and executions, logs, retention, concurrency, and recovery objectives.
CPU, memory, and container overhead
API requests, database queries, background queues, function builds, and runtime execution can overlap, so four vCPU is a useful small-production starting point. Appwrite's 4 GB minimum covers Linux, Docker, the database, Redis, the API, workers, and other services. An 8 GB VPS leaves safer burst capacity. The required 2 GB swap is an emergency buffer, not a substitute for RAM; persistent swapping means the host needs more memory.
Database, Redis, workers, and functions
The installer supports PostgreSQL, MariaDB, or MongoDB, with PostgreSQL selected by default. The choice cannot be changed afterward. Redis supports cache and pub/sub while workers process asynchronous jobs. Functions add builds, runtime containers, CPU bursts, memory allocations, and traffic, so never budget only for the API container.
Storage, concurrency, and bandwidth
Include database data, uploads, function builds, images, logs, migration space, and free-space reserve. Backups need a separate destination. Concurrent users create API calls, database work, realtime connections, and storage transfers; downloads and offsite backups can dominate bandwidth. Measure outbound transfer and check regional allowances.
Can Appwrite run on a 2GB RAM VPS?
No standard self-hosted Appwrite deployment should be planned on 2 GB RAM. It is below the official 4 GB minimum, and adding swap does not correct that deficiency. A 2 GB machine may fail during installation, restart containers under pressure, or leave no safe margin for updates and functions. Use a 2-core, 4 GB VPS as the development floor and consider 4 vCPU with 8 GB for a small production backend.
How Much Does Appwrite Hosting Cost?
Appwrite self-hosting cost is more than a VPS line item. Budget compute, storage, offsite backups, a domain, email or SMS, bandwidth, optional object storage, monitoring, security, and administration. Database, Redis, and workers consume resources even at modest traffic.
| Budget tier | Practical configuration | Suitable for | Estimated monthly total* |
|---|---|---|---|
| Development Environment | 2 vCPU / 4 GB / 40–60 GB SSD | Learning, prototypes, staging | $18–$35 |
| Small Production Application | 4 vCPU / 8 GB / 80–120 GB SSD | Small live app with backups | $35–$75 |
| Growing Application Backend | 8+ vCPU / 16 GB+ / 160 GB+ SSD | More traffic, data, functions, or separated services | $80–$220+ |
*Editorial estimates using the verified compute examples below plus a modest allowance for backup storage and a domain. Taxes, usage-priced messaging, object storage, transfer overages, and labor are excluded.
A development server can use the minimum configuration. Production needs independent backups and recovery tests. Growth may require a larger VM, attached storage, or separate database and worker capacity. Email and SMS remain usage-priced external services.
Best VPS Providers for Appwrite in 2026
The recommended plans meet Appwrite's official floor. Cheaper catalog plans can be undersized.
| Provider | Recommended Plan | CPU | RAM | Storage | Starting Price | Best For | Visit Website |
|---|---|---|---|---|---|---|---|
| LightNode | Agency | 2 vCPU | 4 GB | 50 GB NVMe | $14.70/mo equivalent | Hourly billing and regional choice | Visit |
| DigitalOcean | Basic Regular | 2 vCPU | 4 GiB | 80 GiB SSD | $24/mo | Developer documentation and tooling | Visit |
| Vultr | Regular Cloud Compute | 2 vCPU | 4 GB | 80 GB SSD | $20/mo base | Broad cloud location selection | Visit |
| Akamai Cloud / Linode | Linode 4GB | 2 vCPU | 4 GB | 80 GB | $24/mo base | Conventional Linux administration | Visit |
| Hetzner | Available 4 GB+ shared plan | Verify live SKU | 4 GB+ | Verify live SKU | Current order quote required | Cost comparison in supported regions | Visit |
Prices were checked against official sources on November 12, 2026. Region, IPv4, tax, and inventory can alter totals.
1. LightNode: Flexible hourly Appwrite VPS hosting
LightNode
LightNode offers KVM Linux VPS instances, static IPs, NVMe storage, root access, hourly billing, and more than 40 advertised locations. It is infrastructure, not a managed Appwrite service.
Recommended configuration: Agency provides 2 vCPU, 4 GB RAM, 50 GB NVMe, and 2 TB transfer for a displayed $14.70 monthly equivalent ($0.022/hour). That matches Appwrite's CPU and RAM minimum. Premium provides 4 vCPU, 8 GB RAM, 50 GB NVMe, and 3 TB transfer for $27.70 equivalent ($0.042/hour), giving a small deployment more compute headroom; expand storage if application data requires it.
Key features: hourly billing, KVM, Linux images, static IP, NVMe, Docker support, and regional choice. Pros: Relevant sizes map cleanly to Appwrite's tiers. Cons: 50 GB may constrain growing data, and cryptocurrency payment is not supported. Best for: global or temporary environments.
2. DigitalOcean: Familiar developer ecosystem

DigitalOcean Droplets are Linux VMs with documentation, an API, firewalls, volumes, and marketplace images. The official Appwrite installer remains the version-controlled path used here.
Recommended configuration and price: the Basic Regular 2 vCPU, 4 GiB, 80 GiB SSD Droplet is $24/month. The 4 vCPU, 8 GiB, 160 GiB plan is $48/month. Weekly percentage-based backups add 20% of Droplet cost; daily backups add 30%.
Pros: Clear sizes, public pricing, documentation, and API. Cons: Its $4 entry is below Appwrite's minimum; backups add cost. Best for: teams valuing developer documentation.
3. Vultr: Regional Cloud Compute choices

Vultr Cloud Compute supplies Linux VPS instances across many locations and compute families; Docker remains customer-managed.
Recommended configuration and price: the public plans API lists a regular 2 vCPU, 4 GB, 80 GB SSD plan at a $20 base monthly cap. An 8 GB plan is a better production comparison where available; confirm its region-specific quote and SSD/NVMe family at checkout.
Pros: Location, compute-family, and hourly choices. Cons: Region and family affect pricing; entry plans are undersized. Best for: proximity to users.
4. Akamai Cloud / Linode: Conventional Linux hosting

Akamai Cloud's Linode instances provide Linux compute, an API, firewalls, images, and documentation. Appwrite remains self-managed.
Recommended configuration and price: Linode 4GB provides 2 vCPU, 4 GB RAM, and 80 GB storage for a $24 monthly base price. Linode 8GB provides 4 vCPU, 8 GB RAM, and 160 GB storage for $48 base. Regional multipliers can apply.
Pros: Straightforward management and upgrade ladder. Cons: Regional pricing and backups raise totals; Nanode is undersized. Best for: conventional Linux administration.
5. Hetzner: Cost-conscious infrastructure comparison

Hetzner Cloud offers shared and dedicated vCPU families, Linux images, networks, firewalls, APIs, and SSD/NVMe plans across Europe, the United States, and Singapore.
Recommended configuration and price: select an actually orderable plan with at least 2 vCPU and 4 GB RAM; prefer 4 vCPU and 8 GB for small production. The public page did not expose a dependable localized live price during this review and marked some shared offerings unavailable, so a current console quote is required. Do not convert an old euro price into a universal dollar promise; VAT, IPv4, location, and traffic terms matter.
Pros: Multiple compute families, networking, and firewalls. Cons: Inventory and localized pricing need a live check. Best for: cost-conscious regional comparisons.
How to Install Appwrite on an Ubuntu VPS
This procedure uses Ubuntu 24.04 LTS, Docker's official repository, and Appwrite's official 2.7.1 installer. Review both projects' current documentation before a later deployment.
Step 1: Prepare the Ubuntu VPS
Provision at least 2 vCPU, 4 GB RAM, 2 GB swap, adequate SSD space, sudo access, and a domain. Point the domain's A/AAAA record to the server. Patch first:
sudo apt update
sudo apt upgrade -yAllow TCP 80/443 and restrict SSH. Port 20080 is temporary: permit only your administrator IP in both firewalls, then remove the rule after installation.
Step 2: Install Docker Engine and Docker Compose v2
Follow Docker's Ubuntu instructions to add Docker's signed APT repository, then install the maintained packages:
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
sudo systemctl enable --now docker
sudo docker version
sudo docker compose versionDo not substitute retired docker-compose v1.
Step 3: Configure the required swap safely
Inspect existing swap before creating anything:
swapon --show
free -hIf no swap exists, create a protected 2 GB file and persist it:
sudo fallocate -l 2G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
swapon --showDo not repeat the fstab line if it already exists. Swap is an emergency buffer, not a replacement for 4 GB physical RAM.
Step 4: Run the official Appwrite installer
From a dedicated working directory, run the exact versioned command from Appwrite's current guide:
mkdir -p "$HOME/appwrite-install"
cd "$HOME/appwrite-install"
sudo docker run -it --rm \
--publish 20080:20080 \
--volume /var/run/docker.sock:/var/run/docker.sock \
--volume "$(pwd)"/appwrite:/usr/src/code/appwrite:rw \
--entrypoint="install" \
appwrite/appwrite:2.7.1The Docker socket grants extensive host control. Run only the verified official image. Open http://SERVER_IP:20080 from the permitted address and close port 20080 afterward.
Step 5: Complete the installation wizard
Set the hostname and HTTPS status. Choose PostgreSQL, MariaDB, or MongoDB; PostgreSQL is default and the backend cannot later change. Advanced settings cover worker/scheduler topology, ports, and certificate email.
The wizard generates a secret API key used to encrypt sensitive data. Copy it to a secure secret manager because it is shown only once. Create the administrator account and review the final configuration. Executor and encryption secrets must remain private and recoverable; never publish real values in a repository.
Step 6: Verify more than container startup
Inspect services, health, and logs:
cd appwrite
sudo docker compose ps
sudo docker compose logs --tail=200 appwrite
sudo docker stats --no-stream
curl -I https://appwrite.example.comConfirm the Console and API work, the database connects, and workers remain running. Inspect restarting or unhealthy services with docker compose logs SERVICE_NAME; Compose success alone does not prove readiness.
Step 7: Configure HTTPS and the domain
Point DNS to the server, allow 80/443, and use the wizard's routing and certificate settings. Do not add a proxy on the same ports without deliberate routing. For an upstream proxy, follow current trusted-proxy guidance and test redirects, assets, realtime, and TLS.
Step 8: Create the first Appwrite project
Create a project and add the correct platform with its real hostname or identifier. Set the SDK endpoint, configure authentication, create a database and permissions, then test an authenticated request. Pin an SDK version from Appwrite 2.7.1's compatibility table.
Step 9: Configure storage and functions
Create buckets with explicit permissions and limits, and include volumes in backups. Functions add builds, runtimes, logs, and storage growth; set resource/time limits, protect secrets, and deny user code access to the Docker socket.
Step 10: Back up and update Appwrite safely
Back up the database consistently, plus volumes, uploads, environment configuration, encryption keys, API key material, and executor secrets. Encrypt off-host copies and test restoration.
Before updating, read the version-specific migration guide, verify that your installed release is on a supported upgrade path, and take a recoverable backup. Appwrite 2.7.1 documents upgrades from 1.9.6 or later, but future rules can differ. Run the official versioned upgrade installer and required migration commands for the target version. Never use docker compose down -v as a routine restart or upgrade step: -v can delete persistent volumes.
Appwrite vs Supabase
| Area | Appwrite | Supabase |
|---|---|---|
| Primary use case | Integrated backend APIs and SDKs | PostgreSQL-centered backend platform |
| Database architecture | TablesDB/DocumentsDB APIs; self-hosted backend choice | PostgreSQL is the core data layer |
| Authentication | Built-in accounts, sessions, OAuth and permissions | Supabase Auth integrated with PostgreSQL policies |
| Storage | Built-in buckets and permissions | Object storage integrated with Postgres metadata/policies |
| Functions | Appwrite Functions and runtimes | Edge Functions based on Deno |
| Self-hosting | Official Docker installer/Compose or Helm | Docker-based self-hosting is supported |
| Resource requirements | Official 2 cores, 4 GB RAM, 2 GB swap minimum | Depends on selected Supabase services and workload |
| Scaling | Scale API, workers, database, Redis and storage deliberately | Scale PostgreSQL and individual platform services deliberately |
| Maintenance | You manage platform, database, Redis, upgrades and backups | You manage PostgreSQL, platform services, upgrades and backups |
| Best for | Teams preferring Appwrite APIs/SDKs and backend abstraction | Teams wanting direct PostgreSQL and its ecosystem |
The platforms overlap but are not interchangeable. Appwrite abstracts several backends behind its API; Supabase exposes PostgreSQL as a defining part of its model. Prototype the permissions, queries, realtime behavior, functions, and migration path you need.
Appwrite Cloud vs Self-Hosted Appwrite
| Consideration | Appwrite Cloud | Self-hosted Appwrite |
|---|---|---|
| Initial setup | Managed service onboarding | Provision host and install platform |
| Infrastructure control | Platform-managed boundaries | Direct control over host and placement |
| Maintenance | Appwrite handles core infrastructure | You patch, upgrade, monitor and recover |
| Scaling | Managed product options | You design vertical or horizontal scaling |
| Backups | Service responsibilities apply | You own backup and restore procedures |
| Security management | Shared responsibility with less host work | Host, network, secrets and platform are yours |
| Hosting costs | Plan and usage pricing | Infrastructure, services and labor |
| Operational complexity | Lower | Higher |
Appwrite itself recommends Cloud when a team wants to focus on building rather than infrastructure. Self-hosting offers more direct deployment and data-location control, which can matter for compliance or internal networking. It is not automatically cheaper: staff time, recovery, security work, and incidents can outweigh a low VPS invoice.
Common Appwrite Hosting Problems
- Containers keep restarting: Check
docker compose ps, service logs, memory pressure, free disk, and database readiness. Do not delete volumes to force a clean start. - Insufficient RAM: Look for OOM events with
journalctl -k, sustained swap use, and container peaks. Upgrade RAM or reduce verified optional workloads; do not lower Appwrite below its official floor. - Docker installation errors: Confirm the supported Ubuntu release, Docker's official repository, daemon status, architecture, and Compose v2 plugin.
- Port conflicts: Use
sudo ss -lntpto identify listeners on 80, 443, or 20080. Reconfigure deliberately instead of stopping an unknown production service. - Database connection errors: Verify the selected backend container, credentials, DNS/service name, volumes, and database logs. The backend cannot be switched after installation.
- Redis connectivity problems: Check Redis health, container networking, credentials, memory, and Appwrite worker logs before restarting services in dependency order.
- HTTPS certificate issues: Verify public DNS, inbound 80/443, hostname settings, certificate logs, and whether a proxy is intercepting the challenge.
- Console does not load: Test the API and static assets, browser console, TLS chain, reverse-proxy headers, and matching Console/server versions.
- Functions fail: Inspect build and executor logs, runtime compatibility, timeout and memory limits, network access, secrets, and available disk.
- Upgrade migration fails: Stop, preserve logs, verify the supported source version, and restore only from a tested backup if required. Follow the target release's migration instructions rather than skipping versions or removing volumes.
For monitoring the host, see our Best VPS for Beszel guide. If you prefer a deployment control plane, compare Coolify and Dokploy. Teams also operating private repositories can review Gitea hosting, while automation workloads have separate sizing considerations in our n8n VPS guide.
Frequently Asked Questions
What is the best VPS for Appwrite?
The best choice meets the official 2-core, 4 GB RAM, and 2 GB swap minimum and has reliable SSD storage. For small production applications, 4 vCPU and 8 GB RAM provide more room for the database, Redis, workers, and functions. Choose by region, backups, and operational requirements rather than price alone.
How much RAM does Appwrite need?
Appwrite's official self-hosting minimum is 4 GB RAM. That is a minimum for the complete multi-container platform, not a capacity guarantee. A small production deployment should generally begin around 8 GB and be adjusted from measured database, API, storage, and function demand.
Can Appwrite run on a 2GB RAM VPS?
A 2 GB VPS is below Appwrite's current official minimum and is not recommended for a standard self-hosted installation. Swap cannot replace the missing physical memory. Use at least 4 GB for development and consider 8 GB for a small production service.
Is 4GB RAM enough for Appwrite?
Four GB can suit development or a carefully monitored low-traffic project because it satisfies the official minimum. It leaves limited margin for builds, functions, database growth, and traffic bursts. Do not infer production capacity from successful startup; monitor pressure and resize when needed.
How much does self-hosted Appwrite cost?
A minimum-capacity VPS currently starts around $14.70 to $24 per month among these comparisons. The real total includes backups, a domain, outbound transfer, email or SMS, optional object storage, and administration. Small production infrastructure commonly begins around $35 to $75 monthly before labor.
Can I install Appwrite with Docker Compose?
Yes. Appwrite officially requires Docker Compose v2 and provides a Docker installer that generates its required configuration through a wizard. Use that official versioned installer instead of a reduced Compose file, because Appwrite depends on multiple services, volumes, workers, Redis, and a supported database.
Is Appwrite better than Supabase?
Neither is universally better. Appwrite offers an integrated backend API and multiple supported self-hosted database backends. Supabase centers the developer experience on PostgreSQL. Choose according to data model, permissions, SDKs, functions, and the operational system your team understands.
Is self-hosting Appwrite cheaper than Appwrite Cloud?
Not necessarily. Self-hosting may offer predictable infrastructure cost and more deployment control, but backups, monitoring, upgrades, incident response, and engineering time are yours. Appwrite Cloud removes much of that work. Compare total operating cost and risk rather than only the VPS price.
Final Verdict
For development, 2 vCPU and 4 GB is the floor; LightNode's $14.70-equivalent Agency plan is the lowest verified match here when hourly billing matters. DigitalOcean suits documentation-focused teams. Hetzner merits a live European quote, while Vultr and LightNode offer regional flexibility.
For small production, start nearer 4 vCPU and 8 GB, add independent backups, and monitor every service. Growth may require 16 GB or separated stateful services. Choose capacity, location, recovery, and administration fit—not the smallest headline price.
