이런 분이 읽으면 좋습니다
요약: 동일 MVP 워크로드 기준으로 GCP 가 AWS 보다 월 $30~50 저렴하고, Azure 는 Windows 스택이 아니면 가장 비싸다. 비용 차이의 대부분은 가격표가 아니라 NAT Gateway·egress·managed service 기본값에서 발생하며, Bootstrap → MVP → Growth 로 단계가 바뀌면 “가장 싼 클라우드”도 바뀐다.
이 글은 월 인프라 지출 $200~$3,000 구간의 시드~시리즈 A 스타트업에서 CTO 나 백엔드 리드를 맡고 있는 사람을 위해 썼다. 모든 가격은 2026년 4월 기준 각 클라우드 공식 가격 페이지 및 calculator 스냅샷이며, 크레딧이나 Savings Plans 같은 할인은 적용하지 않은 온디맨드 가격이다.
한눈에 비교: 3단계 × 3클라우드 월 비용
| 단계 | 워크로드 기준 | AWS | GCP | Azure |
|---|---|---|---|---|
| Bootstrap | 1인, 월 ~1K 요청, DB 1개 | $0~15 | $10~20 | $5~20 |
| MVP | 3~5인, 월 ~50K 요청, API+웹 분리 | $120~160 | $70~110 | $90~130 |
| Growth | 10+인, 월 ~500K 요청, 멀티 서비스 | $350~500 | $220~360 | $310~520 |
Bootstrap 에서 AWS 가 가장 싸 보이지만, 이건 t4g.small 무료 프로모션(2026년 12월까지)과 RDS Free Tier 750시간이 살아 있어서다. 이 두 가지가 만료되면 AWS 의 Bootstrap 비용은 $40~60 으로 뛴다. “무료 클라우드”는 없다 — 있는 건 “아직 과금이 시작되지 않은 클라우드”뿐이다.
왜 같은 워크로드에 비용이 다른가
가격표만 비교하면 세 클라우드의 vCPU 시간당 가격은 거의 같다. 차이는 세 가지 구조적 요인에서 발생한다.
무료 티어 설계 철학
AWS 는 “12개월 한정 무료”가 기본이다. t4g.small 750시간, RDS db.t4g.micro 750시간, S3 5GB — 전부 가입일로부터 12개월 뒤 만료된다. 13개월째 청구서를 열면 $0 이었던 항목이 한꺼번에 과금되면서 $50~80 이 추가된다.
GCP 는 Cloud Run, Cloud Functions, GCS 일부에 Always Free 를 운영한다. 12개월 제한이 없다. Cloud Run 의 월 180,000 vCPU-초(약 50 CPU 시간)는 Bootstrap 수준 SaaS 의 API 서버를 0원으로 굴리기에 충분하다. 하지만 Cloud SQL 에는 Always Free 가 없다 — 가장 작은 인스턴스(db-f1-micro)도 월 $7 이상이 나간다.
Azure 는 12개월 무료 + Always Free 혼합 모델이다. App Service Free 티어가 있지만 커스텀 도메인, SSL, 스케일 아웃이 없어서 프로덕션에 쓸 수 없다. 실질적으로 B1 ($13.14/월) 부터 시작이다.
네트워크·egress 과금
세 클라우드 모두 인바운드 트래픽은 무료지만, **아웃바운드(egress)**는 $0.08~0.12/GB 를 받는다. 여기까지는 비슷한데, 차이가 나는 건 내부 네트워크 과금이다.
AWS 의 가장 악명 높은 비용 항목은 NAT Gateway다. VPC 안의 프라이빗 서브넷에서 인터넷으로 나가는 트래픽에 시간당 $0.045 + 데이터 처리 $0.045/GB 가 붙는다. MVP 스택에서 NAT Gateway 비용만 월 $32 이상이 되는 경우가 흔하다. GCP 의 Cloud NAT 도 비슷한 구조이나 데이터 처리 요금이 약간 저렴하다. Azure 는 NAT Gateway 요금이 상대적으로 낮지만, outbound bandwidth 가 5GB 이후 $0.087/GB 로 빨리 붙는다.
Managed service 의존 — 고정 비용 vs 종량
Azure App Service 는 인스턴스 단위 고정 과금이다. B1 이 $13.14/월이면 트래픽이 0 이든 100K 요청이든 같은 금액이다. 예측 가능하지만 낭비가 크다.
GCP Cloud Run 은 요청 기반 종량이다. 컨테이너가 요청을 처리하는 동안만 과금되고, 트래픽이 없으면 $0 이다. 트래픽 변동이 큰 초기 스타트업에게 구조적으로 유리하다.
AWS ECS Fargate 는 태스크 실행 시간 종량이다. Cloud Run 보다 과금 단위가 크고(최소 1분), 0 스케일이 기본값이 아니라 최소 1 태스크를 항상 올려두는 패턴이 일반적이다. 결과적으로 고정 비용에 가깝다.
AWS
대표 스택
EC2 t4g.small(또는 ECS Fargate) + RDS db.t4g.small (PostgreSQL) + S3 + CloudFront + Route 53.
월 비용 실례
| 단계 | 컴퓨트 | DB | 스토리지+CDN | NAT | 합계 |
|---|---|---|---|---|---|
| Bootstrap | t4g.small 무료* | RDS Free Tier* | S3 ~$1 | — | $0~15 |
| MVP | Fargate 2 task ~$36 | RDS db.t4g.small ~$25 | S3+CF ~$10 | ~$32 | $120~160 |
| Growth | Fargate 4 task ~$72 | RDS db.r6g.large ~$138 | S3+CF ~$30 | ~$45 | $350~500 |
* 2026년 12월 만료 예정. 이후 Bootstrap 은 $40~60 으로 상승.
숨은 비용 3가지
- NAT Gateway: VPC 프라이빗 서브넷 기본 구성에서 자동으로 필요해진다. MVP 단계에서 전체 비용의 20~25% 를 차지하는 경우가 많다.
- CloudWatch Logs: 기본 로그 보존이 무제한이라 방치하면 월 $10~30 이 쌓인다. 보존 기간을 7일이나 30일로 명시 설정해야 한다.
- Inter-AZ 통신: 같은 리전이라도 AZ 가 다르면 $0.01/GB 가 붙는다. 멀티 AZ RDS 를 쓰면 이 비용이 의외로 크다.
운영 난이도
AWS 의 IAM 권한 모델은 세 클라우드 중 가장 세밀하지만, 그만큼 초기 설정이 복잡하다. VPC 네트워킹(서브넷·시큐리티 그룹·NAT)을 직접 설계해야 하고, 기본 모니터링은 CloudWatch 가 있지만 대시보드 구성에 추가 비용이 든다. 3~5인 팀에서 AWS 인프라 경험이 없으면 초기 2주가 네트워크 설정에 녹는다.
GCP
대표 스택
Cloud Run + Cloud SQL (PostgreSQL) + GCS + Cloud Load Balancing.
월 비용 실례
| 단계 | 컴퓨트 | DB | 스토리지+LB | Cloud NAT | 합계 |
|---|---|---|---|---|---|
| Bootstrap | Cloud Run $0* | Cloud SQL micro ~$7 | GCS ~$1 | — | $10~20 |
| MVP | Cloud Run ~$15 | Cloud SQL small ~$30 | GCS+LB ~$20 | ~$10 | $70~110 |
| Growth | Cloud Run ~$40 | Cloud SQL custom ~$90 | GCS+LB ~$35 | ~$20 | $220~360 |
* Always Free 범위 내 (월 180,000 vCPU-초).
숨은 비용 3가지
- Cloud SQL 최소 비용: Always Free 가 없어서 가장 작은 인스턴스도 $7/월. Bootstrap 단계의 “유일한 고정 비용”이 된다.
- Cloud Logging 볼륨: 기본 로그 수집이 켜져 있고, 50GB 이후 $0.50/GB. Cloud Run 의 stdout 로그가 의외로 볼륨이 크다.
- Premium Tier 네트워크: GCP 기본 네트워크 티어가 Premium 이라 egress 가 AWS 보다 약간 비싸다. Standard Tier 로 바꾸면 절감 가능하지만 성능이 떨어진다.
운영 난이도
GCP 의 강점은 “의견이 있는 기본값”이다. Cloud Run 은 컨테이너 이미지만 있으면 배포되고, 네트워킹을 거의 몰라도 된다. 하지만 프로젝트·폴더·조직 구분이 직관적이지 않고, 서비스 계정(SA) 관리가 IAM 역할과 얽히면서 혼란이 생긴다. Terraform provider 업데이트가 AWS 보다 1~2분기 느린 경향이 있다.
Azure
대표 스택
App Service (B1~P1v3) + Azure SQL Database + Blob Storage + Azure Front Door.
월 비용 실례
| 단계 | 컴퓨트 | DB | 스토리지+CDN | 합계 |
|---|---|---|---|---|
| Bootstrap | App Service Free→B1 ~$13 | Azure SQL Basic ~$5 | Blob ~$1 | $5~20 |
| MVP | App Service B2 ~$26 | Azure SQL S2 ~$50 | Blob+FD ~$20 | $90~130 |
| Growth | App Service P1v3 ~$73 | Azure SQL GP 2–4 vCore $200–$400 | Blob+FD ~$40 | $310~520 |
숨은 비용 3가지
- Outbound bandwidth: 5GB 이후 $0.087/GB. JSON 중심 API 응답이라면 MVP 에서 월 $10~20 추가.
- Azure SQL DTU 단계 점프: Standard S2 ($50/월)에서 성능이 부족해지면 다음 선택지가 Premium P1 ($465/월)이다. 거의 10배. 처음부터 vCore 모델로 시작하면 중간 단계가 생긴다.
- Log Analytics 볼륨: Application Insights 와 연동하면 데이터 수집량에 비례 과금. 월 5GB 무료 이후 $2.76/GB.
운영 난이도
Azure 는 Windows·.NET·Active Directory 생태계와의 통합이 자연스럽다. 엔터프라이즈 고객이 AD 기반 SSO 를 요구하면 Azure 가 가장 빠른 경로다. 그 외 스택(Node, Python, Go)에서는 오히려 불편하다. 포털·CLI·PowerShell 이 혼재되어 있어 자동화 스크립트가 파편화되기 쉽고, 리소스 그룹 설계를 초기에 잘못 잡으면 재구성이 어렵다.
선택 기준 프레임 — 팀 상황별 트레이드오프
| AWS | GCP | Azure | |
|---|---|---|---|
| Linux + 오픈소스 스택 | 적합 | 최적 | 비추 |
| .NET / Windows 스택 | 가능 | 비추 | 최적 |
| 트래픽 변동 큼 (bursty) | 보통 | 최적 (Cloud Run) | 비추 (고정 과금) |
| 트래픽 예측 가능 (steady) | 최적 (RI 활용) | 보통 | 적합 |
| 엔터프라이즈 고객 보유 | 적합 | 보통 | 최적 (AD 통합) |
| ML / TPU 워크로드 | 보통 | 최적 | 보통 |
| Terraform 중심 IaC | 최적 | 적합 | 보통 |
피해야 할 상황 — 실패 모드 5가지
의사결정 플로우
다음에 읽을 글
- Vercel vs Netlify vs Cloudflare Pages: 2026 비용·성능 비교 — IaaS 클라우드를 골랐다면, 프런트엔드 호스팅 레이어도 비교해야 한다
- Supabase vs PlanetScale vs Neon: SaaS 에 맞는 Postgres 선택 — RDS 나 Cloud SQL 대신 managed Postgres SaaS 를 쓰면 비용 구조가 달라진다
- 모니터링 스택 가이드: Datadog vs Grafana vs New Relic — 클라우드 비용을 줄였는데 모니터링에서 다시 나간다면