Flowchart examples

Nine real flowcharts, from a two-question troubleshooting chart to a full order process. Each one is a free template: download the draw.io file and change it, or edit the Mermaid code online.

The colours follow the shape: green for start and end, yellow for decisions, blue for steps, purple for input and output. If a shape is new to you, the flowchart symbols chart explains it.

Example 1

Lamp does not work

The classic first flowchart: two questions, each with a yes and a no. A good model for any troubleshooting guide.

Shows: Start, two decisions, three actions.

Mermaid code
flowchart TD
  start([Lamp does not work]) --> plugged{Is it plugged in?}
  plugged -->|No| plug[Plug it in]
  plugged -->|Yes| bulb{Is the bulb burned out?}
  bulb -->|Yes| replace[Replace the bulb]
  bulb -->|No| repair[Repair or replace the lamp]
Lamp does not work flowchart
Example 2

Largest of three numbers

A favourite school exercise. It reads three numbers and prints the largest, using nested decisions.

Shows: Input and output (parallelograms), nested decisions.

Mermaid code
flowchart TD
  start([Start]) --> read[/Read A, B, C/]
  read --> ab{"Is A > B?"}
  ab -->|Yes| ac{"Is A > C?"}
  ab -->|No| bc{"Is B > C?"}
  ac -->|Yes| printA[/Print A/]
  ac -->|No| printC[/Print C/]
  bc -->|Yes| printB[/Print B/]
  bc -->|No| printC
  printA --> stop([End])
  printB --> stop
  printC --> stop
Largest of three numbers flowchart
Example 3

Sum of numbers from 1 to N

Shows a loop: the arrow goes back up to the decision until the condition is false.

Shows: Preparation (hexagon) to set the counters, a loop back to the decision.

Mermaid code
flowchart TD
  start([Start]) --> read[/Read N/]
  read --> init{{"sum = 0, i = 1"}}
  init --> check{"Is i ≤ N?"}
  check -->|Yes| add["sum = sum + i"]
  add --> next["i = i + 1"]
  next --> check
  check -->|No| print[/Print sum/]
  print --> stop([End])
Sum of numbers from 1 to N flowchart
Example 4

User login

How an app checks a password and locks the account after three failed attempts.

Shows: Input, decisions, two loops back to the input.

Mermaid code
flowchart TD
  start([Start]) --> enter[/Enter email and password/]
  enter --> exists{Account exists?}
  exists -->|No| noAccount[Show: no account found]
  noAccount --> enter
  exists -->|Yes| correct{Password correct?}
  correct -->|Yes| open[Open the dashboard]
  correct -->|No| count[Add 1 to failed attempts]
  count --> three{3 failed attempts?}
  three -->|No| enter
  three -->|Yes| lock[Lock the account for 15 minutes]
  open --> stop([End])
  lock --> stop
User login flowchart
Example 5

Online order fulfillment

From a new order to the tracking email, including what happens when payment fails or an item is out of stock.

Shows: Decisions that rejoin the main flow, output at the end.

Mermaid code
flowchart TD
  start([Order placed]) --> paid{Payment approved?}
  paid -->|No| retry[Email the customer to update payment]
  retry --> stop([End])
  paid -->|Yes| stock{All items in stock?}
  stock -->|No| supplier[Order missing items from the supplier]
  supplier --> date[Tell the customer the new date]
  date --> pack
  stock -->|Yes| pack[Pick and pack]
  pack --> label[Print the shipping label]
  label --> carrier[Hand over to the carrier]
  carrier --> email[/Send the tracking email/]
  email --> stop
Online order fulfillment flowchart
Example 6

Customer support ticket

A support team’s process, with escalation to level 2 and a check that the customer is happy before closing.

Shows: Two decisions merging into one, a loop back to the start.

Mermaid code
flowchart TD
  start([Ticket received]) --> tag[Read and tag the ticket]
  tag --> known{Known issue?}
  known -->|Yes| saved[Reply with the saved answer]
  known -->|No| level1{Can level 1 solve it?}
  level1 -->|Yes| solve[Solve and reply]
  level1 -->|No| escalate[Escalate to level 2]
  escalate --> solve
  saved --> happy{Customer satisfied?}
  solve --> happy
  happy -->|No| tag
  happy -->|Yes| close[Close the ticket]
  close --> stop([End])
Customer support ticket flowchart
Example 7

Purchase approval

Who signs off on a purchase, depending on the amount.

Shows: A decision that splits the path and rejoins it.

Mermaid code
flowchart TD
  start([Purchase request]) --> amount{"Over $1,000?"}
  amount -->|No| manager[Manager approves]
  amount -->|Yes| finance[Manager and finance approve]
  manager --> approved{Approved?}
  finance --> approved
  approved -->|No| explain[/Tell the requester why/]
  approved -->|Yes| po[Create a purchase order]
  po --> order[Order from the supplier]
  explain --> stop([End])
  order --> stop
Purchase approval flowchart
Example 8

New employee onboarding

From a signed offer to the 30-day check-in. The first week is grouped in a frame.

Shows: A group (frame) for one phase, a waiting loop.

Mermaid code
flowchart TD
  start([Offer accepted]) --> papers[Send the contract and paperwork]
  papers --> back{Paperwork returned?}
  back -->|No| remind[Send a reminder after 3 days]
  remind --> back
  back -->|Yes| setup[Order laptop and accounts]
  setup --> welcome
  subgraph week [First week]
    welcome[Welcome meeting] --> training[Security and tools training]
    training --> team[Meet the team and a buddy]
  end
  team --> checkin[30-day check-in]
  checkin --> done([Onboarding done])
New employee onboarding flowchart
Example 9

Should I buy it?

A personal decision as a flowchart. Simple enough for a first class on flowcharts, and honest about saving up.

Shows: Three decisions in a row, a waiting loop.

Mermaid code
flowchart TD
  start([I want to buy something]) --> need{Do I need it?}
  need -->|No| skip[Don't buy it]
  need -->|Yes| afford{Can I afford it?}
  afford -->|No| save[Save up for it]
  save --> afford
  afford -->|Yes| cheaper{Is it cheaper elsewhere?}
  cheaper -->|Yes| there[Buy it there]
  cheaper -->|No| buy[Buy it here]
  skip --> stop([End])
  there --> stop
  buy --> stop
Should I buy it? flowchart

Making your own

More on this in how to design a clear flowchart.

Already drew it on paper or a whiteboard?

Take a photo. Sketch2scheme turns the sketch into an editable flowchart like the ones above, ready for draw.io, PNG or SVG.

See examples