n8n Tutorial for Beginners: Step-by-Step Guide (2026)

n8n (pronounced “n-eight-n”) is one of the fastest-growing workflow automation tools on the market — and unlike most competitors, it’s open-source. That means you can self-host it for free, customize it endlessly, and never worry about per-task pricing. But getting started can feel intimidating if you’ve never built a workflow before.

This tutorial walks you through everything from installation to your first automation. By the end, you’ll have a working n8n workflow you built yourself — and a clear roadmap for what to learn next.

What Is n8n? (And Why It’s Different)

n8n is a fair-code workflow automation platform that connects apps and services together. Think of it as an open-source alternative to Zapier or Make.com — but with a few key differences:

  • Self-hosted option: Run n8n on your own server for free. No per-task pricing, no usage limits.
  • 400+ integrations: Google Sheets, Slack, Gmail, Notion, OpenAI, Airtable, and hundreds more.
  • Visual editor: Drag-and-drop nodes to build complex workflows — no code required.
  • JavaScript support: Add custom logic with code nodes when you need more power.
  • Community nodes: Hundreds of community-built integrations beyond the official catalog.

The big difference? With Zapier, you pay per task and your automations live on their servers. With n8n, you can own the entire stack — the code, the data, and the execution environment.

Step 1: How to Install n8n (3 Options)

You have three main ways to get n8n running. Pick the one that fits your comfort level.

Option A: n8n Cloud (Easiest)

Sign up at n8n.cloud. You’ll get a hosted instance in minutes — no server setup required. Plans start at €20/month, and you get 2,500 workflow executions included. This is the fastest way to start, and you can always migrate to self-hosted later.

Option B: Docker (Recommended for Self-Hosting)

If you have Docker installed, run this single command in your terminal:

docker run -it --rm \
  --name n8n \
  -p 5678:5678 \
  -v ~/.n8n:/home/node/.n8n \
  n8nio/n8n

Then open http://localhost:5678 in your browser. That’s it — n8n is running locally. The -v flag persists your workflows even if the container stops, so your work is saved.

Option C: npm (For Developers)

If you have Node.js installed, install n8n globally:

npm install -g n8n
n8n start

This requires Node.js 18 or newer. Same URL after starting: http://localhost:5678.

Step 2: The n8n Interface — A Quick Tour

When you first open n8n, you’ll see the main dashboard. Here’s what matters:

  • Workflows panel (left): Your saved workflows. Create folders to organize them.
  • Canvas (center): Where you build workflows by dragging nodes and connecting them.
  • Node panel (right sidebar, opens when you click “Add Node”): Search through 400+ integrations. Trigger nodes start workflows; action nodes do things.
  • Execute Workflow button (top-right): Runs your workflow. You’ll use this constantly while testing.
  • Execution history: Shows every run, including errors. Essential for debugging.

Spend 5 minutes clicking around. The interface is intuitive once you understand the core concept: triggers start workflows, nodes process data, and connections pass data between nodes.

Step 3: Your First Workflow — Google Sheets to Slack

Let’s build something useful: a workflow that watches a Google Sheet for new rows and sends a Slack message when one appears. This is a real automation people use daily.

3.1 Add the Trigger

Click Add Node → search “Google Sheets” → select the Google Sheets Trigger node. Choose the event “On Row Added”. You’ll need to authenticate with your Google account — click “Connect Account” and follow the OAuth flow.

Once connected, select your spreadsheet and sheet name. Click Execute Node to test. You should see sample row data appear in the output panel.

3.2 Add the Action

Click the + icon below the Google Sheets node → search “Slack” → select Slack → choose “Send Message”. Authenticate with Slack, pick a channel, and craft your message.

Here’s the key concept: you can pull data from previous nodes using expressions. Click inside the message field, then click the expression icon (the fx button). Type something like:

New entry added: {{ $json.Name }} — {{ $json.Email }}

The {{ $json.FieldName }} syntax pulls values from the previous node’s output. If your sheet has columns “Name” and “Email”, those values will appear in the Slack message.

3.3 Test and Save

Click Execute Workflow. If everything works, you’ll see a green checkmark and a Slack message will appear in your channel. If there’s an error, click the node showing red to see what went wrong — n8n’s error messages are usually helpful.

Click Save (top-right) and toggle the workflow to Active. Your automation is now live.

Step 4: Understanding n8n Nodes and Data Flow

Every n8n workflow follows the same pattern:

  1. Trigger node — waits for an event (new email, webhook, schedule)
  2. Data flows through nodes — each node receives JSON data, processes it, and passes output forward
  3. Branching and conditions — use IF nodes to split workflows based on data values
  4. Final action node — sends data somewhere (Slack, email, database, API)

The most important skill in n8n is understanding how data moves between nodes. When you click any node, the output panel shows exactly what JSON it produces. This is your debugging superpower.

Step 5: 3 Common Beginner Mistakes (and How to Avoid Them)

Mistake 1: Not Testing Each Node Individually

Don’t build a 10-node workflow and hit Execute. Test one node at a time using the “Execute Node” button (the play icon on each node). This isolates problems and saves hours of debugging.

Mistake 2: Forgetting to Set the Timezone

If you’re using Schedule triggers (like “run every day at 9 AM”), n8n defaults to UTC. Go to Settings → Timezone and set your local timezone. Otherwise your workflows will fire at the wrong time.

Mistake 3: Not Using the $json Inspector

When writing expressions, you can click the “JSON” tab in the output panel to see the exact data structure. Use this to get field names right — guessing column names is the #1 cause of broken workflows.

What to Learn Next

Once you’ve built your first workflow, here’s a natural progression:

  • Webhooks: Build workflows triggered by external services sending data to a URL.
  • Error handling: Use the Error Trigger node to catch failures and alert you (Slack, email).
  • Code nodes: Write custom JavaScript to transform data when no built-in node does what you need.
  • Sub-workflows: Call one workflow from another using the Execute Workflow node — great for reusable logic.
  • Community nodes: Explore the community node library for integrations like Notion, Airtable, and hundreds more.

If you’re comparing n8n to other tools, check our side-by-side comparisons: n8n vs Zapier and n8n vs Make.com for the full breakdown.

Frequently Asked Questions

Bottom Line

n8n is the best option if you want powerful automation without per-task pricing. The self-hosted version gives you unlimited workflows for free — something Zapier and Make.com can’t match. The learning curve is slightly steeper than Zapier but shallower than raw code, and the visual editor makes it accessible even if you’ve never automated anything before.

Start with the Docker install, build the Google Sheets-to-Slack workflow from Step 3, and you’ll understand 80% of what you need within an hour. The remaining 20% comes with practice — and n8n’s active community has your back when you get stuck.

Scroll to Top