Your application code stays the same whether you deploy to AWS, GCP, or both. Encore handles the cloud-specific implementation details.

Most "multi-cloud" solutions still require cloud-specific code or force you to use the lowest common denominator. Encore takes a different approach: your application code uses Encore's cloud primitives, and Encore maps them to the best services on each cloud.
A database in your code becomes RDS on AWS and Cloud SQL on GCP. Pub/Sub becomes SNS+SQS on AWS and Cloud Pub/Sub on GCP. You get production-grade managed services on every cloud.
Negotiate better pricing, switch providers if needed, and keep your options open as cloud landscapes evolve.
Deploy to different clouds in different regions to meet data residency requirements.
Some customers require deployment on specific clouds. Support them without maintaining separate codebases.
All infrastructure runs in your own AWS or GCP accounts. Connect your accounts to Encore, and all resources are provisioned directly there. You have full access, and your data never passes through Encore's infrastructure.
You can have different environments on different clouds. Development on GCP, production on AWS. Or one product on AWS and another on GCP. It's entirely flexible.
