
Technical Lead & BPMN Educator·7 min read
Data elements in BPMN
Data elements in BPMN represent information that flows through a process - documents, records, forms, datasets. They are optional: most diagrams work fine without them. Add data elements when you need to show what information a task needs or produces.
The data elements
Data Object
A document or piece of information used or produced by a task. Shown as a page icon with a folded corner. Example: "Invoice", "Application form", "Customer record". Can have states like [draft] or [approved].
Data Store
A persistent repository of data that lives beyond a single process instance. Shown as a cylinder. Example: "Customer Database", "ERP System", "Document Archive".
Data Input / Data Output
Formal inputs and outputs of a process. Data input: what the process needs to start. Data output: what the process produces when it finishes.
Data Association
A dotted arrow connecting a data element to a task. Shows that the task reads from or writes to that data. Not a sequence flow - data associations do not control the order of execution.
When to model data
- -Compliance and audit - regulators want to see what data is accessed, where it is stored, and who touches it.
- -System integration - when designing automation, data elements show which systems need to exchange information.
- -Complex handoffs - when work passes between teams and the receiving team needs specific information to continue.
For most process documentation, data elements are unnecessary noise. Add them only when they answer a question someone will ask.
Related guides
Keep learning
Practice
Travel Agency
Uses data objects and call activities.
Practice
Best Practices
Modeling rules for clean diagrams.
Keep data docs alive
Process Governance Playbook
Ownership, reviews, and versioning for process documentation.
Tool comparison
draw.io Alternatives for BPMN
5 tools that export valid BPMN 2.0 with data elements.
Frequently asked questions
Should I always model data in BPMN?▼
No. Data elements are optional and add visual complexity. Only include them when they serve a purpose: compliance requirements, system integration design, or clarifying handoffs.
What is the difference between a data object and a data store?▼
A data object is a transient piece of information within one process instance (e.g., an invoice). A data store is a persistent repository shared across instances (e.g., a database).
Can data associations control the flow?▼
No. Data associations (dotted arrows) show data dependencies, not execution order. Only sequence flows (solid arrows) control when tasks execute.