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