Comparing App Engine Standard and Flexible environments — feature differences, pricing, and how to choose the right one for your workload.
Two Environments
App Engine offers two execution environments. They share the same API and workflow but differ significantly in how your code runs, what you can do, and what you pay.
| Aspect | Standard | Flexible |
|---|---|---|
| Infrastructure | Sandboxed containers in a managed runtime | Docker containers on Compute Engine VMs |
| Scale to zero | Yes — no traffic means no instances, no cost | No — minimum 1 instance always running |
| Instance startup | Seconds (milliseconds for warm instances) | Minutes (VM provisioning + container build) |
| Deployment time | Seconds | 5-15 minutes |
| Max request timeout | 10 minutes (HTTP/task queue) | 60 minutes |
| Scaling types | Automatic, Basic, Manual | Automatic, Manual |
| WebSockets | No | Yes |
| Local disk | Only /tmp (read/write) | Full ephemeral disk |
| Background processes | No | Yes |
| SSH debugging | No | Yes |
| Custom runtimes | No — supported runtimes only | Yes — any language via Dockerfile |
| Free tier | Yes | No |
| Pricing basis | Instance-hours | vCPU, memory, persistent disk |
Standard Environment
The Standard environment runs your code in a sandboxed container using pre-configured runtimes. Instances start in seconds, and the environment can scale to zero when there’s no traffic.
What you get
- Fast deployments — your app is live in seconds
- Scales to zero — no traffic means no running instances and no cost
- Generous free tier — 28 instance-hours/day for F1 class
- Simple pricing — pay per instance-hour
Constraints
- Only supported runtimes (no custom languages)
- No WebSockets
- No background processes
- Filesystem read/write limited to
/tmp - Max request timeout of 10 minutes
- Cannot modify the runtime environment
When to use Standard
- Web applications and APIs
- Mobile backends
- Event-driven processing (Pub/Sub subscribers)
- Rapid prototyping and MVPs
- Applications with variable or unpredictable traffic
- Anything that fits within the supported runtimes
Flexible Environment
The Flexible environment runs your code inside Docker containers on Compute Engine VMs. You get full control over the runtime, and can even bring your own Dockerfile for unsupported languages.
What you get
- Custom runtimes — any language via Dockerfile
- WebSockets — real-time communication support
- Background processes — run workers alongside your app
- Full disk access — ephemeral storage available
- SSH access — debug running instances
- Long-running requests — up to 60-minute timeout
- VPC access — connect to private resources
Constraints
- Minimum 1 instance always running (does not scale to zero)
- Deployment takes 5-15 minutes
- No free tier; at least one instance keeps running and accrues cost
- Pricing is based on vCPU, memory, and persistent disk
- More operational complexity than Standard
When to use Flexible
- Custom runtimes (.NET, Rust, Elixir, or any language)
- WebSocket-heavy apps (real-time chat, streaming)
- Long-running request processing (ML inference, video processing)
- Applications needing VPC access to private resources
- Workloads needing more than 1 GB memory per instance
- Applications requiring SSH debugging
Supported Runtimes
| Language | Standard | Flexible |
|---|---|---|
| Python | 3.7 - 3.12 | Yes |
| Java | 8, 11, 17, 21 | Yes |
| Go | 1.12 - 1.22 | Yes |
| Node.js | 12 - 20 | Yes |
| PHP | 7.4 - 8.3 | Yes |
| Ruby | 2.7 - 3.2 | Yes |
| Custom (any language) | No | Yes (via Dockerfile) |
Pricing Comparison
As of May 2026, these USD prices reflect the us-central1 rates on Google Cloud’s App Engine pricing page. Check the pricing page for your region and currency.
Standard Environment
| Instance Class | Memory | CPU | Free Tier | Price/Hour |
|---|---|---|---|---|
| F1 | 128 MB | 600 MHz | 28 hr/day | $0.05 |
| F2 | 256 MB | 1.2 GHz | 28 hr/day | $0.10 |
| F4 | 512 MB | 2.4 GHz | 28 hr/day | $0.20 |
| F4_1G | 1024 MB | 2.4 GHz | 28 hr/day | $0.30 |
| B1 (basic/manual) | 128 MB | 600 MHz | 9 hr/day | $0.05 |
| B2 (basic/manual) | 256 MB | 1.2 GHz | 9 hr/day | $0.10 |
| B4 (basic/manual) | 512 MB | 2.4 GHz | 9 hr/day | $0.20 |
| B8 (basic/manual) | 1024 MB | 4.8 GHz | 9 hr/day | $0.40 |
Note: F-class instances are for automatic scaling. B-class instances are for basic and manual scaling.
Flexible Environment
| Resource | Price |
|---|---|
| vCPU | $0.0526/hour |
| Memory | $0.0071/GiB-hour |
| Persistent disk | Compute Engine PD rates |
| Outbound network | Compute Engine rates |
Warning: The Flexible environment has no free tier. Because it cannot scale below one running instance, a small configuration can accrue ongoing monthly cost even with little traffic.
Decision Flowchart
flowchart TD Start["Choosing App Engine Environment"] --> Q1{"Do you need a custom<br/>runtime or Dockerfile?"} Q1 -->|Yes| Flex["Flexible Environment"] Q1 -->|No| Q2{"Do you need WebSockets<br/>or background processes?"} Q2 -->|Yes| Flex Q2 -->|No| Q3{"Do you need requests<br/>longer than 10 minutes?"} Q3 -->|Yes| Flex Q3 -->|No| Std["Standard Environment"]
Tip: Start with Standard unless you can name a specific feature that requires Flexible. You can mix both environments in the same application across different services.
Using Both Environments Together
You can run Standard and Flexible services in the same application:
my-app/
default-service/ # Standard (Python) — web frontend
app.yaml
main.py
worker-service/ # Flexible (custom) — background processing
app.yaml
Dockerfile
dispatch.yaml # Routes requests between servicesThis lets you use Standard for cost-sensitive web serving and Flexible for workloads that need it.
TL;DR
- Standard: sandboxed, fast deployments, scales to zero, free tier, limited to supported runtimes.
- Flexible: Docker containers, custom runtimes, WebSockets, background processes, no free tier.
- Start with Standard unless you need Flexible-specific features.
- You can use both environments in the same app across different services.
- As of May 2026, Standard instance pricing for common F/B classes is 0.40/hour after the free tier. Flexible has no free tier and bills for vCPU, memory, disk, and network.
Resources
Choose an App Engine Environment Official comparison of Standard and Flexible environments.
App Engine Pricing Detailed pricing for both environments including free tier.
App Engine Standard Documentation Documentation specific to the Standard environment.
App Engine Flexible Documentation Documentation specific to the Flexible environment.
App Engine Overview Getting started with App Engine.
Core Components Instances, services, versions, and routing.