C4-Diagrams
Details
- Full Name
-
C4 Model for Software Architecture Diagrams
Core Concepts:
- Four levels of abstraction
-
- Level 1 - Context
-
System in its environment (users, external systems)
- Level 2 - Container
-
Applications and data stores that make up the system
- Level 3 - Component
-
Components within containers
- Level 4 - Code
-
Class diagrams, entity relationships (optional)
- Zoom in/out
-
Progressive disclosure of detail
- Simple notation
-
Boxes and arrows, minimal notation overhead
- Audience-appropriate
-
Different diagrams for different stakeholders
- Supplementary diagrams
-
Deployment, dynamic views, etc.
- Key Proponent
-
Simon Brown
When to Use:
-
Communicating architecture to diverse stakeholders
-
Onboarding new team members
-
Architecture documentation and review
-
Replacing or supplementing UML
Current Status:
-
The four levels (System Context, Container, Component, Code) and the supporting diagrams (system landscape, dynamic, deployment) are stable; c4model.com remains actively maintained by Simon Brown with edits into 2026
-
In September 2024 the site was rewritten from a single long page into a multi-page reference with new guidance (modelling microservices, queues and topics, a review checklist) — a prior trained on the old one-pager misses this guidance and the sharpened diagramming-vs-modelling framing around tooling such as Structurizr