N8nGetting Started

Getting Started with n8n

This guide will walk you through installing n8n, understanding the interface, and creating your first workflow. By the end, you'll have a working n8n instance and a functional automation.

8 min read

Getting Started with n8n

This guide will walk you through installing n8n, understanding the interface, and creating your first workflow. By the end, you'll have a working n8n instance and a functional automation.

Table of Contents

  1. Installation Options
  2. First Launch
  3. Understanding the Interface
  4. Your First Workflow
  5. Working with Data
  6. Testing and Debugging
  7. Next Steps

Installation Options

Option 1: Docker (Recommended for Quick Start)

Prerequisites:

  • Docker installed on your machine
  • 2GB RAM minimum

Basic Installation:

With Data Persistence:

With Docker Compose (Production):

Option 2: npm (For Development)

Prerequisites:

  • Node.js 16.x or higher
  • npm or pnpm

Option 3: Desktop App

Download from n8n.io/download for:

  • Windows
  • macOS
  • Linux

Option 4: n8n Cloud

Sign up at n8n.io/cloud for:

  • Managed hosting
  • Automatic updates
  • Scaling
  • Team features

First Launch

  1. Access n8n:

    • Open browser to http://localhost:5678
    • You'll see the n8n welcome screen
  2. Set Up Your Account:

    • Create owner account credentials
    • Set up basic settings
    • Choose data collection preferences
  3. Initial Configuration:


Understanding the Interface

Main Components

1. Workflow Canvas

The central area where you build workflows by adding and connecting nodes.

2. Node Panel (Left Sidebar)

  • Trigger Nodes: Start workflows (schedule, webhook, manual)
  • Action Nodes: Perform operations (HTTP, database, apps)
  • All Nodes: Search all available nodes

3. Workflow Controls (Top Bar)

  • Execute Workflow: Run manually
  • Save: Save workflow
  • Settings: Workflow configuration
  • Active: Toggle workflow on/off

4. Node Properties (Right Sidebar)

Configure selected node:

  • Parameters
  • Credentials
  • Settings
  • Notes

5. Execution Panel (Bottom)

View execution results:

  • Input data
  • Output data
  • Execution time
  • Error messages

Navigation Shortcuts

Action Shortcut
Execute workflow Ctrl/Cmd + Enter
Save workflow Ctrl/Cmd + S
Delete node Delete/Backspace
Duplicate node Ctrl/Cmd + D
Search nodes Ctrl/Cmd + K
Zoom in Ctrl/Cmd +
Zoom out Ctrl/Cmd -

Your First Workflow

Let's build a simple workflow that fetches data from an API and processes it.

Example: Daily Weather Report

Goal: Get weather data every morning and send to Slack/email.

Step 1: Add a Trigger Node

  1. Click on canvas
  2. Select "Schedule Trigger"
  3. Configure:
    • Trigger Interval: Days
    • Days Between Triggers: 1
    • Trigger Time: 08:00

Step 2: Add HTTP Request Node

  1. Click "+" after Schedule node
  2. Search for "HTTP Request"
  3. Configure:

Step 3: Add Code Node for Formatting

  1. Add "Code" node
  2. Use JavaScript to format the data:

Step 4: Test the Workflow

  1. Click "Execute Workflow" button
  2. Check each node's output in the execution panel
  3. Verify data flows correctly

Step 5: Save and Activate

  1. Click "Save" and name your workflow
  2. Toggle "Active" to enable scheduled execution

Working with Data

Understanding Data Flow

n8n passes data between nodes as items (array of JSON objects).

Example data structure:

Accessing Data with Expressions

Current node input:

Specific node output:

Current item index:

All items:

Environment variables:

Date/time functions:

Common Data Operations

Filter Items (IF Node)

Transform Data (Set Node)

Map fields to new structure:

  • newField: {{ $json.oldField }}
  • fullName: {{ $json.firstName }} {{ $json.lastName }}
  • isActive: {{ $json.status === 'active' }}

Aggregate Data (Aggregate Node)

  • Count items
  • Sum values
  • Group by field

Testing and Debugging

Manual Testing

  1. Execute Workflow: Click "Execute Workflow" button
  2. Execute Node: Click "Execute Node" on individual nodes
  3. Use Test Data: Create sample input in Code nodes

Inspect Data

  1. Click on any node after execution
  2. View Input and Output tabs
  3. Inspect JSON structure
  4. Copy data for testing

Common Issues

Issue: "No input data"

Solution: Ensure previous node executed successfully

Issue: "Expression error"

Solution:

  • Check syntax: {{ $json.field }}
  • Verify field exists in data
  • Use JSON view to see available fields

Issue: Credentials not working

Solution:

  • Re-create credential
  • Check API key permissions
  • Test in standalone HTTP client first

Issue: Workflow not triggering

Solution:

  • Ensure workflow is "Active"
  • Check trigger configuration
  • Review execution logs

Execution History

  1. Go to Executions (left sidebar)
  2. View all workflow runs
  3. Click to see detailed execution
  4. Debug failed runs

Working with Credentials

Adding Credentials

  1. Go to Credentials (left sidebar)
  2. Click "Create New"
  3. Select credential type
  4. Fill in required fields:
    • API keys
    • OAuth2 (automatic flow)
    • Username/password
    • Custom auth headers

Using Credentials in Nodes

  1. Select node requiring authentication
  2. Click "Credential to connect with"
  3. Choose existing or create new
  4. Test connection

Best Practices

  • Never hardcode secrets in workflows
  • Use environment variables for sensitive data
  • Separate credentials for dev/staging/prod
  • Regular rotation of API keys

Environment Variables

Setting Variables

Docker:

Docker Compose:

Local:

Using in Workflows


Workflow Settings

Access via Workflow > Settings:

  • Error Workflow: Workflow to run on errors
  • Timezone: Workflow execution timezone
  • Save Data: Success/error execution data retention
  • Timeout: Maximum execution time
  • Tags: Organize workflows

Next Steps

Recommended Learning Path

  1. ✅ Complete this getting started guide
  2. 📖 Read Best Practices
  3. 🎯 Explore Use Cases for your industry
  4. 🎓 Complete Tutorial 1: First n8n Workflow
  5. 🚀 Build your own automation project
  6. 🎓 Complete Tutorial 2: Data Pipeline Automation

Key Concepts to Master

  • Node connections and data flow
  • Expressions for dynamic data
  • Error handling strategies
  • Credentials management
  • Webhook triggers
  • Database operations
  • Code nodes for custom logic

Common Next Projects

  • Slack notification workflows
  • Database sync automations
  • API integration pipelines
  • Scheduled reporting workflows
  • Event-driven webhooks

Quick Reference

Essential Nodes

Node Purpose Common Use
Schedule Trigger Cron scheduling Daily/weekly tasks
Webhook HTTP endpoint Receive external events
HTTP Request API calls Fetch/send data
Set Transform data Map fields
IF Conditional logic Branch workflows
Code Custom JS/Python Complex transformations
PostgreSQL Database ops Query/insert data
Email Send emails Notifications
Slack Slack integration Team notifications

Helpful Resources


Troubleshooting

Can't Access UI

Performance Issues

  • Reduce execution data retention
  • Use Split In Batches for large datasets
  • Optimize database queries
  • Increase Docker memory limit

Getting Help

  1. Check documentation
  2. Search community forum
  3. Review GitHub issues
  4. Ask in community Slack/Discord

Ready to build real workflows? Head to Tutorial 1 for a hands-on project!

Need help with production deployment? Check out Best Practices for scaling and security recommendations.

Stay in the loop

Get weekly insights on data engineering, analytics, and AI—delivered straight to your inbox.

No spam. Unsubscribe anytime.