# Chatflows Versus Workflows — Dify Workflow Basics

Source: https://www.skillbyai.com/en/dify-workflows/h-chatflow

> Multi-turn graphs with answer nodes.

## Each turn runs the graph

In a **chatflow**, each user message runs the graph, with access to the conversation so far. **Answer** nodes stream text to the user (there can be several along a path), and **conversation variables** keep state across turns (for example, the order ID once the user gives it). Chatflows suit assistants that ask clarifying questions; workflows suit single-shot processing. Both share the same node types for retrieval, logic, code and tools. Dify's node names, menus and options change between versions; check the current Dify documentation.

## Conversations and autonomy

Chatflows add multi-turn memory; agent nodes let models choose tools.

![Three ideas: chatflows, memory, agents.](assets/figures/dify-workflows/section-6-map.svg) — Figure 6.1 — Chatflows, memory and agents.

## A clarifying chatflow

State carried across turns.

```text
turn 1  user: "my order is late"
        parameter extractor -> order_id missing
        answer: "Sure, what is your order number?"
turn 2  user: "A1042"
        set conversation variable order_id = A1042
        HTTP lookup -> status "in transit, arriving Friday"
        answer: "Order A1042 is in transit and should arrive Friday."
```

## Store facts in conversation variables

Keep key facts (IDs, preferences) in variables instead of relying on the model to remember them from history.

**Quiz:** What do conversation variables provide in a chatflow?

- [ ] Document chunking
- [ ] Faster models
- [x] State that persists across turns
- [ ] API keys

*Answer:* State that persists across turns. Remember important facts explicitly.
