System design diagram tool
Create system design diagrams
- Drag in load balancers, caches, queues and databases
- Connect them and say why each part is there
- Run traffic through it and watch latency, errors and cost
- Free, in your browser, no sign-up
Start a diagram Start from a real design
How to make a system design diagram
Start with who calls it
Add the clients first: web app, mobile app, IoT devices or a partner API. They decide how much traffic arrives and which endpoints it hits.
Add the parts in between
Search the palette or drag a part onto the canvas: DNS, CDN, load balancer, API gateway, services, Redis, PostgreSQL, Kafka-style streams, object storage and more.
Connect them
Draw a wire from one part to the next. Connections follow real rules, so a mobile app can reach a load balancer but not your database directly.
Say why each part is there
Every part has a short “why”. Writing it is how you check the design makes sense, and it is what an interviewer asks about.
Run traffic through it
Press play and turn up the requests per second. Latency (p50, p95, p99), errors and monthly cost update live, and the bottleneck glows red.
Present it or take it with you
Walk through it one part at a time in presentation mode, download a Markdown design doc or the JSON file, copy it as a prompt for ChatGPT or Claude, or publish a link.
55 parts to drag in
Clients
- Web app
- Mobile app
- Users (web + mobile)
- Desktop app
- IoT devices
- Partner / API consumer
Edge & network
- DNS
- CDN
- Load balancer (L7)
- Network load balancer (L4)
- API gateway
- Reverse proxy
- WAF / firewall
- VPN gateway
Compute
- Application server
- Microservice
- Web server
- BFF / GraphQL server
- Auth service
- Rate limiter
- Worker / consumer
- Serverless function
- WebSocket server
- Scheduler / cron
- Notification service
- Search service
- ML inference service
Relational data
- PostgreSQL
- MySQL
- Aurora / managed SQL
- Data warehouse
- Time-series DB
NoSQL & search
- Key-value store
- Document DB
- Wide-column store
- Graph DB
- Search index
- Vector DB
Cache
- Redis
- Memcached
Messaging
- Message queue
- Event stream
- Pub/Sub topic
Storage
- Object storage
- Data lake
Observability & ops
- Logging
- Metrics & monitoring
- Tracing
- Config / service discovery
- Secrets manager
External
- Payment provider
- Push gateway (APNs / FCM)
- Email / SMS provider
- LLM API
- Third-party API
Or start from a real design
- URL shortener (scaled): Replicated cache at 97% hits and a Multi-AZ primary; survives losing an API instance.
- Chat app: Realtime messaging with WebSockets, presence in Redis and messages in a wide-column store.
- News feed: Timeline with fan-out on write, a per-user feed cache and media on a CDN.
- Rate limiter: Token buckets in Redis checked at the gateway, so no single client can overwhelm the API.
- Ride hailing: Uber-style matching over an in-memory hexagon index of drivers, with surge pricing from the location stream.
- Payment system with ledger: Idempotent payments API, processor routing and an append-only double-entry ledger.
Questions
- Is it free?
- Yes. You can build, simulate and download diagrams without an account. Designs are saved in your browser. Log in only to publish a design and share a link to it.
- Can I start from an existing design?
- Yes. Open any of the real designs, such as a URL shortener, chat app or ride hailing, and your first edit makes your own copy.
- Is it good for system design interview practice?
- That is what it is built for. Many designs are tagged with the companies that ask them, and saying why each part exists is the part interviews test.
- How accurate is the simulation?
- The numbers are estimates from simple queueing models and public cloud list prices. They are good for comparing trade-offs, not for capacity planning in production.
- Can I export an image?
- Not yet. You can download a Markdown design doc or a JSON file, copy the design as an AI prompt, or share a link.