Inhaltsverzeichnis14 Abschnitte
- TL;DR
- Die drei Services im Architektur-Vergleich
- Preise im Detail
- App Engine Standard
- Beispiel-Rechnung: API mit 100k Requests/Tag
- Beispiel-Rechnung: Worker mit hoher Last
- Cold-Starts in der Realitaet
- Concurrency — der hidden Hebel
- Wann App Engine Standard noch Sinn ergibt
- App Engine Flexible — vermeiden
- Eventing-Integration
- DACH-spezifisches
- Faustregeln zum Mitnehmen
- Quellen
Google Cloud hat drei Serverless-Optionen, und die Wahl wirkt schwieriger als sie ist. Cloud Run, Cloud Functions und App Engine loesen ueberschneidende, aber nicht identische Probleme.
Hier die ehrliche Antwort, was 2026 wofuer ist, was es kostet und wo man sich technisch festfaehrt. Stand: 14. Mai 2026, Region europe-west1 (Belgien).
TL;DR
- Cloud Run ist 2026 die Default-Antwort. Container, Scale-to- Zero, gleiche Pricing-Logik wie Functions Gen2.
- Cloud Functions Gen2 ist intern fast dasselbe wie Cloud Run. Schreibst du Funktionen statt Container, nimm Gen2 — sonst Cloud Run.
- App Engine Standard ist 2026 nur noch in Legacy-Cases sinnvoll (Datastore Tight Coupling, niedrige Volumen mit Free Tier).
- App Engine Flexible sollte man heute durch Cloud Run ersetzen — billiger und flexibler.
- Faustregel: Container? Cloud Run. Triggered Function (HTTP, Pub/Sub, Storage Event)? Cloud Functions Gen2. Alles andere: pruefen, ob Cloud Run nicht passt.
Die drei Services im Architektur-Vergleich
| Aspekt | Cloud Run | Cloud Functions Gen2 | App Engine Standard |
|---|---|---|---|
| Deploy-Artefakt | Container (OCI Image) | Function-Code | Code + app.yaml |
| Runtimes | beliebig | Node, Python, Go, Java, Ruby, PHP, .NET | Node, Python, Go, Java, Ruby, PHP |
| Scale-to-Zero | Ja | Ja | Optional (F1-F4) |
| Max Request-Timeout | 60 min | 60 min (HTTP) | 24 h (Background), 10 min (Standard) |
| Min Instances | konfigurierbar | konfigurierbar | 0 oder warm-up |
| Cold-Start | 1-3 s | 2-5 s | 1-3 s |
| GPU-Support | Ja (seit 2024) | Nein | Nein |
| Concurrency / Instance | bis 1000 | bis 1000 (Gen2) | abhaengig vom Runtime |
| Pricing-Modell | Vergeudete vCPU+RAM*s | Vergeudete vCPU+RAM*s | Instance-Stunden |
Wichtig: Cloud Functions Gen2 laeuft seit 2023 auf Cloud Run. Sie sind technisch ein Frontend ueber demselben Backend. Heisst: gleiche Performance, gleiches Pricing-Modell. Der Unterschied ist das Deployment-Interface.
Preise im Detail
GCP-Serverless wird in vCPU-Sekunden, GB-RAM-Sekunden und Requests abgerechnet. Hier die Preise (Stand Mai 2026, europe-west1):
| Komponente | Cloud Run / Functions Gen2 | Notizen |
|---|---|---|
| vCPU pro Sekunde | $0,000024 (Standard) | $0,000018 (Always-On) |
| GiB-RAM pro Sekunde | $0,0000025 | - |
| Requests | $0,40 / 1M Requests | erste 2M / Monat free |
| Egress-Internet | $0,12 / GB | EU egress |
| Min Instances aktiv | wie Standard, kontinuierlich | - |
Always-On (CPU always allocated): ~25 % billiger pro vCPU-s, aber RAM und Idle-CPU werden auch berechnet, wenn keine Requests kommen. Lohnt nur bei kontinuierlichem Traffic.
App Engine Standard
App Engine Standard hat ein eigenes (etwas seltsames) Pricing:
| Instance-Klasse | RAM | vCPU | $ / Instance-Stunde |
|---|---|---|---|
| F1 (Free Tier!) | 256 MB | 600 MHz | $0,05 |
| F2 | 512 MB | 1,2 GHz | $0,10 |
| F4 | 1 GB | 2,4 GHz | $0,20 |
| F4_1G | 1 GB | 2,4 GHz | $0,30 |
App Engine Free Tier 2026:
- 28 F1-Instanzen-Stunden / Tag, free
- 1 GB Egress / Tag, free
- 5 GB Cloud Storage Standard, free
Fuer kleine Side-Projects ist das immer noch wertvoll, weil sich Cloud Run nicht 100 % verspricht, immer kostenlos zu sein (Free Tier ist klein).
Beispiel-Rechnung: API mit 100k Requests/Tag
Annahmen: durchschnittliche Request-Dauer 200 ms, 1 vCPU, 512 MB RAM zugewiesen. 100k Requests/Tag = 3M Requests/Monat.
| Komponente | Berechnung | Kosten |
|---|---|---|
| vCPU-Sekunden | 3M × 0,2 s × 1 vCPU × $0,000024 | $14,40 |
| GiB-RAM-Sekunden | 3M × 0,2 s × 0,5 GiB × $0,0000025 | $0,75 |
| Requests | (3M - 2M Free) × $0,40 / 1M | $0,40 |
| Egress (5 GB/Monat) | 5 GB × $0,12 | $0,60 |
| Total Cloud Run | ~$16,15 |
Vergleich, dieselbe Last auf App Engine Standard F2:
- Wenn dauerhaft 1 Instanz aktiv: 730 h × $0,10 = $73
- Bei Scale-to-Zero und Wakeup-Latenz: ~$30-50
Cloud Run gewinnt klar, ausser bei voll genutztem Free Tier.
Beispiel-Rechnung: Worker mit hoher Last
500k Requests/Tag = 15M/Monat, 400 ms pro Request, 2 vCPU, 1 GiB RAM, kein Always-On.
| Komponente | Berechnung | Kosten |
|---|---|---|
| vCPU-Sekunden | 15M × 0,4 s × 2 vCPU × $0,000024 | $288 |
| GiB-RAM-Sekunden | 15M × 0,4 s × 1 GiB × $0,0000025 | $15 |
| Requests | (15M - 2M Free) × $0,40 / 1M | $5,20 |
| Egress (20 GB) | 20 GB × $0,12 | $2,40 |
| Total | ~$310,60 |
Vergleich auf Cloud Run mit Always-On + Min Instances 2:
- 2 Instanzen × 730 h × 3.600 s × 2 vCPU × $0,000018 = $189 Idle
- Plus Request-Compute (geringer Anteil)
- Total: ~$220-240
Bei kontinuierlich hoher Last lohnt Always-On, weil der Discount auf vCPU-Sekunden den dauerhaften Verbrauch kompensiert und Cold-Starts wegfallen.
Cold-Starts in der Realitaet
Eigene Messungen, p95 Cold-Start (europe-west1, Mai 2026):
| Runtime | Cloud Run | Cloud Functions Gen2 | App Engine Standard |
|---|---|---|---|
| Node 20 (Express) | 1,2 s | 1,5 s | 0,8 s |
| Python 3.12 (FastAPI) | 1,5 s | 1,8 s | 1,0 s |
| Go 1.22 | 0,4 s | 0,6 s | 0,5 s |
| Java 21 (Spring Boot) | 3,5 s | 4,0 s | 2,2 s |
| .NET 8 | 2,2 s | 2,5 s | - |
Go ist 2026 der Cold-Start-Champion auf Cloud Run. Wenn dir Cold-Starts wichtig sind und du Go schreiben kannst: tu es.
Tricks zur Cold-Start-Reduktion:
- Min Instances >= 1 — kostet kontinuierlich, killt aber Cold- Starts.
- CPU Boost aktivieren — verdoppelt CPU waehrend Startphase.
- Container schlank halten — keine .NET-Images mit Full SDK.
- Lazy-Init bei DB-Pools — sonst geht der Start in Verbindungen.
Concurrency — der hidden Hebel
Cloud Run und Functions Gen2 unterstuetzen Concurrency > 1 pro Instanz. Das ist der wichtigste Hebel fuer Pricing-Optimierung.
| Concurrency | Wenn 1 vCPU langweilig (IO-bound) | Wenn 1 vCPU voll ausgelastet |
|---|---|---|
| 1 | hohe Kosten, wenig Effizienz | Default, OK |
| 10 | 80 % Kostenreduktion | Latenz-Bursts |
| 80 (default) | extrem effizient bei IO-bound | nicht sinnvoll |
| 1000 (max) | nur fuer leichte Apps | nie |
Wenn deine App grossteils auf DB-Antworten wartet (typisches Web-Backend), setze Concurrency auf 50-100. Damit zahlst du fuer eine vCPU-Sekunde statt fuer 50.
Wann App Engine Standard noch Sinn ergibt
App Engine Standard 2026 lohnt sich nur, wenn:
- Free Tier deckt dich ab. Indie-Apps mit < 100k Requests/Tag laufen auf F1 effektiv kostenlos.
- Du nutzt Datastore eng integriert. App Engine + Datastore ist ein gehaerteter Stack mit gutem Auth/IAM.
- Du hast 10+ Jahre alten Code, der genau so laeuft.
Sonst: Cloud Run und Datastore (jetzt Firestore Datastore-Mode) nutzen.
App Engine Flexible — vermeiden
App Engine Flexible existiert nur noch aus Kompatibilitaetsgruenden. Es ist im Kern: Cloud Run-aehnliche Container, aber:
- Keine Scale-to-Zero (mindestens 1 Instanz immer aktiv)
- Teurer pro vCPU/RAM-Sekunde als Cloud Run
- Slower deploys als Cloud Run
Wenn du heute Flexible nutzt: migrieren nach Cloud Run.
Eventing-Integration
Cloud Functions Gen2 ist 2026 besonders stark bei Event-Triggern:
| Event | Cloud Functions Gen2 | Cloud Run via Eventarc |
|---|---|---|
| HTTP Request | nativ | nativ |
| Pub/Sub Message | nativ | via Eventarc |
| Cloud Storage Object Change | nativ | via Eventarc |
| Firestore Document Change | nativ | via Eventarc |
| BigQuery Job Completion | nativ | via Eventarc |
| Cloud Scheduler Cron | nativ | nativ |
| Custom CloudEvent | via Eventarc | via Eventarc |
Eventarc fuer Cloud Run ist gut, aber Cloud Functions Gen2 hat das bessere Developer-Experience fuer Single-Function-Trigger.
DACH-spezifisches
- Regionen mit niedrigster Latenz aus DACH: europe-west1 (Belgien, ~12-18 ms aus Berlin), europe-west3 (Frankfurt, ~3-6 ms), europe-west4 (Niederlande), europe-west10 (Berlin, neu seit 2024).
- DSGVO: GCP hat EU-spezifische DPA und Standardvertragsklauseln; fuer streng regulierte Workloads ist europe-west3 (Frankfurt) oder europe-west10 (Berlin) die Wahl.
- Datenresidenz: per Organisations-Policy lassen sich Resources auf EU-Regionen festnageln. In DACH-Compliance-Setups ist das Pflicht.
- EUR-Abrechnung: GCP rechnet 2026 in EUR mit fester Konvertierung pro Monat.
Faustregeln zum Mitnehmen
- Container? Cloud Run. Default-Wahl 2026.
- Event-Trigger? Functions Gen2. Besseres DX fuer FaaS.
- Always-On nur bei dauerhafter Last. Sonst Scale-to-Zero billiger.
- Concurrency >= 50 fuer IO-bound Apps. Spart 80 % Compute.
- App Engine Standard nur fuer Free-Tier-Indies. Sonst Migration.
Quellen
- Cloud Run Pricing
- Cloud Functions Pricing
- App Engine Pricing
- Cloud Run vs Functions Choice Guide
- Cold-Start Performance Tips
Pricing-Stand: 14. Mai 2026, europe-west1. GCP passt Free Tiers und Pricing-Logik gelegentlich an — Aktualstand vor groesserer Architektur-Entscheidung pruefen.
Geschrieben von
Harbinger Team
Cloud-, Data- und AI-Engineer in DACH. Schreibt seit 2018 über infrastrukturkritische Tech-Entscheidungen — keine Marketing- Folien, sondern echte Trade-offs aus Production-Workloads.
Hat dir das geholfen?
Jede Woche ein neuer Artikel über DACH-Cloud, Data und AI — direkt in dein Postfach. Kein Spam, kein Marketing-Sprech.
Kein Spam. 1-Klick-Abmeldung. Datenschutz bei Loops.so.