# BPMN Task Marker and Task Type

**In short:** Task types say what kind of work a BPMN step is, such as service, script, or manual. Markers add repetition or compensation behavior. Tool support differs: Camunda 7 does not natively support the loop marker.

## Explanation

A BPMN task is one step in a process model. Two kinds of small symbols refine it: **types** and **markers**. The BPMN Activity article covers the wider idea of tasks and activities.

**Task types**

- **Service task:** a work item with a specific type. When the process reaches it, the engine creates a job for a worker to pick up.
- **Script task:** the engine evaluates a script. The script can be written in Groovy, JavaScript, or Python.
- **Manual task:** a person does the work without external tooling or a user interface. The engine simply passes through it.

**Multi-instance marker**

Multi-instance repeats a step. It comes in two forms:

- **Sequential:** drawn with three horizontal lines at the bottom of the activity.
- **Parallel:** drawn with three vertical lines. All instances are created when the activity starts. They run at the same time, independently of each other.

In Camunda 8, parallel is the default.

**Loop marker**

Camunda 7 does not natively support the loop marker. If you use that engine, model the loop explicitly, for example with gateways. The BPMN Gateway article explains gateways.

**Compensation marker**

Compensation handlers sit outside the regular flow. They run only when a compensation event is thrown. An association links them, not a sequence flow. The BPMN Compensation Event article covers the event side.

## Example

An order process has a parallel multi-instance service task named "Reserve item". Each order line gets its own instance. All instances start together and run independently. A script task then totals the prices. A manual task, "Pack parcel", follows. A person does it, and the engine passes straight through.

## Trade-offs

Check the target engine before you use a marker. Camunda 7 lacks native loop support, so a loop there needs explicit modeling, such as gateways. Parallel multi-instance runs all instances at once and independently. Sequential multi-instance is the other choice when you want repetition one instance at a time.

BPMN diagram: [A parallel multi-instance service task followed by a script task and a manual task.](https://arc.fuet.ch/diagrams/concepts/modeling-bpmn/bpmn-task-marker/diagram-1.bpmn)

## Checks

- Each loop in a model targeting Camunda 7 is modeled explicitly (for example with gateways), not with the loop marker.
- Each multi-instance activity is clearly drawn as parallel (vertical lines) or sequential (horizontal lines).
- Each compensation handler is linked by association and triggered by a compensation event, not reached by sequence flow.
- Manual tasks are used only for work that needs no external tooling or UI, since the engine passes through them.

## Related

- [BPMN Activity](https://arc.fuet.ch/concepts/modeling-bpmn/bpmn-activity.md)
- [BPMN Compensation Event](https://arc.fuet.ch/concepts/modeling-bpmn/bpmn-compensation-event.md)
- [BPMN Gateway](https://arc.fuet.ch/concepts/modeling-bpmn/bpmn-gateway-semantics.md)
- [BPMN Ad Hoc Sub-Process](https://arc.fuet.ch/concepts/modeling-bpmn/bpmn-ad-hoc-sub-process.md)
- [BPMN Core Elements](https://arc.fuet.ch/concepts/modeling-bpmn/bpmn-core-elements.md)
- [BPMN 2.0 Notation](https://arc.fuet.ch/concepts/modeling-bpmn/bpmn-2-0-notation-overview.md)

## Sources

- [Task Markers | docs.camunda.org](https://docs.camunda.org/manual/7.24/reference/bpmn20/tasks/task-markers/) — docs.camunda.org, accessed 2026-11-09
- [Script tasks | Camunda 8 Docs](https://docs.camunda.io/docs/components/modeler/bpmn/script-tasks/) — docs.camunda.io, accessed 2026-11-09
- [Service tasks | Camunda 8 Docs](https://docs.camunda.io/docs/components/modeler/bpmn/service-tasks/) — docs.camunda.io, accessed 2026-11-09
- [Manual tasks | Camunda 8 Docs](https://docs.camunda.io/docs/components/modeler/bpmn/manual-tasks/) — docs.camunda.io, accessed 2026-11-09
- [Multi-instance | Camunda 8 Docs](https://docs.camunda.io/docs/components/modeler/bpmn/multi-instance/) — docs.camunda.io, accessed 2026-11-09
