Skip to content

n8n Tutorial for Beginners: Build Your First Real Workflow

A beginner n8n tutorial: build a real workflow that captures a form lead, emails them and logs them in Google Sheets, step by step, plus cloud vs self-host.

By Yotam DahanUpdated 8 min readAutomation and agents

On this page
  1. What you need before you start
  2. Cloud or self-hosted: which to use for this tutorial
  3. Step 1: Create the workflow
  4. Step 2: Add the form trigger
  5. Step 3: Send yourself a test lead
  6. Step 4: Save the lead to Google Sheets
  7. Step 5: Email the lead
  8. Step 6: Test the whole workflow
  9. Step 7: Publish and share the production form
  10. Common mistakes and how to fix them
  11. Before you share the link
  12. What to do next

n8n is a workflow automation tool where you connect building blocks, called nodes, on a canvas: a trigger starts the workflow, and each node after it does one job. In this tutorial you build one real workflow without code: a contact form that saves every lead to Google Sheets and emails them a thank-you.

Here is what you are about to build:

Your first n8n workflow
  1. Form

    A visitor leaves their name, email and message

  2. Google Sheets

    The lead is saved as a new row

  3. Gmail

    The lead gets a personal thank-you email

What you need before you start

  • An n8n account. The n8n Cloud trial gives you 14 days of Pro features, and n8n's pricing page says no credit card is needed.
  • A Google account with Gmail and Google Sheets.
  • A new Google Sheet called "Website leads", with these four headers in row 1: Date, Name, Email, Message.
The n8n Cloud trial, in numbers
14

days of Pro features

1,000

executions included

5

runs at the same time (concurrent executions)

180

seconds maximum per run

From the n8n pricing page and trial docs, checked October 18, 2026.

Cloud or self-hosted: which to use for this tutorial

n8n also runs on your own computer or server for free. For a first workflow, the cloud is easier, for two reasons you will feel straight away:

n8n Cloud trialSelf-hosted on your computer
SetupSign up in the browserInstall Docker, then run one command
Google sign-inOne click with "Sign in with Google"Create your own OAuth app in Google Cloud Console
Visitors can reach your formYesNo
CostFree for 14 days, then a paid planFree software, plus any server you rent
Good for this tutorialYesPartial

On n8n Cloud, Google's nodes use managed sign-in, so you click a button instead of creating a Google Cloud project. Self-hosted instances don't get that shortcut.

If you still want to self-host, n8n's one-line setup needs Docker Desktop installed and running. On a Mac or Linux, open Terminal and run:

Terminal
curl -fsSL https://get.n8n.io | sh

Then open http://localhost:5678 in your browser. On Windows, PowerShell can't run this script: run it inside WSL (Windows Subsystem for Linux) with Docker Desktop's WSL 2 integration turned on.

Step 1: Create the workflow

  1. Log in to n8n and select Personal in the left menu.
  2. Select Create workflow at the top right. The canvas opens.
  3. Rename it by selecting the name at the top. Call it "Website leads".

Step 2: Add the form trigger

  1. Select Add first step, search for "form" and choose the n8n Form trigger.
  2. Form Title: type "Get a quote". It appears as the heading of your form.
  3. Form Elements: add three fields. Name (type Text, field name name, required), Email (type Email, field name email, required) and Message (type Textarea, field name message).
  4. Respond When: choose Form Is Submitted, so visitors see a thank-you right away.
  5. Options: add Ignore Bots and turn it on, then add Append n8n Attribution and turn it off.
  6. Rename the node "Lead form" by selecting its name at the top left. You will refer to it by name in Step 5.

Step 3: Send yourself a test lead

Select Execute workflow. n8n opens the form on its Test URL; fill it in with your own details and submit.

Back in the editor, open the Lead form node. The output shows your name, email and message, plus a submittedAt timestamp that n8n adds for you.

Step 4: Save the lead to Google Sheets

  1. Select the + after Lead form, search for "Google Sheets" and choose the Append Row action.
  2. Connect your account: create a new credential and select Sign in with Google.
  3. Pick the file: choose "Website leads" under Document and the first sheet under Sheet.
  4. Map the columns: set Mapping Column Mode to Map Each Column Manually, then drag submittedAt, name, email and message from the input panel on the left into Date, Name, Email and Message.
  5. Select Execute step and check your sheet. A new row should be there.

When you drop a field in, n8n writes an expression for you, such as {{ $json.email }}. An expression is a placeholder that n8n swaps for the real value on every run.

Step 5: Email the lead

  1. Select the + after Google Sheets, search for "Gmail" and choose the Send a message action.
  2. Connect your account with Sign in with Google, as before.
  3. To: the lead's address. Because the previous node is now Google Sheets, point to the form node by name: {{ $('Lead form').item.json.email }}. If you type it rather than drag it, set the field to Expression mode first.
  4. Subject and Message: paste the first line below into Subject and the rest into Message, then change the details.
  5. Options: add Append n8n attribution and turn it off. Add BCC with your own address if you want a copy of every email.
Code
Thanks {{ $('Lead form').item.json.name }}, we got your message

Hi {{ $('Lead form').item.json.name }},

Thanks for getting in touch. We read every message and will reply within one working day.

[YOUR NAME]

Step 6: Test the whole workflow

Select Execute workflow again and submit the form with a second test lead. Check two things: a new row in the sheet, and the thank-you email in that inbox.

If either is missing, open each node on the canvas. The step with a red warning shows the error, and the output panel shows exactly what data it received.

Step 7: Publish and share the production form

  1. Copy the Production URL: open Lead form and switch the URL view at the top of the node from Test URL to Production URL.
  2. Select Publish in the canvas header (or press Shift + P), give the version a name and confirm. The publishing docs explain the button's states.
  3. Share it: put the production link behind a "Get a quote" button on your website or in your social bio.

From now on, every real submission is one production execution. Edits you make later stay in draft until you publish again.

Optional: let n8n Assistant build it for you

n8n Cloud includes n8n Assistant, an AI helper in preview that builds workflows from a description, with a monthly allowance of Assistant credits. Once you have built this workflow by hand, try describing the next one instead:

Ask n8n Assistant to build a lead workflow
Build a workflow that starts with an n8n Form trigger titled "[FORM TITLE]" with three required fields: name (text), email (email) and message (textarea).
Append each submission as a new row to the Google Sheet "[SHEET NAME]" with the columns Date, Name, Email and Message.
Then send the person a thank-you email from Gmail that uses their first name and says we will reply within [TIME].
Turn off the n8n attribution on the form and in the email.

Common mistakes and how to fix them

What you seeWhy it happensFix
The form works in testing but not on your siteYou shared the Test URL, or the workflow isn't publishedUse the Production URL and select Publish
Your latest changes don't show up for visitorsVisitors get the published versionPublish again after you edit
A column stays empty in the sheetThe row 1 header is spelled differently, or the field isn't mappedFix the header, then check the mapping
The email goes to the wrong address or noneThe expression points at the wrong nodeReference the form node by name, as in Step 5
Emails end with "This email was sent automatically with n8n"That attribution is on by defaultTurn off Append n8n attribution
Empty submissions arrive from nowhereBots and link previews open the formTurn on Ignore Bots in the form options
Self-hosted: Gmail says 401 unauthorizedThe Gmail API isn't enabled in your Google Cloud projectEnable it under APIs & Services, then Library
Self-hosted: Google Sheets won't connectSheets also needs the Google Drive APIEnable both APIs in the same project

0 of 5 done

Once this runs, the natural upgrade is an AI step that drafts a personal reply for you to approve, which the n8n AI agent tutorial covers. Before you pick a paid plan, check what n8n really costs at your volume.

Quick check0 of 2 correct

Your form works when you test it, but submissions from your website never arrive. What is the most likely cause?

Do your test runs in the editor count toward your n8n plan's execution limit?

What to do next

Publish this workflow today and send yourself a real submission from your phone. Then add one improvement at a time, such as a reply you approve before it is sent, or a follow-up after three days.

If you would like a guided path through lead and email automations like this one, our AI automation course is in early access. To see how n8n compares with the alternatives first, read n8n vs Zapier vs Make.

5 workflows to build next in n8n, node by node

Five follow-up builds for your lead workflow, from an approval step to a weekly digest, each with the exact nodes, settings and a test to run.

Enter your email and the full section opens right here. You also get a free lesson from the course.

No spam. One click to unsubscribe. We use your email to send you the course and AI tips.

Frequently asked questions

Is n8n hard to learn if I don't code?

The basics are not: you connect nodes and drag fields from one step to the next, exactly as in this tutorial. Expressions and the way data moves between nodes take a few workflows to feel natural.

Can I use n8n without Google?

Yes. n8n has built-in data tables for storing rows and a Send Email node that works with any email account that supports SMTP, so you can swap out Google Sheets and Gmail.

Where does n8n keep my form submissions?

In your Google Sheet, and in the execution log of each run. On n8n Cloud the log is kept for a limited time that depends on your plan: 7 days on Starter and 30 days on Pro.

Can I embed the n8n form on my website?

The form trigger gives you a hosted page, so the simplest route is a button that links to its production URL. You can restyle it with custom CSS in the node options, prefill fields with URL parameters, or send your own website form to a Webhook node instead.

What happens to my workflows when the n8n Cloud trial ends?

If you don't upgrade, the trial expires and n8n deletes the workspace, but you can still download your workflows for 90 days. To be safe, download them before the trial ends.

Keep reading