Workflow Templates
Discover and use pre-built workflows to automate your tasks
1716 templates found
Discover and use pre-built workflows to automate your tasks
1716 templates found
by Leonard
Who is this for? This workflow is designed for SEO specialists, content creators, marketers, and website developers who want to ensure their web content is easily accessible, understandable, and indexable by Large Language Models (LLMs) like ChatGPT, Perplexity, and Google AI Overviews. If you're looking to optimize your site for the evolving AI-driven search landscape, this template is for you. What problem is this workflow solving? / Use case Modern AI tools often crawl websites without executing JavaScript. This can lead to them "seeing" a very different version of your page than a human user or traditional search engine bot might. This workflow helps you: Identify how much of your content is visible without JavaScript. Check for crucial on-page SEO elements that AI relies on (headings, meta descriptions, structured data). Detect if your site presents JavaScript-blocking warnings. Get an AI-generated readability score and actionable recommendations to improve AI-friendliness. What this workflow does Receives a URL via a chat interface. Sanitizes the input URL to ensure it's correctly formatted. Fetches the website's HTML content, simulating a non-JavaScript crawler (like Googlebot). Extracts key HTML features: visible text length, presence of H1/H2/H3 tags, meta description, Open Graph data, structured data (JSON-LD), and <noscript> tags. It also checks for common JavaScript-blocking messages. Performs an AI SEO Analysis using an LLM (via OpenAI) based on the extracted features. Provides a report including an AI Readability Score (0-10), a summary, actionable recommendations, and a reminder to check the robots.txt file for AI bot access. Setup Estimated setup time:** 2-5 minutes. Import this workflow into your n8n instance. Ensure you have an OpenAI account and API key. Configure the "OpenAI Chat Model" node with your OpenAI API credentials. If you don't have credentials set up yet, create new ones in n8n. Activate the workflow. Interact with the chat interface provided by the "When chat message received" trigger node (you can access this via its webhook URL). How to customize this workflow to your needs Change LLM Model:** In the "OpenAI Chat Model" node, you can select a different model that suits your needs or budget. Adjust AI Prompt:** Modify the prompt in the "AI SEO Analysis" node (Chain Llm) to change the focus of the analysis or the format of the report. For example, you could ask for more technical details or a different scoring system. User-Agent:** The "Get HTML from Website" node uses a Googlebot User-Agent. You can change this to simulate other bots if needed. JS Block Indicators:** The "Extract HTML Features" node contains a list of common JavaScript-blocking phrases. You can expand this list with other languages or specific messages relevant to your checks.
by Yar Malik (Asfandyar)
Intro This template is for project managers, team leads, or anyone who wants to automatically remind teammates of tasks due today—no manual copy‑and‑paste required. How it works Schedule Trigger runs every morning at 8 AM. Google Sheets node reads your “Tasks” sheet. If node filters rows where Due Date = today. Summarize (ChatGPT HTTP Request) generates a friendly reminder per person. Message a model sends the prompt to your ChatGPT Assistant and returns the AI response. Send a message (Gmail) emails each assignee their personalized reminder. Required Google Sheet Structure | Column Name | Type | Example | Notes | |-------------|--------|---------------------------|-------------------------| | Name | string | Alice Johnson | Person to remind | | Email | string | user@example.com | Recipient email address | | Task | string | Submit quarterly report | Task description | | Due Date | date | 2025‑07‑29 | Format: YYYY‑MM‑DD | Detailed Setup Steps Google Sheets Create your sheet with the columns above. In n8n → Credentials, add Google Sheets API (do not include real sheet IDs in the name). ChatGPT Assistant In the OpenAI Dashboard → Assistants, click Create Assistant. Choose a model (e.g., gpt-4), copy the Assistant ID. In n8n → Credentials → OpenAI, add your API Key and Assistant ID. Gmail In n8n → Credentials → Gmail (OAuth2 or SMTP), connect your account without embedding your real address in the credential name. Import & Configure Export this workflow’s JSON (three‑dot menu → Export). Paste it under Template Code in the Creator form. In each node, select your Google Sheets, OpenAI, and Gmail credentials. Sticky Notes A note on the Schedule node: “Set your desired run time.” A note on the ChatGPT node: “Customizes reminder text.” A note on the Gmail node: “Sends reminder email.” Customization Guidance Change schedule: edit the Cron expression in **Schedule Trigger. Adjust tone**: modify the system prompt in your ChatGPT Assistant. Email format: update **Subject and Body in the Gmail node. Batch processing: insert a **SplitInBatches node before Summarize for large sheets. Troubleshooting Ensure your Google Sheet is shared with the connected service account. Verify Due Date format (YYYY‑MM‑DD). If ChatGPT fails, check your API key and quota. Security & Best Practices Do not** hard‑code API keys, sheet IDs, or real emails. Use n8n Credentials or environment variables only. Remove any private information before submitting.
by Lucas Peyrin
This workflow contains community nodes that are only compatible with the self-hosted version of n8n. How it works This workflow demonstrates how to create a resilient AI Agent that automatically falls back to a different language model if the primary one fails. This is useful for handling API errors, rate limits, or model outages without interrupting your process. State Initialization: The Agent Variables node initializes a fail_count to 0. This counter tracks how many models have been attempted. Dynamic Model Selection: The Fallback Models (a LangChain Code node) acts as a router. It receives a list of all connected AI models and, based on the current fail_count, selects which one to use for this attempt (0 for the first model, 1 for the second, etc.). Agent Execution: The AI Agent node attempts to run your prompt using the model selected by the router. The Fallback Loop: On Success: The workflow completes successfully. On Error: If the AI Agent node fails, its "On Error" output is triggered. This path loops back to the Agent Variables node, which increments the fail_count by 1. The process then repeats, causing the Fallback Models router to select the next model in the list. Final Failure: If all connected models are tried and fail, the workflow will stop with an error. Set up steps Setup time: ~3-5 minutes Configure Credentials: Ensure you have the necessary credentials (e.g., for OpenAI, Google AI) configured in your n8n instance. Define Your Model Chain: Add the AI model nodes you want to use to the canvas (e.g., OpenAI, Google Gemini, Anthropic). Connect them to the Fallback Models node. Important: The order in which you connect the models determines the fallback order. The model nodes first created/connected will be tried first. Set Your Prompt: Open the AI Agent node and enter the prompt you want to execute. Test: Run the workflow. To test the fallback logic, you can temporarily disable the First Model node or configure it with invalid credentials to force an error.
by Babish Shrestha
Who is this tempate for? This workflow powers a simple yet effective customer and sales support chatbot for your webshop. It's perfect for solopreneurs who want to automate customer interactions without relying on expensive or complex support tools. How it works? The chatbot listens to user requests—such as checking product availability—and automatically handles the following Fetches product information from a Google Sheet Answers customer queries Places an order Updates the stock after a successful purchase Everything runs through a single Google Sheet used for both stock tracking and order management. Setup Instructions Before you begin, connect your Google Sheets credentials by following this guide: This will be used to connect all the tools to Google Sheets 👉 Setup Google sheets credentials Get Stock Open "Get Stock" tool node and select the Google sheet credentials you created. Choose the correct google sheet document and sheet name and you are done. Place order Go to your "Place Order" tool node and select the Google sheet credentials you have created. Choose the correct google sheet document and sheet name. Update Stock - Open your "Update Stock" tool node and select the Google sheet credentials you have created. Choose the correct google sheet document and sheet name. In "Mapping Column Mode" section select map each column manually. In "Column to match on" select the column with a unique identifier (e.g., Product ID) to match stock items. In values to update section, add only the column(s) that need to be updated—usually the stock count. AI Agent node Adjust the prompt according to your use case and customize what you need. Google Sheet Template Stock sheet |Case ID|Phone Model|Case Name|Case Type|Image URL|Quantity Avaialble|Initital Inventory|Sold| |-|-|-|-|-|-|-|-| |1023|Iphone 14 pro|Black Leather|Magsafe|https://example.com/url|90|100|10 Order sheet |Case ID|Phone Model|Case Name|Name|Phone Number|Address| |-|-|-|-|-|-| |1023|Black Leather |Iphone 14 pro|Fernando Torres|9998898888|Paris, France
by Obsidi8n
I am submitting this workflow for the Obsidian community to showcase the potential of integrating Obsidian with n8n. While straightforward, it serves as a compelling demonstration of the potential unlocked by integrating Obsidian with n8n. How it works This workflow lets you retrieve specific Airtable data you need in seconds, directly within your Obsidian note, using n8n. By highlighting a question in Obsidian and sending it to a webhook via the Post Webhook Plugin, you can fetch specific data from your Airtable base and instantly insert the response back into your note. The workflow leverages OpenAI’s GPT model to interpret your query, extract relevant data from Airtable, and format the result for seamless integration into your note. Set up steps Install the Post Webhook Plugin: Add this plugin to your Obsidian vault from the plugin store or GitHub. Set up the n8n Webhook: Copy the webhook URL generated in this workflow and insert it into the Post Webhook Plugin's settings in Obsidian. Configure Airtable Access: Link your Airtable account and specify the desired base and table to pull data from. Test the Workflow: Highlight a question in your Obsidian note, use the “Send Selection to Webhook” command, and verify that data is returned as expected.
by Daniel Nolde
What it is: In version 1.78, n8n introduced a dedicated node to use the OpenRouter service, which lets you to use a lot of different LLM models and providers and change models on the fly in an agentic workflow. For prior n8n versions, there's a workaround to make OpenRouter accessible, by using the OpenAI node with a OpenRouter-specific BaseURL. This trivial workflow demonstrates this for version before 1.78, so that you can use different LLM model dynamically with the available n8n nodes for OpenAI LLM and OpenAI credentials. What you can do: Use any of the OpenRouter models Have the model even dynamically configured or changing (by some external config, some rule, or some specific chat message) Setup steps: Import the workflow Ensure you have registered and account, purchased some credits and created and API key for OpenRouter.ai Configure the "OpenRouter" credentials with your own credentials, using an OpenAI type credential, but making sure in the credential's config form its "Base URL" is set to https://openrouter.ai/api/v1 so OpenRouter is used instead of OpenAI. Open the "Settings" node and change the model value to any valid model id from the OpenRouter models list or even have the model property set dynamically
by Agent Studio
Overview This workflow answers user requests sent via Mac Shortcuts Several Shortcuts call the same webhook, with a query and a type of query Types of query are: translate to english translate to spanish correct grammar (without changing the actual content) make content shorter make content longer How it works Select a text you are writing Launch the shortcut The text is sent to the webhook Depending on the type of request, a different prompt is used Each request is sent to an OpenAI node The workflow responds to the request with the response from GPT Shortcut replace the selected text with the new one For a demo and setup instructions: How to use it Activate the workflow Download this Shortcut template Install the shortcut In step 2 of the shortcut, change the url of the Webhook In Shortcut details, "add Keyboard Shortcut" with the key you want to use to launch the shortcut Go to settings, advanced, check "Allow running scripts" You are ready to use the shortcut. Select a text and hit the keyboard shortcut you just defined
by Ryan
Who is this template for? This template is for any Microsoft Outlook user who wants a trained AI agent to reason and reply on their behalf. Teach your agent tone and writing style to replicate your own, or develop a persona for a shared inbox. Requirements Outlook with authentication credentials OpenAI account with authentication credentials A few sample email replies of various lengths and topics How it works: Connect your Outlook account. Select (filter) which email sender(s) your trained AI agent will reply to. [Tip: pick a sender that has some repeatability either with a topic (ie. sales) or an individual (coworker@yourcompany.com)] Connect your OpenAI account. Choose your AI model (ie. gpt-4o-mini) Add Prompt (User Message) and select "system message" from the option below Update the instructions by filling in your name (or persona), response style, and add full email replies from the topic or individual you want the AI agent to emulate. [Tip: Add actual replies from your email sent folder, including your greeting and sign off. Paste each email sample between a set of <example> .... </example> tags] Configure the reply (or reply all) to remain within the original email string Test it! Send an email from the address to which your agent wants to respond. Check your sent (or draft) folder for the result. Enjoy all the free time you now have!! If you have questions or need assistance, email us at: support@teambisonandbird.com ++This template does not include retrieving email addresses out of the message or body of the email.++
by Lucas Peyrin
How it works This workflow changes the file name, and therefore the extension and MIME type, of any binary file passed to it. This is perfect for converting file formats on the fly, like turning a Telegram voice message (.oga) into an MP3 for an AI transcription service. Set New File Name: The SET OUTPUT FILE NAME node is where you define the desired output file name and extension (e.g., audio.mp3). It also dynamically captures the property name of the incoming binary (e.g., data). Extract Binary Data: The workflow temporarily converts the binary file into a Base64 text string to make it accessible in the next step. Rebuild Binary with New Name: A Code node takes the Base64 data and reconstructs it as a binary file, but this time, it assigns the new file name you specified. n8n automatically sets the MIME type based on the new file extension. Set up steps Setup time: < 1 minute This workflow is designed to be used as a sub-workflow. In your main workflow, add an Execute Sub-Workflow node where you need to change a file's type. In the Workflow parameter, select this "Change Binary MimeType/Extension" workflow. Open this workflow and go to the SET OUTPUT FILE NAME node. Modify the output_file_name value to your desired file name (e.g., voice_message.mp3 or document.pdf). Save this workflow. Now, any binary file you send to it from your main workflow will be returned with the new fileName and mimeType.
by WeblineIndia
This workflow contains community nodes that are only compatible with the self-hosted version of n8n. This workflow automates summarizing YouTube videos by accepting a YouTube URL via a form, fetching the video transcript using Apify, and then generating a concise summary with OpenAI GPT. Setup Instructions Prerequisites: Apify account with access to the YouTube Transcript actor. OpenAI API key (for GPT-4o-mini model). n8n instance with the Apify and OpenAI credentials configured. Configuration Steps Apify Setup: Configure Apify API credentials in the Apify node. Ensure the YouTube Transcript actor ID (1s7eXiaukVuOr4Ueg) is correct. OpenAI Setup: Add your OpenAI API key in the OpenAI Chat Model node. Confirm model selection is set to gpt-4o-mini. Customization Modify form field to accept additional inputs if needed. Adjust Apify actor input JSON in the Payload node for extra metadata extraction. Customize the summarization options to tweak summary length or style. Change OpenAI prompt or model parameters in the OpenAI Chat Model node for different output quality or tone. Steps 1. On Form Submission Node:** Form Trigger Purpose:** Collect the YouTube video URL from the user via a web form. 2. Prepare Payload Node:** Set Purpose:** Format the YouTube URL and options into the JSON payload for Apify input. 3. Fetch Transcript Node:** Apify Purpose:** Run the YouTube Transcript actor to retrieve video captions and metadata. 4. Extract Captions Purpose:** Isolate the captions field from the Apify response for processing. 5. Summarize Transcript Purpose:** Generate a concise summary of the video captions.
by AdrianWang
How it works This workflow automates the conversion of various document formats (such as PDF, Word, and PPT) into Markdown. It connects to the MinerU API service, which leverages OCR, formula, and table recognition to produce high-quality output. Users can initiate the process by simply uploading a document through an n8n chat interface. Set up steps Ensure you have a local n8n instance running. Set up and run the MinerU MCP (MinerU Computing Platform) server locally. Import this workflow into your n8n instance. Configure your AI model credentials (e.g., for OpenAI, add your API Key and Base URL). Click the "Write Files from Disk" node and edit the file path to your desired local save location. Click the "MCP Client" node and input your MinerU MCP server address (e.g., http://localhost:8000/sse). Click the "Open Chat" button to upload a file, send a message, and test the workflow.
by n8n Team
This workflow creates/updates/deletes a Notion database page when an issue is created/updated/deleted in Jira. Subsequent updates to the issue's title or status in Jira are updated in the Notion database. If you require more fields to send to Notion, this template is easily extendible which will be described in setup. The Notion database will require setup before the workflow can be used. Prerequisites Notion account and Notion credentials. Jira account and Jira credentials. How it works When a new issue is created in Jira, the workflow creates a new page in the Notion database will all the required fields. When the issue's title or status is updated in Jira, the workflow updates the specific Notion database page identified by the "Issue Key" field in Notion. If the status in Jira is set to "Done", the workflow will mark the Notion database page "Done" field as true. When the issue is deleted in Jira, the workflow archives the Notion database page. Setup This workflow requires that you set up a Notion database. To do so, follow the steps below: In Notion, create a new database. Add the following columns to the database: Done (with type "Checkbox") Title (renamed from "Name") Status (with the following options: "To Do", "In Progress", "Done") Link (with type "URL") Issue ID (with type "Number") Issue Key (with type "Text") Add any other fields you require to the database. Your database should look something like this Share the database to n8n. By default, the workflow will fill all the fields provided above, except for any other additional fields you add.