How Much Does a Chat App Backend Cost on AWS, Azure, or GCP?

A chat app backend costs $100-$300/mo at 1,000 concurrent users and $3,000-$8,000/mo at 100,000 concurrent users. Costs scale with concurrent connections, not registered users, since each WebSocket connection has a real memory and compute footprint.

Real-time chat backends need persistent WebSocket connections, message storage, presence tracking, and push notifications. Infrastructure costs scale with concurrent connections — not just registered users. Use our calculator to compare chat backend infrastructure costs across AWS, Azure, and GCP.

Chat Backend Architecture

A production chat backend requires WebSocket servers for maintaining persistent real-time connections, a message store (typically NoSQL for write-heavy workloads), a presence service powered by Redis for tracking online status, push notification delivery through FCM and APNs for offline users, file and media storage for image and document attachments, and a search service for querying message history across conversations.

WebSocket Connection Costs

Each WebSocket connection consumes approximately 50KB of memory and a file descriptor on the server. A c5.xlarge instance (4 vCPU, 8GB RAM) can handle roughly 50,000 concurrent connections. At $124/month on-demand, that works out to about $0.0025 per connection per month. Load balancers add $20–$50/month per million connections for WebSocket-aware routing. Connection density is the key optimization metric for chat infrastructure costs.

Chat Infrastructure Costs by Scale

At 1,000 concurrent users, a basic chat backend costs $100–$300/month with a single WebSocket server and managed NoSQL database. At 10,000 concurrent users, expect $500–$1,500/month with multiple WebSocket servers, Redis for presence, and growing message storage. At 100,000 concurrent users, costs range from $3,000–$8,000/month. Message storage grows fast — 1 million messages per day adds roughly 1GB. Redis for presence tracking becomes a significant cost at scale.

Key Cost Factors

  • WebSocket servers: Persistent connection compute
  • Redis: Presence tracking and session state
  • NoSQL database: Message storage and retrieval
  • Object storage: File and media attachments
  • Push notifications: FCM/APNs delivery costs
  • Load balancer: WebSocket-aware traffic distribution

Frequently Asked Questions

How much does a chat app backend cost on AWS vs Azure vs GCP?

At 1,000 concurrent users, a basic chat backend costs $100-$300/month with a single WebSocket server and managed NoSQL database. At 10,000 concurrent users, expect $500-$1,500/month with multiple WebSocket servers and Redis for presence. At 100,000 concurrent users, costs run $3,000-$8,000/month. A c5.xlarge-class instance (4 vCPU, 8GB RAM) handles roughly 50,000 concurrent connections at around $124/month on-demand, about $0.0025 per connection per month, similar across providers.

What is the cheapest way to scale a chat app backend?

Maximizing connection density per server instance is the key cost lever, since WebSocket costs scale with concurrent connections rather than registered users. Load balancers add $20-$50/month per million connections for WebSocket-aware routing, so consolidating connections onto fewer, larger instances tends to be cheaper than spreading them thin across many small ones, provided you have headroom for failover.

What drives the cost of a chat app backend?

WebSocket servers maintaining persistent connections are the core cost, with each connection consuming roughly 50KB of memory and a file descriptor. Redis for presence tracking becomes a significant cost at scale, and NoSQL message storage grows fast — 1 million messages per day adds roughly 1GB. Push notification delivery for offline users and object storage for file and media attachments round out the cost structure.

How accurate are these chat app cost estimates?

Estimates use published on-demand list prices for AWS, Azure, and GCP compute, database, and messaging services in US regions, last verified 2026-07-15. Connection density assumptions (roughly 50,000 per c5.xlarge-class instance) are approximate and vary with message frequency and payload size. See /methodology for the full calculation approach.

Related resources