Hosto

Sign In

12 Practical n8n Workflow Examples You Can Build Today

By Tushar Khatri

Clean wooden desk by a window with an open laptop, coffee mug, and notepad

Most people install n8n, stare at the blank canvas, and freeze. The tool can connect almost anything to almost anything else, which is exactly why it is hard to know where to start. The fastest way past that is to copy proven patterns.

This guide walks through 12 practical n8n workflow examples, ordered roughly from beginner to intermediate. For each one you get the problem it solves, the exact node wiring using real n8n node names, and a difficulty tag. Along the way we will be honest about which of these use cases quietly burn through executions, because that detail decides whether cloud pricing or a flat-rate server makes sense for you. If you want the deeper pricing comparison, see n8n vs Zapier vs Make.

1. Daily RSS Digest to Email or Slack

Difficulty: Beginner

The problem: you follow a dozen blogs and newsletters, and checking them individually eats your morning.

The wiring: a Schedule Trigger fires every morning at 7 a.m. It connects to one or more RSS Read nodes, one per feed. A Merge node combines the feeds into a single list, and a Code node sorts items by date and formats them into a clean HTML or Markdown digest. Finally, a Gmail node sends the digest to your inbox, or a Slack node posts it to a channel.

This is the classic first workflow. It runs once a day, so it costs almost nothing in executions, and it teaches you triggers, data merging, and formatting in one build.

2. Form Submission to CRM Row Plus Notification

Difficulty: Beginner

The problem: leads from your website contact form land in an inbox and get lost.

The wiring: a Webhook node receives the form POST from your site. A Code node normalizes the fields, trimming whitespace and lowercasing the email. An Airtable node (or Google Sheets if your CRM is a spreadsheet) creates the record. The workflow then branches: a Slack node pings your sales channel with the lead details, and a Gmail node sends the visitor an instant confirmation.

Because this workflow only runs when someone actually submits the form, it is event-driven and cheap. It is also the template for almost every "capture and route" automation you will build later.

3. Website Uptime Monitor with Telegram Alert

Difficulty: Beginner

The problem: you find out your site is down when a customer tells you, which is the worst possible way.

The wiring: a Schedule Trigger runs every five minutes. An HTTP Request node calls your site's URL with a short timeout. An IF node checks whether the status code is 200. If the check fails, a Telegram node sends you an alert with the URL and the error. You can add a second IF branch to log every result to Google Sheets for a simple uptime history.

Here is the honest part: a five-minute check is 288 executions per day, per site. Monitor five sites and you are past 43,000 runs a month. On per-execution cloud pricing that stings. On a flat-rate self-hosted instance it costs nothing extra, which is why monitors are the poster child for how to self-host n8n.

4. Social Post Scheduler from a Google Sheet

Difficulty: Beginner

The problem: you batch-write social posts on Sunday, then forget to publish them all week.

The wiring: a Schedule Trigger runs every hour. A Google Sheets node reads rows where the status column says "queued" and the publish time has passed. An IF node filters out anything not yet due. For each due row, an HTTP Request node calls the publishing API of your platform of choice (X, LinkedIn, and Mastodon all expose post endpoints). Finally, a second Google Sheets node updates the row status to "published" so it never fires twice.

The spreadsheet becomes your content calendar, and n8n becomes the intern who never forgets.

5. Email Attachment Saver to Drive or S3

Difficulty: Beginner

The problem: invoices, contracts, and reports arrive as attachments and pile up in your inbox instead of your file storage.

The wiring: a Gmail trigger watches for new emails matching a label or search query, with attachment download enabled. An IF node checks that an attachment exists and matches the file types you care about, such as PDF. A Code node builds a clean filename from the sender and date. An HTTP Request node then uploads the binary to your storage: a PUT to an S3-compatible endpoint, or a POST to the Google Drive upload API.

Once this runs for a month, searching your inbox for "that invoice from March" becomes a thing of the past.

6. Lead Enrichment on New Signup

Difficulty: Intermediate

The problem: a new user signs up with just an email address, and your sales team has no idea whether it is a student or a Fortune 500 buyer.

The wiring: a Webhook node receives the signup event from your app. An HTTP Request node calls an enrichment API (Clearbit-style services, or a simple domain lookup) with the email domain. A Code node maps the response into your schema: company name, size, industry. A Switch node routes by company size, so enterprise-looking signups go to a Slack node that alerts sales immediately, while everyone else gets appended quietly to Airtable.

This is where n8n starts paying for itself: the same signal, routed differently based on what the data says.

7. Invoice and Receipt Logger to an Accounting Sheet

Difficulty: Intermediate

The problem: at tax time you spend a weekend hunting receipts across your inbox.

The wiring: a Gmail trigger watches a "receipts" label. An OpenAI node reads the email body (and attachment text if you extract it) and pulls out structured fields: vendor, amount, currency, date, and category. An IF node validates that an amount was actually found, routing failures to a Slack message for manual review. Clean records land in Google Sheets as one row per expense, ready for your accountant.

The AI extraction step is what makes this practical, because receipt emails never share a format. If you want to push this idea further, our guide to AI agent workflows covers multi-step extraction and tool use.

8. AI Summarizer for Long Emails

Difficulty: Intermediate

The problem: certain senders reliably write 1,000 words when 50 would do, and you still have to read them.

The wiring: a Gmail trigger watches for emails from specific senders or with a specific label. An IF node checks the body length, so short emails pass through untouched. Long ones go to an OpenAI node with a prompt like "Summarize in three bullets, then list any action items and deadlines." A Telegram node delivers the summary to your phone, or a Slack node drops it in your personal channel.

Start with one noisy sender. Once you trust the summaries, widen the filter.

9. Cross-Post New Blog Articles to Socials

Difficulty: Intermediate

The problem: you publish a post, then manually announce it on three platforms, slightly differently each time, usually late.

The wiring: a Schedule Trigger runs every 30 minutes. An RSS Read node fetches your blog feed. A Google Sheets node holds the list of already-posted URLs, and an IF node skips anything already logged. For genuinely new posts, an OpenAI node drafts a platform-appropriate blurb from the title and description. HTTP Request nodes then publish to each social API, and the sheet gets updated so the post never goes out twice.

The dedupe sheet is the trick most people miss. Without it, every polling run reposts your entire feed.

10. Backup Reminder and Cron Job Runner with Failure Alerts

Difficulty: Intermediate

The problem: your backups and maintenance scripts run on a cron job somewhere, and you only discover they stopped working when you need them.

The wiring: a Schedule Trigger fires nightly. An HTTP Request node calls the endpoint that kicks off your backup script, or hits a health-check URL your script pings on success. An IF node inspects the response. On success, a row is appended to Google Sheets as an audit log. On failure, a Telegram node alerts you immediately, and a second HTTP Request can retry once before giving up.

n8n effectively becomes a cron scheduler with observability, which plain crontab never gives you. Like the uptime monitor, this pattern polls on a schedule and accumulates runs around the clock, so it belongs on infrastructure with flat pricing.

11. Support Ticket Auto-Tagging with AI

Difficulty: Intermediate

The problem: every incoming support ticket needs a human to read it just to decide who should read it.

The wiring: a Webhook node receives new tickets from your help desk or contact form. An AI Agent node (or a plain OpenAI node for simpler cases) classifies the ticket into categories like billing, bug, or feature request, and assigns an urgency level. A Switch node routes on the category: billing issues go to a Slack finance channel, bugs get logged in Notion with the AI's summary attached, and urgent items trigger a direct Telegram ping to the on-call person.

Keep the category list short at first, five options at most. Classification accuracy drops as the label set grows, and a misrouted ticket is worse than an untagged one.

12. Competitor Price Watcher

Difficulty: Intermediate

The problem: a competitor drops their price on Tuesday and you find out from a churned customer on Friday.

The wiring: a Schedule Trigger runs every few hours. An HTTP Request node fetches the competitor's pricing page or product API. A Code node parses out the price, whether from JSON or scraped HTML. A Google Sheets node stores the latest known price, and an IF node compares old versus new. When the price changes, a Telegram node alerts you with both values, and the sheet gets updated as the new baseline.

Watch several competitors every two hours and, like the uptime monitor, this becomes a constant background hum of executions. Watchers and monitors are precisely the workloads where per-run pricing punishes you and flat-rate hosting does not.

Which of These Should You Build First?

Start with the RSS digest or the form-to-CRM flow. Both are forgiving, teach the core node patterns, and produce something useful on day one. Then graduate to a monitor or watcher, because those introduce state, deduplication, and alerting, the skills every serious workflow needs.

One theme runs through this list: the highest-value workflows, monitors, watchers, and schedulers, are the ones that run constantly. On execution-billed platforms they are the first thing you turn off to save money. On a flat-rate managed instance from Hosto they just run, every five minutes, forever, for the same monthly price. If you would rather not babysit a server yourself, Hosto handles updates, backups, and uptime while you keep unlimited executions.

FAQ

How many workflows can n8n handle at once?

There is no fixed workflow limit in n8n itself. Practical capacity depends on your instance's CPU and memory and on how often each workflow runs. A modest server comfortably handles dozens of scheduled workflows; heavy AI steps and large payloads are what demand more resources, not the workflow count.

Do I need to know how to code to build these examples?

No. Every example here can be wired visually, and the Code node appears only for small formatting or parsing steps, usually a few lines you can adapt from templates or ask an AI assistant to write. Knowing basic JavaScript helps you move faster, but it is not a prerequisite.

Are polling workflows like uptime monitors expensive to run?

They can be, depending on where you run them. A five-minute check is roughly 8,600 executions per month per site, so per-execution pricing adds up quickly. On self-hosted or flat-rate managed n8n, executions are unlimited, which is why monitoring and watching workloads almost always favor that model. See our n8n vs Zapier vs Make comparison for the full breakdown.

Host it without the ops.

WordPress, WooCommerce, static sites, and dedicated n8n VMs. Same price at renewal, live in minutes.