Dify vs n8n: LLM apps versus process automation
Dify and n8n are often placed side by side though they solve different problems. We cover when you need an LLM app builder and when you need integration flows.
6 min · · автоматизация · сравнение
Dify and n8n are usually placed in one row: both are visual, both can be self-hosted, both can call a language model. In practice they have different centers of gravity. The "dify vs n8n" question is easier once you decide what is central for you: the LLM application itself, or a process where the model is one step. Below we cover the differences, connect a model through a gateway and price a worked example.
Dify vs n8n: the real difference
Dify's own documentation calls it an open-source platform for building AI applications: agents, agentic workflows and chatbots that draw on your data and are published as a web app or reached through an API. n8n describes itself as a fair-code licensed workflow automation tool with built-in AI features. That explains the difference in emphasis.
| Dify | n8n | |
|---|---|---|
| Center | An app with a model: prompts, knowledge base, agent | A flow: trigger, steps, integrations |
| Start | A chat, form or API the user sees | A schedule, a webhook, an event in another service |
| Knowledge | Built-in Knowledge section and a retrieval node | AI Agent and Basic LLM Chain nodes, the rest is assembled from nodes |
| Publishing | Web app, website embed, REST API, MCP server | A webhook endpoint |
| Observation | Logs and a dashboard with costs and activity | Execution history per workflow |
| Self-hosting | Docker Compose | Docker Compose |
The practical takeaway: Dify fits when you are building a product with a "face" (a consultant bot, a generation form, an assistant for staff). n8n fits when you need to connect services and drop a model into the middle of a chain: an email arrives, the model parses it, the result goes into a spreadsheet and a messenger.
Connecting a model through the gateway
You need a fetch_... key from the dashboard and the address https://api.zukko.pro/v1. The request format is described in the chat/completions reference.
Dify
Dify connects models through providers: under Integrations, Model Provider, you pick a provider from the catalog, click Setup and enter the key and, if needed, the address of your own endpoint. For a gateway, use the OpenAI-compatible API provider from the Dify marketplace. Then:
- Endpoint address:
https://api.zukko.pro/v1, key:fetch_.... - If the model is not listed, the Add Model button on the provider card lets you add it by hand. Use the exact ID as the name, for example
claude-sonnet-5-5. - If the form asks for a context size, take the value from the model table (1M for Claude and GPT, 128K for GLM).
- Under Default Models, assign the default model for general tasks.
Exact field names depend on the provider plugin version, so check its description in the marketplace. One caveat about the knowledge base: the Zukko documentation has no embeddings endpoint, so connect the vectorization model from another provider or run it locally. The setup is also covered in Connecting Zukko to Dify.
n8n
n8n has an OpenAI Chat Model node that works together with the AI Agent and Basic LLM Chain nodes. Two ways:
- Through OpenAI credentials. Create credentials with the
fetch_...key and, if your version has a Base URL field, set it tohttps://api.zukko.pro/v1. n8n loads the model list from the provider endpoint; if the model you need is missing, the ID can be set with an expression. - Through the HTTP Request node. The most predictable option, as it does not depend on the model node version. Method POST, address
https://api.zukko.pro/v1/chat/completions, headerAuthorization: Bearer fetch_..., JSON body:
{
"model": "deepseek-v4.1-flash",
"messages": [
{"role": "system", "content": "Classify the request: billing, access, other. Answer with one word."},
{"role": "user", "content": "{{ $json.text }}"}
],
"max_tokens": 10
}The answer is in choices[0].message.content. The OpenAI Chat Model node can switch to the Responses API; the gateway supports /v1/responses, but start with the default, Chat Completions.
Three scenarios and the choice
A consultant bot over documents. You need a knowledge base, search, an answer with a source link and a widget for the site. This is Dify territory: everything listed is in the platform, and publishing an embeddable chat takes a few clicks.
Processing incoming requests. A request arrives in the CRM, the model sets topic and urgency, a row is added to a spreadsheet, a manager gets a message. Triggers and dozens of integrations matter here, so n8n fits better.
The combination. Often the pair wins: n8n collects data from services on a schedule and calls a Dify app through its REST API, while Dify holds the prompts, the knowledge base and the answer log. Each tool does what it does best.
What a small team should take
- One person and one process: n8n, with the model inserted as a node. Fewer entities, less to maintain.
- You need a product for customers or staff with dialogue and company data: Dify.
- You do not want to host anything: both have cloud versions, see their sites for terms.
- If operations worry you: the n8n documentation recommends self-hosting for experienced users, and Dify needs Docker and at least 2 CPU cores and 4 GiB RAM per its guide. Budget time for updates and backups.
What it costs
Prices as of October 18, 2026. Scenario: 300 requests a day for 30 days, so 9,000 calls a month. Each call has 800 input tokens (instruction plus request text) and 100 output tokens.
deepseek-v4.1-flash(input 0.013, output 0.038 per 1M): 800 × 0.013 + 100 × 0.038 = 10.4 + 3.8 = 14.2 micro-dollars per call, 14.2 × 9,000 = 127,800 micro-dollars, about $0.13 a month.claude-sonnet-5-5(input 0.4, output 2 per 1M): 800 × 0.4 + 100 × 2 = 320 + 200 = 520 micro-dollars, 520 × 9,000 = 4,680,000, which is $4.68 a month.
The gap is visible, but whether a cheap model is good enough for classification is shown by a sample of your real requests. Check 50 to 100 of them, then choose. Current prices: GET https://api.zukko.pro/v1/models or the "Models" page in the dashboard. You can top up through SBP (the payment page adds an 8.5% fee on top), cryptocurrency or MasterCard; a key can have a daily and monthly dollar limit, which helps for a flow that might loop. A ready n8n example is in n8n: automation with Claude and GPT.
FAQ
What is easier for a beginner?
If the goal is a chatbot over your documents quickly, Dify is easier. If the goal is moving data between services, n8n is easier. You can try both in the cloud without installing anything.
Can I use both together?
Yes. Dify publishes apps through a REST API, and n8n can call them with an HTTP Request node. The flow stays in n8n and the model logic in Dify.
Does Claude need the Anthropic format?
No, any model can be called in the OpenAI format too. The only difference is the cache: the Claude cache-read discount is counted for the Anthropic format. For short one-off calls such as classification this does not matter.
What if I get 404 model_not_found?
Check the exact model ID against GET /v1/models. Case and dots in versions matter.
zukko
Pay 25×
less
for Claude Code & ChatGPT
One fetch_* key and base URL api.zukko.pro — for Cursor, Claude Code, Codex, and any SDK.
Related articles
- Langflow or LangChain: a visual builder versus codeLangflow builds an app on a canvas, LangChain is written in code. Who each approach suits, and how to connect the gateway in both.
- GPT-6 Astra or Claude Fable 5.1: Two Top Models by Price and IndexTwo premium models with the same intelligence index and different Zukko prices. We price a single request and an agent session with cache, and explain how to choose on your own data.
- Qwen or DeepSeek via API: Price, Context and Intelligence IndexFour models, one task and an honest calculation: what a run costs on Qwen 3.8 Max and Flash versus DeepSeek V4 Pro and V4.1 Flash.
- Gemini API vs Vertex API: the difference and which one to pickGoogle offers two doors to Gemini: an AI Studio key or a Google Cloud project. We compare them and show a third route through a gateway.