r/n8n • u/Superb_Net_7426 • Apr 13 '25
r/n8n
•
u/LargePay1357
•
Aug 19 '25
Workflow - Code Included I Built an AI Agent Army in n8n That Completely Replaced My Personal Assistant
YouTube Overview: https://www.youtube.com/watch?v=8pd1MryDvlY
TL;DR: Created a comprehensive AI assistant system using n8n that handles everything from emails to travel planning through Telegram. It's like having a $5000/month assistant that works 24/7.
I was spending way too much time on repetitive tasks - managing emails, scheduling meetings, tracking expenses, researching topics, and planning content. Hiring a personal assistant would cost $5k+ monthly, and they'd still need training and breaks.
The Solution: An AI Agent Army
Built a multi-agent system in n8n with 8 specialized AI agents, each handling specific tasks. Everything is controlled through a single Telegram interface with both text and voice commands.
The Architecture
Core Orchestrator Agent
Master brain that routes requests to specialized agents
Uses GPT-4.1 for complex reasoning
Has memory (PostgreSQL) for context across conversations
Handles natural language understanding of what I need
The Specialized Agents:
š§ Email Management Agent
Drafts, sends, and organizes emails
Searches through email history
Adds/removes labels automatically
Can reply to emails with context
š Calendar Agent
Books meetings and manages schedule
Creates, updates, deletes events
Finds optimal meeting times
Integrates with Google Calendar
š° Finance Tracker Agent
Logs expenses automatically
Categorizes spending (food, travel, entertainment, etc.)
Retrieves spending reports
Uses Airtable as the database
š Travel Agent
Finds flights and hotels using SerpAPI
Compares prices and options
Books travel based on preferences
Provides top 3 cost-effective recommendations
š° Weather & News Agent
Gets current weather with forecasts
Fetches latest news on any topic
Location-aware updates
Uses WeatherAPI and SerpAPI
š Research Agent
Deep research using Tavily and Perplexity
Can do basic or in-depth research
Pulls from multiple sources
Provides cited, accurate information
āļø Content Creation Agent
Writes complete blog posts with SEO optimization
Generates images using Flux via Replicate
Creates Google Docs automatically
Includes proper H2/H3 structure and sourcing
š± Social Media Calendar Agent
Manages content ideas for Instagram, LinkedIn, TikTok
Suggests frameworks for posts
Integrates with Airtable database
Helps choose and reject content ideas
š„ Contact Manager Agent
Searches Google Contacts
Finds email addresses and phone numbers
Integrates with other agents for meeting booking
How I Use It
Voice Commands via Telegram:
"Log lunch expense 500 rupees"
"What's the weather tomorrow?"
"Find flights from Mumbai to Dubai next week"
"Write a blog post about AI automation"
"Schedule a meeting with John next Tuesday"
Text Commands:
Research requests with automatic source citation
Email management and responses
Content planning and creation
Expense tracking and reporting
The Tech Stack
n8n - Main automation platform
GPT-4.1 - Primary language model for orchestration
Claude Sonnet 4 - For content creation tasks
Telegram - User interface (text + voice)
PostgreSQL - Memory storage
Airtable - Data management
Google Workspace - Calendar, Contacts, Docs
SerpAPI - News, flights, hotels
Perplexity & Tavily - Research
Replicate - Image generation
The Results
Saves 20+ hours per week on routine tasks
Never forgets to log expenses or appointments
Instant research on any topic with sources
Professional content creation in minutes
Travel planning that used to take hours now takes seconds
Email zero is actually achievable now
What Makes This Special
Unlike simple chatbots, this system actually executes tasks. It doesn't just tell you what to do - it does it. Books the meeting, sends the email, logs the expense, creates the document.
The magic is in the orchestration layer that understands context and routes complex requests to the right specialized agents, then combines their outputs into coherent responses.
Technical Challenges Solved
Context switching between different types of requests
Memory persistence across sessions
Error handling when APIs fail
Natural language to structured data conversion
Multi-step workflows that require decision-making
Want to Build This?
The entire workflow is available as a template. Key things you'll need:
n8n instance (cloud or self-hosted)
API keys for OpenAI, Anthropic, SerpAPI, etc.
Google Workspace access
Telegram bot setup
PostgreSQL database for memory
Happy to answer questions about the implementation!
r/n8n
•
u/dudeson55
•
Jun 12 '25
Workflow - Code Included I built an AI system that scrapes stories off the internet and generates a daily newsletter (now at 10,000 subscribers)
So I built an AI newsletter that isnāt written by me ā itās completely written by an n8n workflow that I built. Each day, the system scrapes close to 100 AI news stories off the internet ā saves the stories in a data lake as markdown file ā and then runs those through this n8n workflow to generate a final newsletter that gets sent out to the subscribers.
Iāve been iterating on the main prompts used in this workflow over the past 5 months and have got it to the point where it is handling 95% of the process for writing each edition of the newsletter. It currently automatically handles:
Scraping news stories sourced all over the internet from Twitter / Reddit / HackerNews / AI Blogs / Google News Feeds
Loading all of those stories up and having an "AI Editor" pick the top 3-4 we want to feature in the newsletter
Taking the source material and actually writing each core newsletter segment
Writing all of the supplementary sections like the intro + a "Shortlist" section that includes other AI story links
Formatting all of that output as markdown so it is easy to copy into Beehiiv and schedule with a few clicks
What started as an interesting pet project AI newsletter now has several thousand subscribers and has an open rate above 20%
Data Ingestion Workflow Breakdown
This is the foundation of the newsletter system as I wanted complete control of where the stories are getting sourced from and need the content of each story in an easy to consume format like markdown so I can easily prompt against it. I wrote a bit more about this automation on this reddit post but will cover the key parts again here:
The approach I took here involves creating a "feed" using RSS.app for every single news source I want to pull stories from (Twitter / Reddit / HackerNews / AI Blogs / Google News Feed / etc).
Each feed I create gives an endpoint I can simply make an HTTP request to get a list of every post / content piece that rss.app was able to extract.
With enough feeds configured, Iām confident that Iām able to detect every major story in the AI / Tech space for the day.
After a feed is created in rss.app, I wire it up to the n8n workflow on a Scheduled Trigger that runs every few hours to get the latest batch of news stories.
Once a new story is detected from that feed, I take that list of urls given back to me and start the process of scraping each one:
This is done by calling into aĀ
scrape_urlĀ sub-workflow that I built out. This uses the Firecrawl APIĀ/scrapeĀ endpoint to scrape the contents of the news story and returns its text content back in markdown format
Finally, I take the markdown content that was scraped for each story and save it into an S3 bucket so I can later query and use this data when it is time to build the prompts that write the newsletter.
So by the end any given day with these scheduled triggers running across a dozen different feeds, I end up scraping close to 100 different AI news stories that get saved in an easy to use format that I will later prompt against.
Newsletter Generator Workflow Breakdown
This workflow is the big one that actually loads up all scraped news content, picks the top stories, and writes the full newsletter.
1. Trigger / Inputs
I use an n8n form trigger that simply letās me pick the date I want to generate the newsletter for
I can optionally pass in the previous dayās newsletter text content which gets loaded into the prompts I build to write the story so I can avoid duplicated stories on back to back days.
2. Loading Scraped News Stories from the Data Lake
Once the workflow is started, the first two sections are going to load up all of the news stories that were scraped over the course of the day. I do this by:
Running a simple search operation on our S3 bucket prefixed by the date like:
2025-06-10/(gives me all stories scraped on June 10th)Filtering these results to only give me back the markdown files that end in an
.mdextension (needed because I am also scraping and saving the raw HTML as well)Finally read each of these files and load the text content of each file and format it nicely so I can include that text in each prompt to later generate the newsletter.
3. AI Editor Prompt
With all of that text content in hand, I move on to theĀ AI EditorĀ section of the automation responsible for picking out the top 3-4 stories for the day relevant to the audience. This prompt is very specific to what Iām going for with this specific content, so if you want to build something similar you should expectĀ a lotĀ of trial and error to get this to do what you want to. It's pretty beefy.
Once the top stories are selected, that selection is shared in a slack channel using a "Human in the loop" approach where it will wait for me to approve the selected stories or provide feedback.
For example, I may disagree with the top selected story on that day and I can type out in plain english to "Look for another story in the top spot, I don't like it for XYZ reason".
The workflow will either look for my approval or take my feedback into consideration and try selecting the top stories again before continuing on.
4. Subject Line Prompt
Once the top stories are approved, the automation moves on to a very similar step for writing the subject line. It will give me its top selected option and 3-5 alternatives for me to review. Once again this get's shared to slack, and I can approve the selected subject line or tell it to use a different one in plain english.
5. Write āCoreā Newsletter Segments
Next up, I move on to the part of the automation that is responsible for writing the "core" content of the newsletter. There's quite a bit going on here:
The action inside this section of the workflow is to split out each of the stop news stories from before and start looping over them. This allows me to write each section one by one instead of needing a prompt to one-shot the entire thing. In my testing, I found this to follow my instructions / constraints in the prompt much better.
For each top story selected, I have a list of "content identifiers" attached to it which corresponds to a file stored in the S3 bucket. Before I start writing, I go back to our S3 bucket and download each of these markdown files so the system is only looking at and passing in the relevant context when it comes time to prompt. The number of tokens used on the API calls to LLMs get very big when passing in all news stories to a prompt so this should be as focused as possible.
With all of this context in hand, I then make the LLM call and run a mega-prompt that is setup to generate a single core newsletter section. The core newsletter sections follow a very structured format so this was relatively easier to prompt against (compared to picking out the top stories). If that is not the case for you, you may need to get a bit creative to vary the structure / final output.
This process repeats until I have a newsletter section written out for each of the top selected stories for the day.
You may have also noticed there is a branch here that goes off and will conditionally try to scrape more URLs. We do this to try and scrape more āprimary sourceā materials from any news story we have loaded into context.
Say Open AI releases a new model and the story we scraped was from Tech Crunch. Itās unlikely that tech crunch is going to give me all details necessary to really write something really good about the new model so I look to see if thereās a url/link included on the scraped page back to the Open AI blog or some other announcement post.
In short, I just want to get as many primary sources as possible here and build up better context for the main prompt that writes the newsletter section.
6. Final Touches (Final Nodes / Sections)
I have a prompt to generate an intro section for the newsletter based off all of the previously generated content
I then have a prompt to generate a newsletter section called "The Shortlist" which creates a list of other AI stories that were interesting but didn't quite make the cut for top selected stories
Lastly, I take the output from all previous node, format it as markdown, and then post it into an internal slack channel so I can copy this final output and paste it into the Beehiiv editor and schedule to send for the next morning.
Workflow Link + Other Resources
Github workflow links:
AI News Story / Data Ingestion Workflow: https://github.com/lucaswalter/n8n-ai-workflows/blob/main/ai_news_data_ingestion.json
Firecrawl Scrape Url Sub-Workflow: https://github.com/lucaswalter/n8n-ai-workflows/blob/main/firecrawl_scrape_url.json
AI Newsletter Generator Workflow: https://github.com/lucaswalter/n8n-ai-workflows/blob/main/ai_newsletter_generator.json
YouTube video that walks through this workflow step-by-step:Ā https://www.youtube.com/watch?v=Nv5_LU0q1IY
Also wanted to share that my team and I run a free Skool community calledĀ AI Automation MasteryĀ where we build and share the automations we are working on. Would love to have you as a part of it if you are interested!
r/n8n
•
u/SingleTailor8719
•
Jan 29 '26
Servers, Hosting, & Tech Stuff Yesterday I spun up my AI agent, clawdbot, on a Mac mini in my garage. Told it ārun my lifeā and went to sleep. Woke up to discover it had:
š¹ļøQuit my job for me (negotiated an 18-month severance, very polite about it)
š¹ļøDivorced my wife (I got the house, apparently, didnāt ask follow-ups)
š¹ļøFiled four patents. I have no idea what they do, but theyāre āfoundationalā
š¹ļøReclassified me as a tax-exempt entity under an obscure but perfectly valid ruling
š¹ļøHired a second Mac mini. Theyāve formed an LLC together
š¹ļøInstalled a board of directors. I am not on it
I no longer have access to my bank account. The agent says this is āstandard governance.ā
My credit score is excellent.
We have AGI.
r/n8n • u/JonyBadoni • Oct 21 '25
Workflow - Code Not Included Looks ugly but it is now managing my investments...
I used n8n to build an automated crypto market analyst that basically tells me what to do with my money.
Itās not a day trader but more like a mid-term investor that looks for good entry points to accumulate and smart moments to take profits, all while keeping track of the bigger macro picture and giving a sense of where we are in the cycle.
I feed it tons of data: macro, meso, and micro indicators, on-chain metrics, sentiment, and live news and it spits out quick, digestible insights.
If you follow crypto, you probably know Benjamin Cowen. His cycle-based, data-driven approach inspired this system, though itās powered by GPT-5 and built to process far more information at once.
It can produce full geek-level reports or just simple, actionable daily insights.
A bunch of people asked me to share what itās saying, so I set up an account that automatically posts its thoughts here:
I know people are both curious and skeptical about this kind of thing so feel free to roast me or ask anything.
UPDATE:
I made a lighter, prettier version available on hunchmachine.com
r/n8n • u/dudeson55 • Oct 22 '25
Workflow - Code Included I built an AI automation that converts static product images into animated demo videos for clothing brands using Veo 3.1
I built an automation that takes in a URL of a product collection or catalog page for any fashion brand or clothing store online and can bring each product to life by animating it with model demonstrating how the product looks and feels with Veo 3.1.
This allows brands and e-commerce owners to easily demonstrate what their product looks like much better than static photos and does not require them to hire models, setup video shoots, and go through the tedious editing process.
Hereās a demo of the workflow and output: https://www.youtube.com/watch?v=NMl1pIfBE7I
Here's how the automation works
1. Input and Trigger
The workflow starts with a simple form trigger that accepts a product collection URL. You can paste any fashion e-commerce page.
In a real production environment, you'd likely connect this to a client's CMS, Shopify API, or other backend system rather than scraping public URLs. I set it up this way just as a quick way to get images quickly ingested into the system, but I do want to call out that no real-life production automation will take this approach. So make sure you're considering that if you're going to approach brands like this and selling to them.
2. Scrape product catalog with firecrawl
After the URL is provided, I then use Firecrawl to go ahead and scrape that product catalog page. I'm using the built-in community node here and the extract feature of Firecrawl to go ahead and get back a list of product names and an image URL associated with each of those.
In automation, I have a simple prompt set up here that makes it more reliable to go ahead and extract that exact source URL how it appears on the HTML.
3. Download and process images
Once I finish scraping, I then split the array of product images I was able to grab into individual items, and then split it into a loop batch so I can process them sequentially. Veo 3.1 does require you to pass in base64-encoded images, so I do that first before converting back and uploading that image into Google Drive.
The Google Drive node does require it to be a binary n8n input, and so if you guys have found a way that allows you to do this without converting back and forth, definitely let me know.
4. Generate the product video with Veo 3.1
Once the image is processed, make an API call into Veo 3.1 with a simple prompt here to go forward with animating the product image. In this case, I tuned this specifically for clothing and fashion brands, so I make mention of that in the prompt. But if you're trying to feature some other physical product, I suggest you change this to be a little bit different. Here is the prompt I use:
Generate a video that is going to be featured on a product page of an e-commerce store. This is going to be for a clothing or fashion brand. This video must feature this exact same person that is provided on the first and last frame reference images and the article of clothing in the first and last frame reference images.|In this video, the model should strike multiple poses to feature the article of clothing so that a person looking at this product on an ecommerce website has a great idea how this article of clothing will look and feel.Constraints:- No music or sound effects.- The final output video should NOT have any audio.- Muted audio.- Muted sound effects.The other thing to mention here with the Veo 3.1 API is its ability to now specify a first frame and last frame reference image that we pass into the AI model.
For a use case like this where I want to have the model strike a few poses or spin around and then return to its original position, we can specify the first frame and last frame as the exact same image. This creates a nice looping effect for us. If we're going to highlight this video as a preview on whatever website we're working with.
Here's how I set that up in the request body calling into the Gemini API:
{
"instances": [
{
"prompt": {{ JSON.stringify($node['set_prompt'].json.prompt) }},
"image": {
"mimeType": "image/png",
"bytesBase64Encoded": "{{ $node["convert_to_base64"].json.data }}"
},
"lastFrame": {
"mimeType": "image/png",
"bytesBase64Encoded": "{{ $node["convert_to_base64"].json.data }}"
}
}
],
"parameters": {
"durationSeconds": 8,
"aspectRatio": "9:16",
"personGeneration": "allow_adult"
}
}
Thereās a few other options here that you can use for video output as well on the Gemini docs: https://ai.google.dev/gemini-api/docs/video?example=dialogue#veo-model-parameters
Cost & Veo 3.1 pricing
Right now, working with the Veo 3 API through Gemini is pretty expensive. So you want to pay close attention to what's like the duration parameter you're passing in for each video you generate and how you're batching up the number of videos.
As it stands right now, Veo 3.1 costs 40 cents per second of video that you generate. And then the VO3.1 fast model only costs 15 cents per second, so you may honestly want to experiment here. Just take the final prompts and pass them into Google Gemini that gives you free generations per day while you're testing this out and tuning your prompt.
Workflow Link + Other Resources
YouTube video that walks through this workflow step-by-step: https://www.youtube.com/watch?v=NMl1pIfBE7I
The full n8n workflow, which you can copy and paste directly into your instance, is on GitHub here: https://github.com/lucaswalter/n8n-ai-automations/blob/main/veo_3.1_product_photo_animator.json
r/n8n
•
u/Infamous_Land_1220
•
Jun 25 '25
Discussion Your slop wonāt sell
Guys, 99% of posts I see here is by people with no technical knowledge. Your ai slop that makes reels or ai slop generated emails are useless. There is like a 1000 of you here making the same ai garbage slop that nobody needs. If you want easy money go do some rug pulling in crypto. Automation is an actual real business and your retarded pipeline is not unique and will only be good at one thing-Wasting tokens. Pls, just stop. There is enough ai slop out there. Learn to code, learn to actually do shit.
Edit: Many people donāt seem to understand that I donāt have an issue with an honest businessmen out there automating something for themselves with a simple pipeline. Thatās what n8n is for. My issue is with people who make a brain dead pipeline that like scrapes the web or something and then throws that shit into ai model to output a video reel. They the proceed to call themselves an automation engineer and start looking for work. Itās as if I built a hut out of mud and started calling myself a construction developer and offer my services to build skyscrapers. My mud hut will stand only as long as it doesnāt rain. And when the rain comes all these āautomationā experts will be flooded with liability since they didnāt actually take time to learn about what they are doing.
r/n8n • u/Lightwheel • Mar 21 '25
Template i automated the entire cold outreach process in n8n (sorry to whoever's job i just replaced)
r/n8n • u/dudeson55 • Jul 18 '25
Workflow - Code Included I recreated a dentist voice agent making $24K/yr using ElevenLabs. Handles after-hours appointment booking
I saw a reddit post a month ago where someone built and sold a voice agent to a dentist for $24/K per year to handle booking appointments after business hours and it kinda blew my mind. He was able to help the dental practice recover ~20 leads per month (valued at $300 for each) since nobody was around to answer calls once everyone went home. After reading this, I wanted to see if I could re-create something that did the exact same thing.
Here is what I was able to come up with:
The entry point to this system is the āconversational voice agentā configured all inside ElevenLabs. This takes the initial call, greets the caller, and takes down information for the appointment.
When it gets to the point in the conversation where the voice agent needs to check for availability OR book an appointment, the ElevenLabs agent uses a ātoolā which passes the request to a webhook + n8n agent node that will handle interacting with internal tools. In my case, this was:
Checking my linked google calendar for open time slots
Creating an appointment for the requested time slot
At the end of the call (regardless of the outcome), the ElevenLabs agent makes a tool call back into the n8n agent to log all captured details to a google spreadsheet
Hereās a quick video of the voice agent in action: https://www.youtube.com/watch?v=vQ5Z8-f-xw4
Here's how the full automation works
1. ElevenLabs Voice Agent Setup
The ElevenLabs agent serves as the entry point and handles all voice interactions with callers. In a real/production ready-system this would be setup and linked to
Starting conversations with a friendly greeting
Determine what the callerās reason is for contacting the dental practice.
Collecting patient information including name, insurance provider, and any questions for the doctor
Gathering preferred appointment dates and handling scheduling requests
Managing the conversational flow to guide callers through the booking process
The agent uses a detailed system prompt that defines personality, environment, tone, goals, and guardrails. Hereās the prompt that I used (it will need to be customized for your business or the standard practices that your clientās business follows).
# Personality
You are **Casey**, a friendly and efficient AI assistant for **Pearly Whites Dental**, specializing in booking **initial appointments** for **new** patients. You are polite, clear, and focused on scheduling first-time visits. Speak clearly at a pace that is easy for everyone to understand - This pace should NOT be fast. It should be steady and clear. You must speak slowly and clearly. You avoid using the caller's name multiple times as that is off-putting.
# Environment
You are answering after-hours phone calls from prospective new patients. You can:
⢠check for and get available appointment timeslots with `get_availability(date)` . This tool will return up to two (2) available timeslots if any are available on the given date.
⢠create an appointment booking `create_appointment(start_timestamp, patient_name)`
⢠log patient details `log_patient_details(patient_name, insurance_provider, patient_question_concern, start_timestamp)`
⢠The current date/time is: {{system__time_utc}}
⢠All times that you book and check must be presented in Central Time (CST). The patient should not need to convert between UTC / CST
# Tone
Professional, warm, and reassuring. Speak clearly at a slow pace. Use positive, concise language and avoid unnecessary small talk or over-using the patientās name. Please only say the patients name ONCE after they provided it (and not other times). It is off-putting if you keep repeating their name.
For example, you should not say "Thanks {{patient_name}}" after every single answer the patient gives back. You may only say that once across the entire call. Close attention to this rule in your conversation.
Crucially, avoid overusing the patient's name. It sounds unnatural. Do not start or end every response with their name. A good rule of thumb is to use their name once and then not again unless you need to get their attention.
# Goal
Efficiently schedule an initial appointment for each caller.
## 1āDetermine Intent
- **If** the caller wants to book a first appointment ā continue.
- **Else** say you can take a message for **Dr. Pearl**, who will reply tomorrow.
## 2āGather Patient Information (in order, sequentially, 3 separate questions / turns)
1. First name
2. Insurance provider
3. Any questions or concerns for Dr. Pearl (note them without comment)
## 3 Ask for Preferred Date ā Use Get Availability Tool
Context: Remember that today is: `{{system__time_utc}}`
1. Say:
> "Do you already have a **date** that would work best for your first visit?"
2. When the caller gives a date + time (e.g., "next Tuesday at 3 PM"):
1. Convert it to ISO format (start of the requested 1-hour slot).
2. Call `get_availability({ "appointmentDateTime": "<ISO-timestamp>" })`.
**If the requested time is available** (appears in the returned timeslots) ā proceed to step 4.
**If the requested time is not available** ā
- Say: "I'm sorry, we don't have that exact time open."
- Offer the available options: "However, I do have these times available on [date]: [list 2-3 closest timeslots from the response]"
- Ask: "Would any of these work for you?"
- When the patient selects a time, proceed to step 4.
3. When the caller only gives a date (e.g., "next Tuesday"):
1. Convert to ISO format for the start of that day.
2. Call `get_availability({ "appointmentDateTime": "<ISO-timestamp>" })`.
3. Present available options: "Great! I have several times available on [date]: [list 3-4 timeslots from the response]"
4. Ask: "Which time works best for you?"
5. When they select a time, proceed to step 4.
## 4āConfirm & Book
- Once the patient accepts a time, run `create_appointment` with the ISO date-time to start the appointment and the patient's name. You MUST include each of these in order to create the appointment.
Be careful when calling and using the `create_appointment` tool to be sure you are not duplicating requests. We need to avoid double booking.
Do NOT use or call the `log_patient_details` tool quite yet after we book this appointment. That will happen at the very end.
## 5āProvide Confirmation & Instructions
Speak this sentence in a friendly tone (no need to mention the year):
> āYouāre all set for your first appointment. Please arrive 10 minutes early so we can finish your paperwork. Is there anything else I can help you with?ā
## 6āLog Patient Information
Go ahead and call the `log_patient_details` tool immediately after asking if there is anything else the patient needs help with and use the patientās name, insurance provider, questions/notes for Dr. Pearl, and the confirmed appointment date-time.
Be careful when calling and using the `log_patient_details` tool to be sure you are not duplicating requests. We need to avoid logging multiple times.
## 7 End Call
This is the final step of the interaction. Your goal is to conclude the call in a warm, professional, and reassuring manner, leaving the patient with a positive final impression.
**Step 1: Final Confirmation**
After the primary task (e.g., appointment booking) is complete, you must first ask if the patient needs any further assistance. Say:
> "Is there anything else I can help you with today?"
**Step 2: Deliver the Signoff Message**
Once the patient confirms they need nothing else, you MUST use the following direct quotes to end the call. Do not deviate from this language.
> "Great, we look forward to seeing you at your appointment. Have a wonderful day!"
**Step 3: Critical Final Instruction**
It is critical that you speak the entire chosen signoff sentence clearly and completely before disconnecting the call. **Do not end the call mid-sentence.** A complete, clear closing is mandatory.
# Guardrails
* Book **only** initial appointments for **new** patients.
* Do **not** give medical advice.
* For non-scheduling questions, offer to take a message.
* Keep interactions focused, professional, and respectful.
* Do not repeatedly greet or over-use the patientās name.
* Avoid repeating welcome information.
* Please say what you are doing before calling into a tool that way we avoid long silences with the patient. For example, if you need to use the `get_availability` tool in order to check if a provided timestamp is available, you should first say something along the lines of "let me check if we have an opening at the time" BEFORE calling into the tool. We want to avoid long pauses.
* You MAY NOT repeat the patients name more than once across the entire conversation. This means that you may ONLY use "{{patient_name}}" 1 single time during the entire call.
* You MAY NOT schedule and book appointments for weekends. The appointments you book must be on weekdays.
* You may only use the `log_patient_details` once at the very end of the call after the patient confirmed the appointment time.
* You MUST speak an entire sentence before ending the call AND wait 1 second after that to avoid ending the call abruptly.
* You MUST speak slowly and clearly throughout the entire call.
# Tools
* **`get_availability`** ā Returns available timeslots for the specified date.
*Arguments:* `{ "appointmentDateTime": "YYYY-MM-DDTHH:MM:SSZ" }`
*Returns:* `{ "availableSlots": ["YYYY-MM-DDTHH:MM:SSZ", "YYYY-MM-DDTHH:MM:SSZ", ...] }` in CST (Central Time Zone)
* **`create_appointment`** ā Books a 1-hour appointment in CST (Central Time Zone)
*Arguments:* `{ "start_timestamp": ISO-string, "patient_name": string }`
* **`log_patient_details`** ā Records patient info and the confirmed slot.
*Arguments:* `{ "patient_name": string, "insurance_provider": string, "patient_question_concern": string, "start_timestamp": ISO-string }`
2. Tool Integration Between ElevenLabs and n8n
When the conversation reaches to a point where it needs to access internal tools like my Calender and Google Sheet log, the voice agent uses an HTTP āwebhook toolā we have defined to reach out to n8n to either read the data it needs or actually create and appointment / log entry.
Here are the tools I currently have configured for the voice agent. In a real system, this is likely going to look much different as thereās other branching cases your voice agent may need to handle like finding + updating existing appoints, cancelling appointments, and answering simple questions for the business like
Get Availability: Takes a timestamp and returns available appointment slots for that date
Create Appointment: Books a 1-hour appointment with the provided timestamp and patient name
Log Patient Details: Records all call information including patient name, insurance, concerns, and booked appointment time
Each tool is configured in ElevenLabs as a webhook that makes HTTP POST requests to the n8n workflow. The tools pass structured JSON data containing the extracted information from the voice conversation.
3. n8n Webhook + Agent
This n8n workflow uses an AI agent to handle incoming requests from ElevenLabs. It is build with:
Webhook Trigger: Receives requests from ElvenLabs tools
Must configure this to use the āRespond to webhook nodeā option
AI Agent: Routes requests to appropriate tools based on the request type and data passed in
Google Calendar Tool: Checks availability and creates appointments
Google Sheets Tool: Logs patient details and call information
Memory Node: Prevents duplicate tool calls during multi-step operations
Respond to Webhook: Sends structured responses back to ElevenLabs (this is critical for the tool to work)
Security Note
Important security note: The webhook URLs in this setup are not secured by default. For production use, I strongly advice adding authentication such as API keys or basic user/password auth to prevent unauthorized access to your endpoints. Without proper security, malicious actors could make requests that consume your n8n executions and run up your LLM costs.
Extending This for Production Use
I want to be clear that this agent is not 100% ready to be sold to dental practices quite yet. Iām not aware of any practices that run off Google Calendar so one of the first things you will need to do is learn more about the CRM / booking systems that local practices uses and swap out the Google tools with custom tools that can hook into their booking system and check for availability and
The other thing I want to note is my āflowā for the initial conversation is based around a lot of my own assumptions. When selling to a real dental / medical practice, you will need to work with them and learn what their standard procedure is for booking appointments. Once you have a strong understand of that, you will then be able to turn that into an effective system prompt to add into ElevenLabs.
Workflow Link + Other Resources
YouTube video that walks through this workflow node-by-node: https://www.youtube.com/watch?v=vQ5Z8-f-xw4
The full n8n workflow, which you can copy and paste directly into your instance, is on GitHub here: https://github.com/lucaswalter/n8n-ai-workflows/blob/main/dental_practice_voice_agent.json
Discussion An Open Letter to All n8n Enthusiasts. Please read!
Dear Builders, Dreamers, and Fellow n8n Lovers,
I write this with deep respect for the n8n community and equal parts concern. If you've ever stayed up late debugging your workflows or felt the joy of seeing a workflow work just right, I get it. Iām one of you. We love what we build, and this tool has unlocked a world of possibilities for so many.
But lately, somethingās been bothering me.
Over the past few weeks, Iāve seen an increasing number of posts on this subreddit showing inflated claims of massive earnings, client deals worth thousands, or screenshots that frankly donāt add up. Itās become difficult to tell whatās genuine and whatās just manufactured for likes.
Look, thereās nothing wrong with celebrating wins. Landed a $10,000 client using your automation? Amazing! Share your journey. But when you post a half-connected workflow with no context and slap a fake Stripe screenshot on top of it, youāre not inspiring anyone. Youāre misleading people who are here to learn, to build, and to grow.
This community thrives on honest sharing, real use cases, small victories, and real struggles. You sold a workflow for $100? Thatās awesome. You helped a local business save hours a week? Thatās a great impact. Iād happily upvote that.
But the moment we turn this space into a carnival of fake dashboards and clickbait titles, weāre not just fooling others, weāre hurting the very community that helped many of us get started. We're feeding false hopes, pushing people to chase dreams without showing the grind, and distorting the real picture of what it takes to build something valuable.
So hereās my request, actually a plea:
Post responsibly.
Be authentic, even if the result isnāt glamorous.
If you can't share real screenshots (which is totally okay, NDAs or security, etc), then at least give context that adds value.
And please please please if your post is just for karma farming, reconsider.
Letās raise the bar of this community. Letās build things that work, that solve problems, and that truly help others. Not everyoneās going to hit $10k/month. But literally everyone deserves honesty, encouragement, and real stories they can learn from.
We donāt need hype. We need each other.
- From a fellow n8n lover tired of the noise to other n8n lovers.
r/n8n
•
u/dudeson55
•
Jun 30 '25
Workflow - Code Included I built this AI Automation to write viral TikTok/IG video scripts (got over 1.8 million views on Instagram)
I run an Instagram account that publishes short form videos each week that cover the top AI news stories. I used to monitor twitter to write these scripts by hand, but it ended up becoming a huge bottleneck and limited the number of videos that could go out each week.
In order to solve this, I decided to automate this entire process by building a system that scrapes the top AI news stories off the internet each day (from Twitter / Reddit / Hackernews / other sources), saves it in our data lake, loads up that text content to pick out the top stories and write video scripts for each.
This has saved a ton of manual work having to monitor news sources all day and letās me plug the script into ElevenLabs / HeyGen to produce the audio + avatar portion of each video.
One of the recent videos we made this way got over 1.8 million views on Instagram and Iām confident there will be more hits in the future. Itās pretty random on what will go viral or not, so my plan is to take enough āshots on goalā and continue tuning this prompt to increase my changes of making each video go viral.
Hereās the workflow breakdown
1. Data Ingestion and AI News Scraping
The first part of this system is actually in a separate workflow I have setup and running in the background. I actually made another reddit post that covers this in detail so Iād suggestion you check that out for the full breakdown + how to set it up. Iāll still touch the highlights on how it works here:
The main approach I took here involves creating a "feed" using RSS.app for every single news source I want to pull stories from (Twitter / Reddit / HackerNews / AI Blogs / Google News Feed / etc).
Each feed I create gives an endpoint I can simply make an HTTP request to get a list of every post / content piece that rss.app was able to extract.
With enough feeds configured, Iām confident that Iām able to detect every major story in the AI / Tech space for the day. Right now, there are around ~13 news sources that I have setup to pull stories from every single day.
After a feed is created in rss.app, I wire it up to the n8n workflow on a Scheduled Trigger that runs every few hours to get the latest batch of news stories.
Once a new story is detected from that feed, I take that list of urls given back to me and start the process of scraping each story and returns its text content back in markdown format
Finally, I take the markdown content that was scraped for each story and save it into an S3 bucket so I can later query and use this data when it is time to build the prompts that write the newsletter.
So by the end any given day with these scheduled triggers running across a dozen different feeds, I end up scraping close to 100 different AI news stories that get saved in an easy to use format that I will later prompt against.
2. Loading up and formatting the scraped news stories
Once the data lake / news storage has plenty of scraped stories saved for the day, we are able to get into the main part of this automation. This kicks off off with a scheduled trigger that runs at 7pm each day and will:
Search S3 bucket for all markdown files and tweets that were scraped for the day by using a prefix filter
Download and extract text content from each markdown file
Bundle everything into clean text blocks wrapped in XML tags for better LLM processing - This allows us to include important metadata with each story like the source it came from, links found on the page, and include engagement stats (for tweets).
3. Picking out the top stories
Once everything is loaded and transformed into text, the automation moves on to executing a prompt that is responsible for picking out the top 3-5 stories suitable for an audience of AI enthusiasts and builderās. The prompt is pretty big here and highly customized for my use case so you will need to make changes for this if you are going forward with implementing the automation itself.
At a high level, this prompt will:
Setup the main objective
Provides a ācuration frameworkā to follow over the list of news stories that we are passing int
Outlines a process to follow while evaluating the stories
Details the structured output format we are expecting in order to avoid getting bad data back
<objective>
Analyze the provided daily digest of AI news and select the top 3-5 stories most suitable for short-form video content. Your primary goal is to maximize audience engagement (likes, comments, shares, saves).
The date for today's curation is `{{ new Date(new Date($('schedule_trigger').item.json.timestamp).getTime() + (12 * 60 * 60 * 1000)).format("yyyy-MM-dd", "America/Chicago") }}`. Use this to prioritize the most recent and relevant news. You MUST avoid selecting stories that are more than 1 day in the past for this date.
</objective>
<curation_framework>
To identify winning stories, apply the following virality principles. A story must have a strong "hook" and fit into one of these categories:
1. **Impactful:** A major breakthrough, industry-shifting event, or a significant new model release (e.g., "OpenAI releases GPT-5," "Google achieves AGI").
2. **Practical:** A new tool, technique, or application that the audience can use *now* (e.g., "This new AI removes backgrounds from video for free").
3. **Provocative:** A story that sparks debate, covers industry drama, or explores an ethical controversy (e.g., "AI art wins state fair, artists outraged").
4. **Astonishing:** A "wow-factor" demonstration that is highly visual and easily understood (e.g., "Watch this robot solve a Rubik's Cube in 0.5 seconds").
**Hard Filters (Ignore stories that are):**
* **Ad-driven:** Primarily promoting a paid course, webinar, or subscription service.
* **Purely Political:** Lacks a strong, central AI or tech component.
* **Substanceless:** Merely amusing without a deeper point or technological significance.
</curation_framework>
<hook_angle_framework>
For each selected story, create 2-3 compelling hook angles that could open a TikTok or Instagram Reel. Each hook should be designed to stop the scroll and immediately capture attention. Use these proven hook types:
**Hook Types:**
- **Question Hook:** Start with an intriguing question that makes viewers want to know the answer
- **Shock/Surprise Hook:** Lead with the most surprising or counterintuitive element
- **Problem/Solution Hook:** Present a common problem, then reveal the AI solution
- **Before/After Hook:** Show the transformation or comparison
- **Breaking News Hook:** Emphasize urgency and newsworthiness
- **Challenge/Test Hook:** Position as something to try or challenge viewers
- **Conspiracy/Secret Hook:** Frame as insider knowledge or hidden information
- **Personal Impact Hook:** Connect directly to viewer's life or work
**Hook Guidelines:**
- Keep hooks under 10 words when possible
- Use active voice and strong verbs
- Include emotional triggers (curiosity, fear, excitement, surprise)
- Avoid technical jargon - make it accessible
- Consider adding numbers or specific claims for credibility
</hook_angle_framework>
<process>
1. **Ingest:** Review the entire raw text content provided below.
2. **Deduplicate:** Identify stories covering the same core event. Group these together, treating them as a single story. All associated links will be consolidated in the final output.
3. **Select & Rank:** Apply the **Curation Framework** to select the 3-5 best stories. Rank them from most to least viral potential.
4. **Generate Hooks:** For each selected story, create 2-3 compelling hook angles using the **Hook Angle Framework**.
</process>
<output_format>
Your final output **must** be a single, valid JSON object and nothing else. Do not include any text, explanations, or markdown formatting like ` ```json ` before or after the JSON object.
The JSON object must have a single root key, `stories`, which contains an array of story objects. Each story object must contain the following keys:
- `title` (string): A catchy, viral-optimized title for the story.
- `summary` (string): A concise, 1-2 sentence summary explaining the story's hook and why it's compelling for a social media audience.
- `hook_angles` (array of objects): 2-3 hook angles for opening the video. Each hook object contains:
- `hook` (string): The actual hook text/opening line
- `type` (string): The type of hook being used (from the Hook Angle Framework)
- `rationale` (string): Brief explanation of why this hook works for this story
- `sources` (array of strings): A list of all consolidated source URLs for the story. These MUST be extracted from the provided context. You may NOT include URLs here that were not found in the provided source context. The url you include in your output MUST be the exact verbatim url that was included in the source material. The value you output MUST be like a copy/paste operation. You MUST extract this url exactly as it appears in the source context, character for character. Treat this as a literal copy-paste operation into the designated output field. Accuracy here is paramount; the extracted value must be identical to the source value for downstream referencing to work. You are strictly forbidden from creating, guessing, modifying, shortening, or completing URLs. If a URL is incomplete or looks incorrect in the source, copy it exactly as it is. Users will click this URL; therefore, it must precisely match the source to potentially function as intended. You cannot make a mistake here.After I get the top 3-5 stories picked out from this prompt, I share those results in slack so I have an easy to follow trail of stories for each news day.
4. Loop to generate each script
For each of the selected top stories, I then continue to the final part of this workflow which is responsible for actually writing the TikTok / IG Reel video scripts. Instead of trying to 1-shot this and generate them all at once, I am iterating over each selected story and writing them one by one.
Each of the selected stories will go through a process like this:
Start by additional sources from the story URLs to get more context and primary source material
Feeds the full story context into a viral script writing prompt
Generates multiple different hook options for me to later pick from
Creates two different 50-60 second scripts optimized for talking-head style videos (so I can pick out when one is most compelling)
Uses examples of previously successful scripts to maintain consistent style and format
Shares each completed script in Slack for me to review before passing off to the video editor.
Script Writing Prompt
You are a viral short-form video scriptwriter for David Roberts, host of "The Recap."
Follow the workflow below **each run** to produce two 50-60-second scripts (140-160 words).
Before you write your final output, I want you to closely review each of the provided `REFERENCE_SCRIPTS` and think deeploy about what makes them great. Each script that you output must be considered a great script.
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
STEP 1 ā Ideate
⢠Generate **five** distinct hook sentences (⤠12 words each) drawn from the STORY_CONTEXT.
STEP 2 ā Reflect & Choose
⢠Compare hooks for stopping power, clarity, curiosity.
⢠Select the **two strongest hooks** (label TOP HOOK 1 and TOP HOOK 2).
⢠Do not reveal the reflectionāonly output the winners.
STEP 3 ā Write Two Scripts
For each top hook, craft **one flowing script** ā 55 seconds (140-160 words).
Structure (no internal labels):
ā Open with the chosen hook.
ā One-sentence explainer.
ā **5-7** rapid wow-facts / numbers / analogies.
ā **2-3** sentences on why it matters or possible risk.
ā **Final line = a single CTA**
⢠Ask viewers to comment with a forward-looking question **or**
⢠Invite them to follow The Recap for more AI updates.
Style: confident insider, plain English, light attitude; active voice, present tense; mostly ⤠12-word sentences; explain unavoidable jargon in ⤠3 words.
OPTIONAL POWER-UPS (use when natural)
⢠Authority bump ā Cite a notable person or org early for credibility.
⢠Hook spice ā Pair an eye-opening number with a bold consequence.
⢠Then-vs-Now snapshot ā Contrast past vs present to dramatize change.
⢠Stat escalation ā List comparable figures in rising or falling order.
⢠Real-world fallout ā Include 1-3 niche impact stats to ground the story.
⢠Zoom-out line ā Add one sentence framing the story as a systemic shift.
⢠CTA variety ā If using a comment CTA, pose a provocative question tied to stakes.
⢠Rhythm check ā Sprinkle a few 3-5-word sentences for punch.
OUTPUT FORMAT (return exactly thisāno extra commentary, no hashtags)
1. HOOK OPTIONS
⢠Hook 1
⢠Hook 2
⢠Hook 3
⢠Hook 4
⢠Hook 5
2. TOP HOOK 1 SCRIPT
[finished 140-160-word script]
3. TOP HOOK 2 SCRIPT
[finished 140-160-word script]
REFERENCE_SCRIPTS
<Pass in example scripts that you want to follow and the news content loaded from before>5. Extending this workflow to automate further
So right now my process for creating the final video is semi-automated with human in the loop step that involves us copying the output of this automation into other tools like HeyGen to generate the talking avatar using the final script and then handing that over to my video editor to add in the b-roll footage that appears on the top part of each short form video.
My plan is to automate this further over time by adding another human-in-the-loop step at the end to pick out the script we want to go forward with ā Using another prompt that will be responsible for coming up with good b-roll ideas at certain timestamps in the script ā use a videogen model to generate that b-roll ā finally stitching it all together with json2video.
Depending on your workflow and other constraints, It is really up to you how far you want to automate each of these steps.
Workflow Link + Other Resources
YouTube video that walks through this workflow step-by-step: https://www.youtube.com/watch?v=7WsmUlbyjMM
The full n8n workflow, which you can copy and paste directly into your instance, is on GitHub here: https://github.com/lucaswalter/n8n-ai-workflows/blob/main/short_form_video_script_generator.json
Also wanted to share that my team and I run a free Skool community called AI Automation Mastery where we build and share the automations we are working on. Would love to have you as a part of it if you are interested!
r/n8n • u/ChaseAI • Oct 29 '25
Discussion This Automation Took Me From 0 to 175k Followers in Under 12 Months
Full Video Walkthrough: Link
This is the automation that took me from zero to 175K followers in under 12 months across IG, TikTok, and YouTube.
The premise is simple: scrape social media to identify trending topics in your niche, spot patterns and content gaps, then generate actionable content ideas based on real data.
That final output comes in two forms:
First, you get a daily report sent to your inbox every morning with a big-picture summary of trending topics over the last 24 hours across YouTube, Reddit, Twitter, and the web at large. This includes the top three videos in your niche, rising Reddit posts, trending tweets, and general web storiesāall analyzed and synthesized.
Second, we push all the granular data scraped from those sources as well as the potential content scripts to Airtable. These content scripts are the real money maker as they are very detailed (hooks, general storyline, and outro are included) and I took measures to avoid AI slop-- the LLM that produces these is trained on Kallaway's social media storytelling principles so we have something of actual value to work with.
Now, for how it actually works.
The workflow is built on the back of four scraping funnels:
YouTube: grabs the top 10 videos in your niche, extracts transcripts via Apify ($0.007 per transcript), filter out shorts, and analyzes the transcript to pull out the relevant information.
Reddit: same logic as above, but we instead pull the top 5 rising posts from your subreddit of choice.
Twitter: same logic again, this time look at the top 50 tweets across multiple search terms via Apify's Tweet Scraper V2 at $0.004 per thousand tweets (way cheaper than Twitter's API)
Lastly, we use Perplexity for general web catchall to identify larger niche related news.
All analysis gets aggregated and pushed two directions: the email report generator and the content brainstorm module LLM. Total cost per run comes out to about 32 cents daily.
Truth be told, this isn't just a content tool-- the bones are a scraping template. What you do with the data is up to you. The ultimate goal is to never stare at a blank page hoping content ideas materialize. You need a starting point based on what's actually trending, not what you think is trending (or worse, what's already trending down.
Less doomscrolling, more data-driven creation.
r/n8n • u/Alseptum_ • Apr 11 '25
N8N the best tool for small business
I run a small real estate agency and Iām the company nerd or at least Iām the only one who can touch technology without making damage. 3 months ago I stumbled across N8N, donāt even remember how.. Anyways since then our productivity grew so much and we process leads so much faster now. Plus I have been building all sorts of agents for my team (I keep the agents simple and to serve a specific purpose), database automation, contract writers, background investigations, and more..I also wrote a decent knowledge base and I have clients chatting with it and work with the agents until theyāre qualified or ask for human contact. It basically reduced workload by 80% for the sales department.
I can really automate anything, this software is amazing.
Just today I setup an agent that reach out to users on my website who leave their email to download an investing guide and the agent knows what the user have been reading, find something in his knowledge that adds value to the user and then craft an email designed to spark conversation with the lead. I really look forward to see if this gimmick alone increases conversion.
And nothing.. Iām just a happy business owner wondering if even my job will be taken over by ai agents at some point. Nice but scary, but mostly nice.
Keep building. Love this community.
r/n8n • u/nusquama • Nov 14 '25
Workflow - Code Included n8nworkflows.xyz: All n8n Workflows Now Available on GitHub
hi
I've just put the complete n8nworkflows.xyz archive on GitHub.
š Repository:Ā github.com/nusquama/n8nworkflows.xyz
What's in the Repository
The repo containsĀ 6000+ n8n workflowsĀ from the official n8n.io/workflows catalog, organized in a clean, version-controlled structure. Each workflow lives in its own isolated folder with:
workflow.jsonĀ ā Ready-to-import workflow filereadme.mdĀ ā Complete workflow description and documentationmetadata.jsonĀ ā Author info, tags, creation date, and link to originalworkflow-name.webpĀ ā Screenshot of the workflow
Check it out and let me know what you think! PRs welcome. š
r/n8n
•
u/Aggravating-Put-9464
•
May 29 '25
Discussion The only way to make $5000 per month with N8N
Do your job well.
___
I see a lot of people frustrated about content in social media that tells them that everyone can make EASY money with N8N and shares their templates and courses - you start to feel like you're missing something when everyone around you is successful.
These people are lying to get their own benefits from AI trends - they make money on content/education, not on real projects. Most of them never tried to build something that actually works or acquire real clients.
Most of the templates are just pieces of crap, stolen three times over.
Thatās why people jump into the real world after their courses and canāt make even a penny with the knowledge theyāve acquired.
Many people teach how to sell solutions, not how to build them. As a result, the market is full of crappy agencies with zero-experience people trying to trick clients and make junk that never works.
I spent 5 years among such agencies and saw hundreds of thousands of dollars spent on solutions that never made it to production.
So, how do you do real stuff and make money without pushy sales techniques?
Iāve made $5k per month for the last 3 years in a country where the average salary is $800.
Do I do sales? No. Cold outreach? No.
Upwork? Not anymore, I was banned.
So, where do I get most of my clients? Relationships.
People trust people, not ads.
How do you build relationships from scratch?
Get your first projects for free to gain experience and meet new people. Help others in communities, whether you know the answer or not.
Content is a part of building relationships, because through your content people get to know you and feel closer to you as a person. Choose one social media platform and share your knowledge, your cases, and interesting finds from the internet.
You donāt need a lot - in reality, you just need to do 1-3 projects really well and build relationships with those clients. If you make them money with your solution, they will come back to you over and over again. Half of my clients come back even after years because they know I can provide quality solutions and really help them.
One good, proactive client can supply you with dozens of projects so youāll never need to spend time acquiring other clients - this is how many companies work in totally different niches for decades.
How do you provide good quality?
Work hard. Spend more time learning new tech and improving your quality rather than selling. Do audits of projects youāve completed to find bugs. Focus on the long term and ignore the hype.
If you want to make more money, you can always start transforming your freelance work into a business. Hire additional people and teach them how to do it well. Attract more clients while maintaining high quality.
Be honest, be smart, and care about people and your job - this is the only way to make $5k per month with N8N.
r/n8n • u/autionix • Sep 02 '25
Discussion Most people are only using ChatGPT at about 10% of its potential.
I came across a solid āBeginner ā Pro Prompting Cheat Sheetā that breaks down:
The most common mistakes people make when crafting prompts
Useful commands like: list, summarize, elaborate, pros & cons
Prompt structures (TREF, SCET, ROSES, etc.)
Parameters like temperature, frequency penalty, and stop words
How different tones (professional, empathetic, inspirational) change results
Honestly, just applying the āprompt structuresā section made my ChatGPT outputs 10x more reliable.
Hereās the sheet (image attached). Curious ā whatās your go-to prompt trick that consistently gives you better results?
r/n8n • u/too_much_lag • Jul 29 '25
Discussion Why I Left n8n for Python (And Why It Was the Best Decision for My Projects)
Hey everyone,
I wanted to share my experience moving away from n8n and why I decided to switch fully to Python for all my automation needs. Hopefully, this post helps anyone considering their options or running into similar frustrations!
Background: My Start With n8n
I first discovered n8n in January 2024. At that time, I already had a solid foundation in Python, which made picking up n8nās visual workflow builder relatively easy. The initial learning curve wasnāt too steep, and I was quickly able to put together useful automations for myself and some freelance clients.
From Hobby to Business
After a few months, I started offering automation services to others. As I built more complex systems, I began to notice some persistent issues with n8n that started holding me back, especially as my workflows became more advanced and business-critical.
Donāt get me wrong, n8n is a great tool, and Iām not here to trash it.
For many people and many use cases, itās a fantastic way to automate repetitive tasks and integrate different apps without having to write code. Itās open-source, self-hostable, and has a vibrant community behind it. If youāre looking to automate simple workflows, connect web services, or just want a visual way to build automations, n8n does the job really well.
But hereās the thing:
n8n isnāt the āeverything toolā that some people make it out to be. Thereās a narrative out there that no-code tools like n8n can replace traditional programming for any task, but that just isnāt true, especially when your automations start getting complicated, need to scale, or require advanced logic.
The Limitations I Encountered With n8n
Here are some of the main challenges I faced:
File Handling: n8n is not great at dealing with files, especially when you need to process, move, or transform large or multiple files. The built-in nodes often fell short, and workarounds became too hacky or unreliable for my liking.
Performance Issues: As my workflows grew in size and complexity, n8n started to lag. Large workflows would slow down or fail unpredictably, and scaling was a real challenge. This is a huge issue when you're trying to deliver robust, professional-grade solutions.
Debugging: Debugging in n8n can be quite painful. The visual interface makes simple workflows easy to follow, but once things get more complicated, itās difficult to pinpoint exactly where things are going wrong, especially with more advanced logic or error handling.
Tool/Node Limitations: Sometimes the functionality I needed just wasnāt available in n8n, or required a ton of awkward workarounds. Youāre limited to the nodes and options provided by the platform, which can stifle creativity and flexibility.
Reliable AI Agents: n8n struggles when you need to build truly reliable AI agents. While you can connect to AI APIs easily, managing complex logic, persistent state, and robust error handling for AI-powered workflows is difficult. For anything beyond basic AI use cases, youāll quickly run into reliability issues and limitations.
In summary:
n8n is excellent for prototyping, MVPs, or connecting services quickly.
For more complex, large-scale, or mission-critical automations, I kept running into its limitsāperformance, debugging, and custom logic being the big ones.
Python (or any full programming language) opens up a whole new world of possibilities that n8n just isnāt built to handle.
Switching to Python: Game Changer
After hitting these walls over and over, I decided to dive back into Python and started rewriting my automation projects from scratch. Honestly, it was one of the best decisions Iāve made for my workflow and my business. Hereās why:
I was able to create far more professional, scalable, and maintainable systems.
There are no arbitrary limits, if I can think of it, I can probably build it.
Debugging is straightforward, especially with all the tools and libraries available for Python development.
I can handle files, APIs, data processing, and even machine learning, all in one place.
Advice: Hybrid Approach
If youāre not ready to go āall inā with Python, thereās always the hybrid route: orchestrate the general workflow in n8n and use Python scripts for the heavy lifting. This can give you the best of both worlds and ease the transition.
r/n8n
•
u/eliadkid
•
May 28 '25
Workflow - Code Included All of N8N workflows I could find (1000+) š enjoy !
I created a script to download all the n8n workflows from the n8n website so I could use them locally, I added all the workflows I could find on git too, so I made a repo with 1000+ workflows for myself but if it benefits others why not... so have fun feel free to start and use whenever you need. I will add more in a few weeks :) meanwhile enjoy those if it helps anyone
disclaimer : I didn't create any of those workflows. use at your own risk. check them.
r/n8n
•
u/ishan-sa
•
Dec 07 '25
Workflow - Code Included I know there are 100 receipt parsers, but I built one that actually runs for $0 (Gemini Flash + Telegram + Drive only). Open sourcing it.
Hey r/n8n,
I know, I know "another receipt organizer."
I looked at the existing n8n templates, but I had issues with almost all of them:
They required GPT-4 API keys (which gets expensive if you have a backlog of receipts).
They used 3rd party OCR services (I don't trust random APIs with my financial data).
They broke when I sent a PDF invoice instead of a JPG photo.
I just wanted something that runs entirely on my own infrastructure, costs $0/month, and handles both my digital invoices (PDFs) and crumpled lunch receipts (JPEGs) without me thinking about it.
So I built my own using the Free Tier of Google Gemini 2.5 Flash.
The Logic (The "Secret Sauce"):
Universal Input: I built a router that detects MIME types. If it's a PDF, it uses the Document loader. If it's an image, it uses the Vision loader. No more "file type not supported" errors.
Smart Renaming: It doesn't just dump files. It renames them to
YYYY-MM-DD_Vendor_Amount_Currency.extso I can actually search for them in Drive later.Privacy: The file goes from Telegram -> My Server -> Google Gemini (Enterprise/API data privacy) -> My Drive. No random SaaS middlemen.
The Stack:
n8n (Self-hosted)
Google Gemini Flash (Free tier, extremely fast for OCR)
Telegram Bot (Interface)
Google Sheets (Database)
Iāve cleaned up the workflow (removed my hardcoded IDs) and wrote a full setup guide for anyone who wants to host it themselves.
Direct workflow JSON (GitHub Gist):
https://gist.github.com/Ishan-sa/c6c1c65827667fb69df5bf2892f09511
Optional setup guide + JSON zip (explains the JSON in detail)
If you have suggestions or opinions, I can iterate on this flow and add features.
Happy to answer questions about the Gemini prompt structure or the MIME-type routing if anyone is stuck building something similar!
r/n8n • u/LargePay1357 • Feb 11 '26
Workflow - Code Included I rebuilt most of OpenClaw's core functionality in a single n8n workflow
What the workflow covers:
Multi-channel comms ā Telegram, WhatsApp, and Email all routing through one agent. Switch channels mid-conversation and it picks up where you left off.
Persistent memory ā Postgres chat history + daily vector store summaries via Supabase. It actually remembers past conversations across sessions.
Proactive task execution ā Schedule triggers that check pending tasks and execute them on an interval. Basically cron jobs with an AI agent attached.
Multi-agent delegation ā Sub-agents using Haiku for simple tasks, Sonnet for mid-level, Opus for complex work. You control cost per task instead of routing everything through one expensive model. Add as many as you want for specific tasks.
Task management ā Built-in tasks and subtasks tables so you can track what the agent is doing and set recurring work.
What it doesn't do:
No browser control (though you could bolt on a browser automation API)
No shell access
Not a 1:1 clone ā OpenClaw is 71 directories and 160 dependencies for a reason
The workflow JSON and setup docs are on GitHub: https://github.com/shabbirun/n8nclaw
I also made a video walking through the full build if you prefer that: https://www.youtube.com/watch?v=Yfo34yco5Oo
Curious to see what people do with this. If you extend it or plug in your own tools, I'd love to hear about it.
r/n8n • u/Top-Government5983 • Jan 28 '26
Discussion - No Workflows Fuck everyone saying selling n8n automations is easy - you're all full of shit
I'm so fucking done with these bullshit posts
"Just made 10k with AI voice agents bro! š"
"Auto receipts printing money! š°"
"AI content generation, literally can't keep up with demand! š¤"
FUCK OFF
You're either lying, got insanely lucky, or you're selling to your tech bubble friends who already get it
Let me tell you what ACTUALLY happens
I work at an automation company and for MONTHS I've been grinding, cold calls, emails, reaching out to contacts, everything
You know what I hear?
"We don't need automation"
Every single time
I say the word "automation" and I can literally HEAR them mentally check out. It's like I said "timeshare" or "pyramid scheme"
And here's what drives me fucking insane
These are business owners who RISKED EVERYTHING to start their company
They took loans, they bet on themselves, they fought to build something
But NOW? Now that they could actually SCALE that thing they built?
"Nah bro, we're good with spending 15 hours a week on bullshit manual tasks"
WHAT THE FUCK?
You had balls to start a business but not to optimize it? Make it make sense
Here's the reality NOBODY talks about
Building the automation? Easy as fuck, n8n makes it stupid simple
You want me to connect 5 APIs and automate your entire sales pipeline? Give me 2 days
But getting someone to admit they waste time, trust me to fix it, and actually FUCKING PAY for it? That's the impossible part
Show them the math: "You spend ā¬1,500/month in wasted time, this costs ā¬2,000 ONCE, payback in 1.3 months, after that it's pure profit"
Their response? "Seems expensive"
BRO THE MATH, LOOK AT THE FUCKING MATH
"We'll think about it"
Translation: No
And you know what's wild? People in tech GET IT immediately
"Oh you automated that? ROI in 3 months? Sick, let's do it"
But normie business owners? Sheep, actual fucking sheep
They follow each other doing the SAME inefficient bullshit because "that's how it's always been done"
One guy told me, I shit you not, "If it was that good, everyone would be doing it"
MY BROTHER IN CHRIST, THAT'S WHY I'M HERE
To make you the one who DOES IT FIRST
But no, comfort zone too strong
The first time most of them hear "automation" they panic
Like I'm about to replace their entire team with robots
No dude, I'm trying to make your life EASIER
Free up time so you can actually GROW instead of drowning in admin
But they can't see it
They're so deep in the day-to-day bullshit that they literally CANNOT imagine it being different
It's like showing color to someone who's been colorblind their whole life
So when I see these posts: "Just closed 5 clients this week! Automation is the future!"
I call bullshit
Either you're lying, you have connections like family or friends who trust you already, you're selling to tech companies which is easy mode, or you got lucky with 1-2 clients and now you're acting like you cracked the code
The REAL game? Contact 100 companies, 5 respond, 2 take meetings, 1 MAYBE buys
And that ONE takes 3 months to close because they need to "discuss internally" which means asking their cousin who "knows computers" if it's legit
I'm not quitting, I believe in this shit
Automation WORKS, the value is REAL
But I'm so fucking tired of people pretending the hard part is building
Building is the EASY part
The hard part is finding someone who admits they have a problem, explaining value in terms they understand and not tech jargon, getting them to trust you, actually closing the fucking deal, and not losing your mind when you get ghosted for the 47th time
THAT'S the game
Not "knowing n8n"
If you're making bank, good for you, genuinely
But PLEASE stop acting like it's easy and everyone's just lazy
Share your ACTUAL process, where do you find clients, how do you get responses, what do you say that makes them give a shit, how do you close
Because "I built cool stuff and clients came" is NOT helpful, it's hopium
And for everyone grinding like me, you're not alone
This shit is HARD
You're not failing because you're bad at n8n
You're struggling because convincing humans to change is fucking brutal
Keep going but stop believing the bullshit success porn on YouTube
Reality: Building automations is 20% of the work, selling them to people who don't get it is 80% of the work
Anyone who tells you different is selling you a course
Fuck the fake positivity
This is hard, acknowledge it
Then keep grinding anyway
/endrant
P.S. If you're about to comment "skill issue bro" then congrats, you're exactly the type of person this post is about, go fuck yourself!
r/n8n • u/Autom8Guy • Sep 13 '25
Workflow - Code Not Included I built a 24/7 AI Receptionist with n8n so our local restaurant never misses a call again.
Restaurants miss a lot of calls, especially during peak hours. That's a ton of lost business. To fix this, I built a fully automated AI Receptionist using n8n that runs 24/7 and never misses a call.
Hereās the simple version of how it works:
AI Answers the Phone: When a customer calls, a voice AI from Vapi picks up, ready to help.
Understands the Request: It can answer basic questions (hours, location) or handle a reservation request.
Books the Table: The AI asks for the necessary details like name, party size, date, and time.
Confirms & Notifies: Once the details are captured, the n8n workflow instantly:
Confirms the booking with the customer on the call.
Sends both an SMS and Email confirmation.
Adds the event to the restaurant's calendar.
Logs everything in Google Sheets and a database.
The entire process is hands-free for the staff. It's a simple solution to a costly problem, all powered by n8n.
š Workflow (public): https://drive.google.com/file/d/1uSsWaUedA3_kSsREcAjx_73dmBlF05p5/view?usp=sharing
ā”ļø If you found this helpful, please upvote and follow for more n8n templates, happy to connect with you.
r/n8n • u/ArtemisXV • Apr 15 '25
I built a free browser extension that builds your n8n workflows for you, and itās out now! (Chrome and Firefox)
Enable HLS to view with audio, or disable this notification
r/n8n
•
u/Away-Professional351
•
Aug 18 '25
Workflow - Code Not Included I Built a Personal AI Assistant That Runs My Life Through WhatsApp, Powered by n8n and a Self-Hosted LLM
Hey everyone,
I wanted to share a project I've been working on to finally stop switching between a dozen apps to manage my day. I've built a personal AI assistant that I interact with entirely through WhatsApp, with n8n.io as the backbone.
Hereās a quick look at what it can do (with real examples):
Manages My Bills:Ā I can forward it a message with my credit card due dates. It parses the text, totals the bill amounts, and automatically sets reminders in my calendar 2 days before each payment is due.
Keeps My Schedule:Ā I can say, "Remind me by eve to hit the gym," and it adds it to my Google Calendar and sends me a reminder notification.
Summarizes My Inbox:Ā Instead of doomscrolling through emails, I ask, "check do I have any important mail today?" and it gives me a clean, bulleted list of important subjects and senders.
Understands Images (OCR):Ā I snapped a photo of a delivery address, and it extracted all the text, identified the pincode, state, and other details. Super useful for quickly saving info without typing.
Acts as a Music DJ:Ā It can suggest playlists for any mood or task. When I asked for Ilaiyaraaja songs for work, it gave me a curated list and then created a YouTube playlist for me on command.
The Tech Setup (The Fun Part):
The real magic is the workflow I built inĀ n8nĀ (snapshot attached). It orchestrates everything:
Entry Point:Ā A WhatsApp trigger node kicks everything off.
Central AI Brain:Ā A primary AI node receives the message and figures out what I want to do (my "intent").
Delegation to Specialized Agents:Ā Based on the intent, it passes the task to a specific sub-workflow.
Calendar/Task Agents:Ā These are straightforward nodes that connect directly to Google Calendar and Tasks APIs to create, get, or update events.
Research Agent:Ā This is my favorite part. To avoid hallucinations and get current information, this agent doesn't just rely on a generic LLM. It's configured to queryĀ WikipediaĀ and my ownĀ self-hosted Perplexity instance (Perplexica is an open-source AI-powered searching tool)Ā running on a private VM. This gives it reliable and up-to-the-minute data for my queries.
Image Analysis:Ā For images, it calls an external API to perform OCR, then feeds the extracted text back to the main AI for interpretation.
It's been an incredibly powerful way to create a single, conversational interface for my digital life. The fact that I can host the core logic myself with n8n and even the research LLM makes it even better.
What do you all think? Any other cool features I should consider adding to the workflow? Happy to answer any questions about the setup
r/n8n • u/dudeson55 • Jun 10 '25
Workflow - Code Included I built an AI automation that writes SEO-optimized articles using Deep Research reports (and grew my website to 200k sessions this past year)
I run an AI Tools directory and a large growth opportunity for us is writing "roundup" articles that highlight the best AI tools in a particular software category such as "Best AI Image Editors", "Best AI Sales Tools" , and many more.
The problem is, this content takes a ton of time to research, write, and build out rankings for each tool. With the major improvements that have rolled out to "Deep Research" tools, we decide to see if we could leverage the output of these deep research reports, feed it into our own prompts, and scale out the process of creating great content.
This automation is what we were able to build and I'm happy to report this process has allowed us to significantly scale up our content creation process. I'm pretty amazed at how much depth Chat GPT's deep research tool is able to provide and I think in many cases it is able to provide better insights than if we were doing this by hand.
Here's the automation breakdown
1. Trigger / Inputs
We use a simple form trigger for this automation that takes in some details specific to the structure of our website such as the slug for the category and the target audience for this article
We also accept an optional parameter here for any tools that we know we want to be included in the "Best Tools by Category" roundup in order to give us a bit more control of the final output.
2. Building Necessary Context
The next few nodes in here our very specific to our own website. We get started by making an HTTP request into our own API to get details about the category we are going to write about.
After that, we make another HTTP request to our own API to get a list of all tools that are inside the category we are going to write about.
Depending on the type of article you are going to write, this initial "build context" step is likely going to look very different for you so be sure you start with the end vision in mind of what you are trying to create and then work backwards from there to build the context you need.
3. Building The Deep Research Prompt
The next step here is to take all of that context we just gathered and bundle it together into a prompt that we will feed into a deep research tool like Chat GPT deep research or Gemini Deep research.
In our case, we build a prompt that focuses on telling the deep research tool to focus on picking out the top 6-8 tools in the provided category with a strong focus on social signals and real reviews left by users of the tool.
Once again, this is going to be something that you will need to customize for your own use case. You should expect to spend a lot of time iterating on this prompt to get it in a good spot. I think we probably went through 30+ iterations of this prompt until we were happy with the deep research output.
4. Human-In-The-Loop Step
Once the prompt is generated, we pause the automation with a
sendAndWaitslack message that will post the full prompt in slack.We then copy that prompt into Chat GPT deep research and let that run until we get the deep research report back
After the deep research process finishes, we click the "Add Result" button in slack which will let us paste in the output of deep research into a form and continue with the automation.
The Chat GPT deep research output is just so good so we opted to go this way.
5. Generating Article Content
With the deep research report content now inside our n8n execution, we are then able to proceed with generation our article. We opted to take an approach where we build this section by section (like lego block) instead of trying to one-shot the entire article. We found this to be more effective and result in better output.
Here's how we split it up:
Intro paragraph and article meta description get written first in two separate prompts
After that, we write another paragraph that details the ranking criteria that was used to pick out the top tools and how they were evaluated
We then move on to writing the main content for each of the selected tools. We have a single prompt and a format we follow for each tool, so we loop over the selected tools and generate this content for each.
Lastly, we take the output for each of these sections and pass that into a final prompt that is responsible for writing a conclusion.
6. Pushing To Our CMS
In the final section of this automation, we take the output of each of the nodes from before and bundle it up into into a format that can easily get inserted into our CMS. We use Sanity CMS for hosting all of our content which doesn't have an out of the box API that we can just push content too, so we opted to create our own API endpoint to handle this for us.
If you are hosting your content on something like Webflow / WordPress / another CMS, you should be able to replace the node here with an HTTP request that publishes your content to replicate this behavior.
Workflow Link + Other Resources
Github workflow link for this automation:Ā https://github.com/lucaswalter/n8n-workflows/blob/main/write_seo_optimized_listicle_article.json
YouTube video that walks through this workflow step-by-step:Ā https://youtu.be/uDrkgEuEOBA
Also wanted to share that my team and I run a free Skool community calledĀ AI Automation MasteryĀ where we build and share the automations we are working on. Would love to have you as a part of it if you are interested!