Free State Diagram Maker
Model what your system IS at any moment — states, transitions, guards, and events. BPMN tells you what it does; a state diagram tells you what it is.
Free forever · no signup · no credit card · unlimited diagrams
State diagrams (UML state machine diagrams) capture every possible condition a system or object can be in and the events that move it from one state to another. FreeDiagram generates clear, accurate state diagrams from plain-English descriptions — no UML tools required.
How to make a state diagram
List the states your system can be in
Start with a plain-English sentence: name the object (an order, a user session, a device) and list the states it passes through. Include any terminal states such as delivered or cancelled.
Generate the state diagram
Click Generate and FreeDiagram produces a UML state machine diagram with an initial pseudo-state, correctly shaped state boxes, and labeled transition arrows.
Add guards and actions
Refine with follow-up prompts — add a guard condition ('only if payment confirmed'), an entry action, or a composite state that nests sub-states.
Export for docs or implementation
Download as SVG or PNG for design documents, or copy the Mermaid source to paste directly into GitHub, Notion, or your wiki.
About state diagrams
A state diagram (formally a UML State Machine Diagram) models the dynamic behavior of a single object or system by enumerating every state it can occupy and every event or condition that drives a transition. The key distinction from a flowchart or BPMN diagram is focus: a state diagram answers 'what is the system right now?' rather than 'what steps does the process follow?'
The UML notation uses rounded rectangles for states, a filled circle for the initial pseudo-state, a bullseye for the final state, and labeled arrows for transitions. Transitions can carry a guard condition in square brackets and an action after a slash — for example, 'paymentReceived [amount >= total] / confirmOrder'. Composite states group related sub-states and allow shared transitions, which is essential for modeling complex lifecycles without duplication.
Software engineers use state diagrams for order and booking lifecycles, UI component states (loading, idle, error, success), network protocol design, and embedded firmware where every state must be explicitly handled. Embedded and systems developers find state diagrams indispensable because an unmodeled state is an untested code path.
FreeDiagram converts a natural-language description into a properly structured UML state machine. You do not need to remember notation rules — describe the behavior and the diagram follows. Use the output in technical design documents, code reviews, or as a reference when implementing a state machine in XState, Redux, or any FSM library.
Frequently asked questions
What is a state diagram used for?
State diagrams model the lifecycle of an object or system — every condition it can be in and every event that moves it between conditions. Common uses include e-commerce order status, user session management, UI component states, network protocols, and embedded device firmware.
What is the difference between a state diagram and a flowchart?
A flowchart models a process — a sequence of steps. A state diagram models an object — the set of conditions it can occupy. Flowcharts answer 'what happens next?'; state diagrams answer 'what is the system right now?' Use a state diagram when the same event can have different effects depending on the current state.
What is a guard condition in a state diagram?
A guard condition is a Boolean expression that must be true for a transition to fire. It is written in square brackets on the transition arrow — for example, 'paymentReceived [balance >= total]'. Guards let you model conditional transitions without adding extra states.
Can I model composite states with nested sub-states?
Yes. Describe the nesting in your prompt — for example, 'the Processing state contains Picking, Packing, and Labelling sub-states'. FreeDiagram will render a composite state with the sub-states inside and a shared transition out.
Does the output follow UML standards?
Yes. FreeDiagram uses UML State Machine notation — initial pseudo-state (filled circle), states (rounded rectangles), final state (bullseye), and labeled transition arrows. The output is compatible with documentation standards used in software architecture and systems design.
Other diagram types you can make
FreeDiagram supports 25+ types — all free, no signup.
Free AI Flowchart Maker
Describe any process in plain English and FreeDiagram draws the flowchart instantly — decision branches, loops, and all. Free, unlimited, no signup.
Free BPMN Maker
Model business processes with BPMN 2.0 — swimlanes, gateways, events, and tasks. No signup, no install, fully free.
Free AI Decision Tree Maker
Describe any decision and FreeDiagram maps it as a tree of choices, conditions, and outcomes — free, unlimited, no signup.