Data Flow Diagram Maker & DFD Generator for Level 0, 1 & 2

Make a data flow diagram (DFD) online from a plain-English description. Generate context (Level 0), Level 1, and Level 2 diagrams with processes, external entities, data stores, and labeled data flows. Free to generate and preview; watermark-free files with credits.

CustomerPayment Gateway0Online StoreWarehouseorder requestorder confirmationpayment requestpayment approvalshipment requestdispatch confirmation
Hand-drawn example, not generated output. Describe your own system above to generate yours. A Level 0 context diagram in Gane-Sarson notation: the squares are external entities (Customer, Payment Gateway, Warehouse), the rounded box labeled 0 is the whole system treated as one process, and every labeled arrow is a data flow. A context diagram has no data stores — they appear when process 0 is broken into Level 1 processes.

Data Flow Diagram Generator

Describe the system you want to visualize
0 / 20,000 characters

Free to try ·

Preview

Data Flow Diagram Examples

A Level 0 context diagram for an online order system

View:

Context Diagram (Level 0)

The whole system as one process, with every external entity and the data that flows in and out.

level-0context-diagramsystem-overview

What is a data flow diagram (DFD)?

A data flow diagram (DFD) is a graphical model of how information moves through a system. Instead of showing control logic or timing like a flowchart, a DFD answers a different question: where does data come from, what transforms it, where is it stored, and where does it go? Each arrow is a named piece of data in motion, and each process is a step that changes that data. Because it focuses purely on data rather than implementation, a DFD works as a shared map that analysts, developers, and stakeholders can all read. This generator turns a plain-English description of your system into a clean DFD with the four DFD symbol types, so you do not have to place and align boxes by hand.

DFD symbols: the 4 elements of a data flow diagram

  • External entities (also called terminators): the people, systems, or organizations outside your system that send or receive data — drawn as squares or rectangles, e.g. Customer, Payment Gateway, Warehouse.
  • Processes: the steps that transform incoming data into outgoing data — drawn as circles in Yourdon/DeMarco notation or rounded rectangles with a numbered header in Gane-Sarson, and numbered (1.0, 2.0…) so they can be decomposed later.
  • Data stores: where data rests between processes, such as a database, file, or table — drawn as two parallel lines (Yourdon/DeMarco) or an open-ended rectangle (Gane-Sarson), labeled D1, D2, and so on.
  • Data flows: the labeled arrows that connect everything, naming the exact data that moves (e.g. Order Details, Payment Authorization, Stock Level). A flow must start or end at a process, never run entity-to-entity or store-to-store.

DFD notation: Yourdon/DeMarco vs Gane-Sarson

There are two common notations for data flow diagrams. The Yourdon and DeMarco notation draws processes as circles (sometimes called bubbles), external entities as squares, and data stores as a pair of parallel lines. The Gane-Sarson notation, popular in business and structured-analysis settings, draws processes as rounded rectangles with a header for the process number, and data stores as open-ended rectangles. Both use labeled arrows for data flows and follow the same leveling rules — the difference is purely in the shapes. This tool produces clean, standard DFD shapes so the diagram reads correctly whichever convention your course or team expects.

DFD levels: context (Level 0), Level 1, and Level 2

  • Context diagram (Level 0): the entire system shown as a single process in the center, surrounded by external entities and the high-level data flows between them. It defines the system boundary and contains no data stores.
  • Level 1 DFD: the single process from the context diagram is "exploded" into its main sub-processes (numbered 1.0, 2.0, 3.0…), now showing the data stores and the flows between processes.
  • Level 2 DFD: a single Level 1 process is decomposed further into detailed sub-processes (numbered 2.1, 2.2, 2.3…) when it is too complex to explain in one step.
  • The golden rule is balancing: the data flowing in and out of a process must match across levels, so a Level 1 diagram is a faithful zoom-in of the context diagram, and Level 2 a faithful zoom-in of Level 1.

Level 0 to Level 1: a worked example

  • Step 1 — set the boundary. For an online store, everything inside the system is one process at Level 0, labeled "Online Store" (process 0). The external entities outside the boundary are Customer, Payment Gateway, and Warehouse. A context diagram has no data stores.
  • Step 2 — name the boundary flows. Customer → Online Store: Order Request and Login Credentials. Online Store → Customer: Order Confirmation and Tracking Update. Online Store → Payment Gateway: Payment Request; Payment Gateway → Online Store: Authorized / Declined. Online Store → Warehouse: Shipment Request; Warehouse → Online Store: Dispatch Confirmation.
  • Step 3 — explode process 0 into numbered processes (1.0 Browse catalog, 2.0 Place order, 3.0 Take payment, 4.0 Fulfil order) and add the data stores the processes share: D1 Customers, D2 Orders, D3 Inventory.
  • Step 4 — connect inside the boundary. 2.0 writes Order Details to D2 and reads Stock Level from D3; 3.0 sends Payment Request out to the gateway and writes Payment Status to D2; 4.0 reads confirmed orders from D2, sends Shipment Request to the warehouse, and writes Dispatch Confirmation back to D2. Each store is drawn once, even when several processes use it.
  • Step 5 — balance the levels. Every flow crossing the Level 0 boundary must reappear at Level 1 (Order Request still enters through 2.0, Payment Request still leaves through 3.0), and every Level 1 process needs at least one input and one output. If a flow appears or vanishes, the decomposition is wrong — fix it before adding a Level 2 detail diagram of a single process, numbered 4.1, 4.2, and so on.

How to make a data flow diagram from a description

  • Describe your system in plain English — name the processes that transform data, the data stores involved, and the external entities that interact with it.
  • Pick the level you need: a context (Level 0) diagram for the big picture, or a Level 1 / Level 2 diagram for more internal detail.
  • Generate the diagram. The tool lays out the processes, entities, data stores, and labeled data flows with the four DFD symbol types.
  • Refine the prompt if a flow or store is missing, regenerate, then download the diagram to drop into a report, slide, or design document.

DFD rules: how to check a data flow diagram

  • Every process needs at least one input and one output. A process with only inputs is a black hole, and one with only outputs is a miracle.
  • Data cannot flow directly between two external entities, or between two data stores. It must pass through a process.
  • Name every data flow with a noun phrase (Order Details) and every process with a verb phrase (Validate Order).
  • Balance the levels: the inputs and outputs of a parent process must match those of its child diagram.
  • Use a flowchart instead when you need decisions and sequence, an ER diagram to design the tables behind each data store, and a block diagram for the high-level structure.

Using DFDs in systems analysis and design

Data flow diagrams are a core deliverable in structured systems analysis. Early in a project they help capture requirements by forcing every input, output, and data store into the open, which surfaces gaps and assumptions before any code is written. They double as documentation that non-technical stakeholders can validate, and as a blueprint that maps cleanly onto modules, services, and database tables during design. Students meet DFDs in software engineering, information systems, and database courses precisely because they teach you to separate what a system does with data from how it is built. Whether you are documenting an existing process, scoping a new application, or studying for an exam, this generator gives you a presentation-ready DFD in seconds.

Frequently Asked Questions

For the notation history, symbol-by-symbol reference, and common mistakes, read the step-by-step guide to creating a data flow diagram. Tracking how work and waiting time move through a process rather than how data moves? Use the value stream map maker.