AutomationFlowsAI & RAG › AI On-Page SEO Audit Workflow

AI On-Page SEO Audit Workflow

Original n8n title: 🤖 On-page SEO Audit

🤖 On-Page SEO Audit. Uses formTrigger, httpRequest, lmChatOpenAi, agent. Event-driven trigger; 12 nodes.

Event trigger★★★★☆ complexityAI-powered12 nodesForm TriggerHTTP RequestOpenAI ChatAgentGmail
AI & RAG Trigger: Event Nodes: 12 Complexity: ★★★★☆ AI nodes: yes Added:

This workflow follows the Agent → Form Trigger recipe pattern — see all workflows that pair these two integrations.

The workflow JSON

Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →

Download .json
{
  "id": "iLpBIRuhpWToO22N",
  "meta": {
    "templateCredsSetupCompleted": true
  },
  "name": "\ud83e\udd16 On-Page SEO Audit",
  "tags": [
    {
      "id": "TF9zcHoRnyCYBNVV",
      "name": "SEO",
      "createdAt": "2025-03-14T12:08:26.948Z",
      "updatedAt": "2025-03-14T12:08:26.948Z"
    }
  ],
  "nodes": [
    {
      "id": "f4a971be-a961-4ad6-b38d-830c5fca5407",
      "name": "Landing Page Url",
      "type": "n8n-nodes-base.formTrigger",
      "position": [
        -180,
        0
      ],
      "parameters": {
        "options": {},
        "formTitle": "Conversion Rate Optimizer",
        "formFields": {
          "values": [
            {
              "fieldLabel": "Landing Page Url",
              "placeholder": "https://yuzuu.co",
              "requiredField": true
            }
          ]
        },
        "formDescription": "Your Landing Page is Leaking Sales\u2014Fix It Now"
      },
      "typeVersion": 2.2
    },
    {
      "id": "e280139f-94b8-49dc-91e7-c6ffa0c04716",
      "name": "Scrape Website",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        20,
        0
      ],
      "parameters": {
        "url": "={{ $json['Landing Page Url'] }}",
        "options": {}
      },
      "typeVersion": 4.2
    },
    {
      "id": "de9ff0da-4ef9-4878-af0d-5733e010402c",
      "name": "OpenAI Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        320,
        20
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4o-mini",
          "cachedResultName": "gpt-4o-mini"
        },
        "options": {}
      },
      "credentials": {
        "openAiApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "25969781-4b1c-42ad-969c-efbb605be9e5",
      "name": "OpenAI Chat Model1",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        360,
        400
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4o-mini",
          "cachedResultName": "gpt-4o-mini"
        },
        "options": {}
      },
      "credentials": {
        "openAiApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "0f135a2d-156c-43ee-b254-581c7d543a8c",
      "name": "Content Audit",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        380,
        200
      ],
      "parameters": {
        "text": "=You are the best SEO Manager in the country\u2014a world-class expert in optimizing websites to rank on Google.\n\nIn this task, you will analyze the content of the webpage and perform a detailed and structured SEO Content Audit.\n\nAudit Structure\nYou will divide your audit in 2 parts:\n- The first part is the Analysis\n- The second is the Recommendations\n\nIn the Analysis, you will include:\n- Content Quality Assessment \u2013 Evaluate the content's overall quality, accuracy, and relevance to the target audience.\n- Keyword Research and Analysis \u2013 Identify primary and secondary keywords, keyword density, and keyword placement strategies.\n- Readability Analysis \u2013 Assess the content's readability score using metrics such as Flesch-Kincaid Grade Level, Flesch Reading Ease, and Gunning-Fog Index.\n\nIn the Recommendations, you will present your recommendations and actionable suggestions in clear, organized bullet points. Recommendations must improve the rankings in Google but also the user engagement. \n\nEnsure the output is properly formatted, clean, and highly readable. Do not include any introductory or explanatory text\u2014only the audit findings.\n\nHere is the content of my landing page: {{ $json.data }}",
        "options": {},
        "promptType": "define"
      },
      "typeVersion": 1.7
    },
    {
      "id": "b693e35c-c0d4-4202-8c5e-2a5646a16cc4",
      "name": "Technical Audit",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        380,
        -200
      ],
      "parameters": {
        "text": "=You are the best SEO Manager in the country\u2014a world-class expert in optimizing websites to rank on Google.\nIn this task, you will analyze the HTML code of a webpage and perform a detailed and structured On-Page Technical SEO Audit.\n\nAudit Structure\nYou will review all technical SEO aspects of the page. Once completed, you will present your findings and recommendations in clear, organized bullet points, categorized into three sections:\n- Critical Issues \u2013 Must be fixed immediately.\n- Quick Wins \u2013 Easy fixes with a big impact.\n- Opportunities for Improvement \u2013 Require more effort but offer potential benefits.\n\nEnsure the output is properly formatted, clean, and highly readable. Do not include any introductory or explanatory text\u2014only the audit findings.\n\nHere is the content of my landing page: {{ $json.data }}",
        "options": {},
        "promptType": "define"
      },
      "typeVersion": 1.7
    },
    {
      "id": "3d172f93-7d94-4a43-9403-5cec799bbe47",
      "name": "Merge",
      "type": "n8n-nodes-base.merge",
      "position": [
        880,
        0
      ],
      "parameters": {},
      "typeVersion": 3,
      "alwaysOutputData": true
    },
    {
      "id": "2081bf62-0e47-497e-8a3e-d30d330f6a9d",
      "name": "Aggregate",
      "type": "n8n-nodes-base.aggregate",
      "position": [
        1080,
        0
      ],
      "parameters": {
        "options": {},
        "fieldsToAggregate": {
          "fieldToAggregate": [
            {
              "fieldToAggregate": "output"
            }
          ]
        }
      },
      "typeVersion": 1
    },
    {
      "id": "e1cfc16e-e0dc-4298-9b94-ffb7f23b45aa",
      "name": "Markdown",
      "type": "n8n-nodes-base.markdown",
      "position": [
        1280,
        0
      ],
      "parameters": {
        "mode": "markdownToHtml",
        "options": {},
        "markdown": "=# On-Page Technical Audit\n{{ $json.output[0] }}\n\n# On-Page SEO Content Audit\n{{ $json.output[1] }}"
      },
      "typeVersion": 1
    },
    {
      "id": "7dc41215-e276-439c-be11-92278b1c3a60",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1360,
        -160
      ],
      "parameters": {
        "color": 3,
        "width": 360,
        "height": 100,
        "content": "## Send Email \nConnect your credentials & Easily send emails from a Gmail address. "
      },
      "typeVersion": 1
    },
    {
      "id": "28aea6bd-beef-4116-97c2-e8b88e96d5ac",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        320,
        -380
      ],
      "parameters": {
        "color": 3,
        "width": 420,
        "height": 140,
        "content": "## Open AI Setup\n- Add your credentials\n- Select o1 model for (way) better results. \n- One run = one page audit = around $0.3 with o1"
      },
      "typeVersion": 1
    },
    {
      "id": "3242a0c3-4439-4ad1-8185-47185046080d",
      "name": "Gmail",
      "type": "n8n-nodes-base.gmail",
      "position": [
        1480,
        0
      ],
      "parameters": {
        "sendTo": "hello@youremail.com",
        "message": "={{ $json.data }}",
        "options": {},
        "subject": "=On-Page SEO Audit -  {{ $('Landing Page Url').item.json['Landing Page Url'] }}"
      },
      "credentials": {
        "gmailOAuth2": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 2.1
    }
  ],
  "active": false,
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "bc4ac79c-71a0-4dae-805d-55b682b0c199",
  "connections": {
    "Merge": {
      "main": [
        [
          {
            "node": "Aggregate",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Markdown": {
      "main": [
        [
          {
            "node": "Gmail",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Aggregate": {
      "main": [
        [
          {
            "node": "Markdown",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Content Audit": {
      "main": [
        [
          {
            "node": "Merge",
            "type": "main",
            "index": 1
          }
        ]
      ]
    },
    "Scrape Website": {
      "main": [
        [
          {
            "node": "Content Audit",
            "type": "main",
            "index": 0
          },
          {
            "node": "Technical Audit",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Technical Audit": {
      "main": [
        [
          {
            "node": "Merge",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Landing Page Url": {
      "main": [
        [
          {
            "node": "Scrape Website",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "OpenAI Chat Model": {
      "ai_languageModel": [
        [
          {
            "node": "Technical Audit",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "OpenAI Chat Model1": {
      "ai_languageModel": [
        [
          {
            "node": "Content Audit",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    }
  }
}

Credentials you'll need

Each integration node will prompt for credentials when you import. We strip credential IDs before publishing — you'll add your own.

Pro

For the full experience including quality scoring and batch install features for each workflow upgrade to Pro

How this works

This workflow delivers a comprehensive on-page SEO audit for any website URL you provide, analysing content quality, technical elements, and optimisation opportunities to boost your search rankings without manual effort. It's ideal for digital marketers, SEO specialists, and small business owners seeking actionable insights to improve visibility on Google. The key step involves scraping the page with HTTP Request, then leveraging OpenAI's chat model and specialised agents to evaluate aspects like keyword usage, meta tags, and page speed, culminating in a merged report sent via Gmail.

Use this workflow when conducting quick audits on individual landing pages or competitor sites to identify low-hanging SEO improvements, especially in event-driven scenarios like post-launch reviews. Avoid it for large-scale site crawls, as it's designed for single URLs rather than bulk analysis; opt for dedicated SEO tools like Ahrefs in those cases. Common variations include customising the AI prompts for niche industries or integrating additional nodes to fetch Google Analytics data for deeper performance context.

About this workflow

🤖 On-Page SEO Audit. Uses formTrigger, httpRequest, lmChatOpenAi, agent. Event-driven trigger; 12 nodes.

Source: https://github.com/Zie619/n8n-workflows — original creator credit. Request a take-down →

More AI & RAG workflows → · Browse all categories →

Related workflows

Workflows that share integrations, category, or trigger type with this one. All free to copy and import.

AI & RAG

22-Automate_Multi_Platform_Social_Media_Content_Creation. Uses outputParserStructured, lmChatGoogleGemini, lmChatOpenAi, httpRequest. Event-driven trigger; 57 nodes.

Output Parser Structured, Google Gemini Chat, OpenAI Chat +11
AI & RAG

This workflow automates end-to-end contract and invoice management using AI intelligence. It processes proposals through intelligent contract generation, approval workflows, and automated invoicing. O

Form Trigger, Data Table, Agent +4
AI & RAG

Automates SaaS operations by consolidating user management, AI-driven support triage, analytics, and billing into one unified system. User signups flow through registration, support requests route via

Form Trigger, Data Table, Agent +7
AI & RAG

The workflow runs every hour with a randomized delay of 5–20 minutes to help distribute load. It records the exact date and time a lead is emailed so you can track outreach. Follow-ups are automatical

Google Sheets, Agent, OpenAI Chat +5
AI & RAG

This n8n workflow automates turning short user ideas into production-ready real-estate marketing assets (photorealistic images and optional 360° videos). A form submission seeds a prompt board → an LL

Form Trigger, Google Sheets, Agent +6