Appwrite gives you auth, databases, storage, and functions behind one API. Encore lets you build your own backend, with infrastructure provisioned automatically in your AWS or GCP account. Ship quickly, with control over how your backend works and where it runs.
“What used to take days or weeks of back-and-forth between developers and infra teams is now automated and completed in minutes.”
See how Encore and Appwrite differ across key capabilities.
| Infrastructure | Your AWS or GCP account | Appwrite Cloud or self-hosted |
| API Approach | Code-first, type-safe APIs | Appwrite SDKs and REST API |
| Custom Logic | Full backend services | Appwrite Functions (30 seconds sync, 15 minutes async) |
| Databases | RDS / Cloud SQL (in your account) | TablesDB, DocumentsDB, PostgreSQL, MySQL |
| Pub/Sub & Queues | SNS/SQS or GCP Pub/Sub | Event-triggered functions |
| Cron Jobs | Built-in, declarative | Scheduled functions |
| Local Development | Automatic (DBs, queues included) | CLI runs functions in Docker |
| Observability | Built-in tracing & metrics | Execution logs, 24 hours to 7 days |
Hosted platforms get you started fast. Encore gets you there just as fast, in your own cloud account, without the migration later.
Do it yourself Terraform, IAM, VPCs | Hire DevOps One senior engineer | Hosted platform Appwrite, Supabase, Firebase | Encore Automated, in your cloud | |
|---|---|---|---|---|
| Time to first production deploy | Weeks | Months, after the hiring search | Minutes | Minutes |
| Ongoing cost | Your best engineer's evenings | $150k to $250k a year, fully loaded | Grows fast with usage | From $49 per member a month |
| Every new database or queue | Another day of config | A ticket in their queue | Limited to what they offer | One line of code |
| Runs in your AWS or GCP account | Yes | Yes | No | Yes |
| Your cloud credits apply | Yes | Yes | No | Yes |
| Answers "where is our data?" in security reviews | If set up right | Yes | Their answer, not yours | Your account, your VPC |
| When you grow | Rewrite what you hacked together | Hire a second one | Migrate off, usually at the worst time | Nothing changes |
| If the key person leaves | Nobody knows how it works | Same problem | Not your problem | Not your problem |
Encore sets all of this up from your application code. It's real infrastructure in your own cloud account, so you can always open the console and look. You just never have to build it by hand.
Appwrite is an open source backend-as-a-service. Auth, databases, storage, realtime, messaging, and web hosting sit behind one API, with SDKs for web, mobile, and server code. Permissions are role strings attached to tables and rows.
For custom backend logic, you write Appwrite Functions in one of 13+ runtimes. They run on HTTP calls, platform events, or a schedule. Synchronous and HTTP executions time out after 30 seconds, and asynchronous executions can run for up to 15 minutes. You can use Appwrite Cloud or self-host it with Docker.
Encore is an open source infrastructure SDK where you write full backend services in your application code. You define APIs, databases, Pub/Sub, and other resources as code. When you deploy, Encore provisions the corresponding AWS or GCP resources in your account.
This gives you complete control over your API design and business logic, with infrastructure ownership, built-in observability, and support for microservices architectures.
Appwrite runs your backend on Appwrite Cloud, or on servers you operate when you self-host. In both cases your data and functions live inside the Appwrite platform and its APIs.
With Encore, resources are provisioned in your own AWS or GCP account. You can see your databases in the cloud console, set up VPC peering, and use any cloud service alongside Encore resources.
For compliance requirements or teams that need direct cloud access, Encore provides full ownership. For apps that fit the Appwrite APIs, the backend-as-a-service approach works well.
Learn more about infrastructure ownership →The Appwrite CLI runs functions locally in Docker with hot reload. Permissions, events, cron schedules, and timeouts do not apply when running locally, and the function still talks to your Appwrite project.
Encore runs encore run and automatically provisions local PostgreSQL, Pub/Sub emulation, and cron scheduling. A local dashboard shows distributed tracing and architecture diagrams.
Encore gives you a lightweight local environment with observability tools that work identically to production.
Learn more about local development →Appwrite provides a fixed set of services: Auth, Databases, Storage, Functions, Messaging, Realtime, and Sites. You work within these boundaries. For message queues or other infrastructure, you integrate external services.
Encore provisions infrastructure from your code. Declare a database, Pub/Sub topic, cron job, or object storage in your application code, and Encore creates the corresponding cloud resources when you deploy using sensible defaults for each provider. When you need more control, those defaults are yours to configure.
import { SQLDatabase } from "encore.dev/storage/sqldb";
const db = new SQLDatabase("users", {
migrations: "./migrations",
});
// Encore provisions RDS/Cloud SQL automaticallyDatabases, Pub/Sub, Cron Jobs, Object Storage, and more. See all primitives →
Appwrite logs each function execution in the Console when execution logs are enabled. Request and response bodies are not logged, and logs are kept for 24 hours on the Free plan.
Encore includes distributed tracing, metrics, and structured logging out of the box. Every request is traced across services automatically. No instrumentation code needed.
This matters more as your backend grows beyond simple CRUD operations into multi-service architectures.
See observability docs →With Appwrite, your data model and permissions live in the Appwrite Console and configuration, while business logic lives in separate functions. AI agents like Cursor and Claude Code lack full context about how these pieces connect, leading to inconsistencies.
Encore defines infrastructure in your application code. AI agents see everything in one context: your APIs, databases, queues, and how they connect. This makes AI-generated code accurate, reviewable, and safe to deploy.
Because the infrastructure comes from the Encore defaults rather than hand-written config, you can let an AI agent build features and trust the result is provisioned correctly. Built-in guardrails, auto-documentation, and observability keep what it produces maintainable, even when AI writes most of the code.
Learn about AI-assisted development →You can move an Appwrite project one workload at a time. Your Encore backend can call Appwrite through its server SDKs while you move functions and data, and Appwrite Auth can stay as an external service.
The guide covers moving data, files, auth, and functions to AWS. Running on GCP instead? Read how to migrate from Appwrite to GCP, or compare your options in Appwrite alternatives.
Read the Appwrite to AWS migration guide"Encore is our foundation for all new development. Since adopting it, we've seen a 3x increase in development speed and 90% shorter project lead times."
"Encore lets us go from idea to shipped product at least 3x faster and saves us hours of devops work every week."
"We've reduced time spent on DevOps by 95%, and we're now on track to save $60K annually in cloud costs."
"Encore is an unfair advantage. At Pave we've moved 2x faster than we did at Monzo."
"We're saving $200k+ annually compared to additional hiring. The ROI is outstanding, easily 10x."
"You define infrastructure in your code and it's automatically spun up for you. You can go from zero to a deployed service on GCP in an hour. I don't know how else to do it."
"Encore's inferred infrastructure has allowed us to move at unprecedented speed. Combined with database branching in Neon, we're able to spin ephemeral environments up and down with incredible ease. Stakeholders love preview app URLs."
Common questions about Encore vs Appwrite.
Appwrite is an open source backend-as-a-service with auth, databases, storage, functions, messaging, realtime, and web hosting behind one API, run on Appwrite Cloud or self-hosted with Docker. Encore is an open source infrastructure SDK where you write your own backend services, and it provisions databases, Pub/Sub, cron jobs, and object storage in your own AWS or GCP account.
In Appwrite, custom logic runs in Appwrite Functions, triggered by HTTP, platform events, or a schedule. Synchronous and HTTP executions time out after 30 seconds, and asynchronous executions can run for up to 15 minutes. With Encore, your business logic is the backend itself: type-safe API endpoints, Pub/Sub subscribers, and cron jobs in regular services.
You can self-host Appwrite with Docker on servers you run, or use Appwrite Cloud. Either way, you run the Appwrite platform. Encore deploys to your own AWS or GCP account using native services like RDS or Cloud SQL, SQS or GCP Pub/Sub, and S3 or Cloud Storage.
Appwrite offers TablesDB, DocumentsDB, and VectorsDB through its SDKs, plus managed PostgreSQL and MySQL on dedicated compute. Encore SQL databases are PostgreSQL, provisioned as RDS on AWS or Cloud SQL on GCP, and run in Docker locally.
You can move one workload at a time. Functions become API endpoints, Pub/Sub subscribers, or cron jobs, tables move to an Encore SQL database, and buckets move to object storage. Appwrite Auth can stay as an external service while you migrate.
Deploy to your own AWS or GCP account, with infrastructure provisioned automatically.