See it as a diagram
Everything below, as a diagram you can edit. Describe yours and see it in seconds.
No account needed · Editable canvas, not a picture
Step 1: write the scope in one sentence
A diagram answers one question for one audience. Write the question down before anything else: how does a checkout request reach the database, how is customer data isolated between tenants, what breaks if eu-west-1a goes away. If the sentence needs an "and", you have two diagrams.
Scope also sets the detail level. A leadership review needs the request path and the boundaries. An engineering handoff needs subnet tiers, security group rules, and route targets. Drawing both audiences into one canvas produces something neither can read, which is the most common failure mode in AWS diagrams and the reason so many end up as an unlabeled wall of orange icons.
Step 2: draw the containers before the services
AWS architecture is nested, so the diagram should be too. The order is region, then VPC with its CIDR, then availability zone, then subnet tier, then the resources. Name availability zones the way the console does, us-east-1a and us-east-1b, rather than AZ 1 and AZ 2, because the names are what appears in every alarm and every incident channel.
Two placement mistakes cost credibility immediately. An Application Load Balancer is regional and spans the subnets you register, so drawing it inside a single availability zone is wrong; put it at the VPC level or spanning both zone containers. And global services, Route 53, CloudFront, IAM, and the WAF web ACL attached to a distribution, do not belong inside the region box at all. Give them a lane above it.
If the workload is entirely serverless and region scoped, skip the VPC and zone containers instead of drawing empty ones. Boundaries are only worth drawing when they constrain something.
Step 3: place services in flow order, then label the role
Lay the request path along one axis, left to right or top to bottom, and keep the direction of arrows equal to the direction of the request or the event, not the direction of the dependency. Mixed arrow semantics is why readers ask "so which one calls which" three minutes into every walkthrough.
Then label twice. The node gets a service and a role, "Aurora PostgreSQL, orders write model", not just "Aurora". The edge gets what travels on it: tcp/5432, HTTPS, an EventBridge detail type, a batch size. A diagram whose edges are unlabeled arrows is a picture of a network, not an explanation of a system.
Finish with the metadata that decides whether anyone trusts the picture next quarter: the date, the environment, and the commit or account it describes.
Scope: how a checkout request reaches the orders database in prod Audience: engineers joining the payments team Region: eu-west-1, two AZs In: Route 53, CloudFront, ALB, ECS Fargate (checkout, orders), Aurora, SQS Out: CI pipeline, log group names, IAM policy detail, the analytics stack Generated: 2026-08-21 from main @ 4f1c9ab
Step 4: generate the first draft instead of placing forty icons
Icon placement is the least valuable part of the job and it is where the hours go. Describe the architecture in the sentence you already wrote and let Datadef produce the canvas: the real AWS marks, 439 of them in the icon set, VPC and availability zone drawn as zones, labelled edges, and a layout that reads in flow order. Then edit what the model got wrong, which is normally naming rather than structure.
From there the diagram is a normal canvas in the editor: move nodes, rename, group, add a zone, export to PNG or JPEG for the deck. If the architecture is defined in Terraform, skip the description entirely and connect the repository so the drawing comes from the code, covered in repo to diagram.
Put the scope sentence in the title
FAQ
What should an AWS architecture diagram include at minimum?
Should I draw one diagram or several?
Where do global services like Route 53 and CloudFront go?
Is it wrong to put an ALB inside one availability zone?
How long should drawing an AWS diagram take?