AutomationFlowsAI & RAG › SEO Faq Generator for Websites Using Gpt 5 Nano and Google Sheets

SEO Faq Generator for Websites Using Gpt 5 Nano and Google Sheets

ByOriol Seguí @oxsr11 on n8n.io

This workflow is designed for SEO professionals, digital agencies, content creators, and WordPress site owners who want to improve their search engine rankings automatically. It’s also perfect for curious automation enthusiasts, who want to explore how AI and n8n can work…

Event trigger★★★★★ complexityAI-powered35 nodesOpenAIGoogle SheetsXMLHTTP RequestStop And ErrorGmail
AI & RAG Trigger: Event Nodes: 35 Complexity: ★★★★★ AI nodes: yes Added:

This workflow corresponds to n8n.io template #8659 — we link there as the canonical source.

This workflow follows the Gmail → Google Sheets 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
{
  "meta": {
    "templateCredsSetupCompleted": true
  },
  "nodes": [
    {
      "id": "132a8da9-a5e0-434b-85f1-7e701fa51fd3",
      "name": "MANUAL",
      "type": "n8n-nodes-base.manualTrigger",
      "position": [
        -2320,
        224
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "d6841b56-fd4f-495f-ac4d-1b1b15e32294",
      "name": "Selected",
      "type": "n8n-nodes-base.code",
      "position": [
        -1552,
        320
      ],
      "parameters": {},
      "typeVersion": 2
    },
    {
      "id": "fd6ead22-cc36-4c9a-92b9-122958498ff1",
      "name": "Split Out",
      "type": "n8n-nodes-base.splitOut",
      "position": [
        -1328,
        320
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "2494e3a8-a9c6-4932-beb4-eb77ad1ee6b6",
      "name": "Split Out1",
      "type": "n8n-nodes-base.splitOut",
      "onError": "continueRegularOutput",
      "position": [
        -256,
        400
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "e608a7ae-3507-41e5-8bbd-8e8cb40bc770",
      "name": "meta descr and title gen",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "onError": "continueErrorOutput",
      "position": [
        1344,
        1040
      ],
      "parameters": {},
      "retryOnFail": true,
      "typeVersion": 1.8
    },
    {
      "id": "0a4a032f-66fe-4277-a530-94af9b1e96c7",
      "name": "OPTIONS",
      "type": "n8n-nodes-base.set",
      "position": [
        -1792,
        320
      ],
      "parameters": {},
      "typeVersion": 3.4
    },
    {
      "id": "a8dc8f78-323d-4138-8927-1cd66105fb4e",
      "name": "Append row in db",
      "type": "n8n-nodes-base.googleSheets",
      "onError": "continueErrorOutput",
      "position": [
        -16,
        144
      ],
      "parameters": {},
      "retryOnFail": true,
      "typeVersion": 4.7,
      "waitBetweenTries": 5000
    },
    {
      "id": "e8da3dac-1b8f-48a1-81a2-ffdfec96626c",
      "name": "Add items DB",
      "type": "n8n-nodes-base.splitInBatches",
      "position": [
        -480,
        128
      ],
      "parameters": {},
      "typeVersion": 3
    },
    {
      "id": "f5f65a1c-4218-4e09-a3de-a052160d6008",
      "name": "Clear",
      "type": "n8n-nodes-base.code",
      "onError": "continueRegularOutput",
      "position": [
        1040,
        896
      ],
      "parameters": {},
      "retryOnFail": true,
      "typeVersion": 2
    },
    {
      "id": "ed9536de-dba9-47ef-a6e3-30f3778a5f9a",
      "name": "XML",
      "type": "n8n-nodes-base.xml",
      "position": [
        -480,
        400
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "6adab82f-3322-4512-91b3-09fa71ffd2d9",
      "name": "Maping Sitemap2",
      "type": "n8n-nodes-base.httpRequest",
      "notes": "It may give an error if the sitemap is not found or if there is more than one sitemap at a time or if it is not WordPress, contact support in case of error or manually enter the sitemap URL.",
      "onError": "continueErrorOutput",
      "position": [
        -784,
        400
      ],
      "parameters": {},
      "typeVersion": 4.2
    },
    {
      "id": "ad661f2a-2697-4dc0-994d-e74b3c14e1e4",
      "name": "Sitemap Error3",
      "type": "n8n-nodes-base.stopAndError",
      "position": [
        -784,
        656
      ],
      "parameters": {},
      "executeOnce": false,
      "typeVersion": 1
    },
    {
      "id": "f86b0805-a666-4cf2-a744-af7e4216ed87",
      "name": "Method",
      "type": "n8n-nodes-base.splitInBatches",
      "position": [
        -1072,
        320
      ],
      "parameters": {},
      "typeVersion": 3
    },
    {
      "id": "40d698ba-2748-4ff3-a982-6090312faf3b",
      "name": "Loop page",
      "type": "n8n-nodes-base.splitInBatches",
      "position": [
        368,
        672
      ],
      "parameters": {},
      "typeVersion": 3
    },
    {
      "id": "b1130127-02e2-4ab0-8df6-5b136716f769",
      "name": "HTTP Req page",
      "type": "n8n-nodes-base.httpRequest",
      "onError": "continueErrorOutput",
      "position": [
        784,
        896
      ],
      "parameters": {},
      "retryOnFail": true,
      "typeVersion": 4.2
    },
    {
      "id": "328570e1-4c98-4be4-a118-a16dcce93af3",
      "name": "Limit",
      "type": "n8n-nodes-base.limit",
      "position": [
        -16,
        400
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "306f47d1-793b-4e29-b561-bad04e4f82c1",
      "name": "Send a message",
      "type": "n8n-nodes-base.gmail",
      "position": [
        240,
        -32
      ],
      "parameters": {},
      "typeVersion": 2.1
    },
    {
      "id": "5b7a2318-7bcd-41c3-90d8-f6b05970877d",
      "name": "Text email",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "notes": "I'm not including an error node here because if the API is incorrect, it would have already failed.",
      "position": [
        -144,
        -32
      ],
      "parameters": {},
      "retryOnFail": true,
      "typeVersion": 1.8
    },
    {
      "id": "f8bb90a9-ae0b-48e4-baab-1cc7bb01d570",
      "name": "Stop and Error",
      "type": "n8n-nodes-base.stopAndError",
      "position": [
        1712,
        1040
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "d9f9b675-a3bc-4877-b5b4-92b68b67e1e6",
      "name": "Schedule Trigger",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        -2320,
        400
      ],
      "parameters": {},
      "typeVersion": 1.2
    },
    {
      "id": "859e44c5-0e3e-4ab1-8958-d52dc810cb0e",
      "name": "Stop and Error1",
      "type": "n8n-nodes-base.stopAndError",
      "notes": "Contact oriolrotllant3@gmail.com if you encounter this error.",
      "position": [
        496,
        896
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "03cf4f8d-64c4-47c4-b009-d68a4af601c6",
      "name": "FAQ Results",
      "type": "n8n-nodes-base.code",
      "position": [
        -784,
        128
      ],
      "parameters": {},
      "typeVersion": 2
    },
    {
      "id": "0f07d0ae-284d-42dd-8ed1-b662c86c4178",
      "name": "Error insert row",
      "type": "n8n-nodes-base.stopAndError",
      "notes": "Contact oriolrotllant3@gmail.com if you encounter this error.",
      "position": [
        240,
        144
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "cceec2aa-c297-4da5-9a7f-8b6aac902e74",
      "name": "UA Rotativo",
      "type": "n8n-nodes-base.code",
      "position": [
        -2032,
        320
      ],
      "parameters": {},
      "typeVersion": 2
    },
    {
      "id": "d7dca72e-53f6-49a0-829f-e363896f89e4",
      "name": "Sticky Note10",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1264,
        -144
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "35c79228-64fb-41a0-85fc-7e09f4602734",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -2320,
        -144
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "e064aa91-e68f-4259-8c85-1c21391bb27a",
      "name": "Sticky Note11",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -2672,
        224
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "6ce80c63-f185-4f6e-8b73-d79a0106459e",
      "name": "Sticky Note12",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1456,
        496
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "cd0dbae3-bd58-4e89-93a3-d75f56d0fa99",
      "name": "Sticky Note13",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        0,
        864
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "d5a44355-10b1-46d9-be6e-55d15c17b94e",
      "name": "Sticky Note14",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        416,
        -32
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "5f360840-5966-461b-88c7-676fe85b4188",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1728,
        -144
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "b269a5db-4b8a-4f32-9be1-0431daae531c",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -2672,
        656
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "938f688c-52f2-4d90-9ebf-b64e2dfdeb12",
      "name": "Sticky Note4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1456,
        960
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "df0fb0fe-bc62-4bae-9e37-abe683603dc8",
      "name": "Sticky Note5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        0,
        1312
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "f20e0067-43dc-4776-9e89-8c3a647204c0",
      "name": "Sticky Note6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        816,
        -32
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    }
  ],
  "connections": {
    "XML": {
      "main": [
        [
          {
            "node": "Split Out1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Clear": {
      "main": [
        [
          {
            "node": "meta descr and title gen",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Limit": {
      "main": [
        [
          {
            "node": "Loop page",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "MANUAL": {
      "main": [
        [
          {
            "node": "UA Rotativo",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Method": {
      "main": [
        [
          {
            "node": "FAQ Results",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Maping Sitemap2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "OPTIONS": {
      "main": [
        [
          {
            "node": "Selected",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Selected": {
      "main": [
        [
          {
            "node": "Split Out",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Loop page": {
      "main": [
        [
          {
            "node": "Method",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "HTTP Req page",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Split Out": {
      "main": [
        [
          {
            "node": "Method",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Split Out1": {
      "main": [
        [
          {
            "node": "Limit",
            "type": "main",
            "index": 0
          }
        ],
        []
      ]
    },
    "Text email": {
      "main": [
        [
          {
            "node": "Send a message",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "FAQ Results": {
      "main": [
        [
          {
            "node": "Add items DB",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "UA Rotativo": {
      "main": [
        [
          {
            "node": "OPTIONS",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Add items DB": {
      "main": [
        [
          {
            "node": "Text email",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Append row in db",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "HTTP Req page": {
      "main": [
        [
          {
            "node": "Clear",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Stop and Error1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Maping Sitemap2": {
      "main": [
        [
          {
            "node": "XML",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Sitemap Error3",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Append row in db": {
      "main": [
        [
          {
            "node": "Add items DB",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Error insert row",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Schedule Trigger": {
      "main": [
        [
          {
            "node": "UA Rotativo",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "meta descr and title gen": {
      "main": [
        [
          {
            "node": "Loop page",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Stop and Error",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
Pro

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

About this workflow

This workflow is designed for SEO professionals, digital agencies, content creators, and WordPress site owners who want to improve their search engine rankings automatically. It’s also perfect for curious automation enthusiasts, who want to explore how AI and n8n can work…

Source: https://n8n.io/workflows/8659/ — 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

Instantly map all internal URLs, perform AI-powered (ChatGPT) analysis, and deliver results in HTML via webhook, Google Sheets, or email. All from your own n8n instance!

OpenAI, HTTP Request, XML +3
AI & RAG

This intelligent email automation workflow helps you maximize engagement through domain-based outreach. It utilizes AI-powered personalization and strategic follow-ups to increase response rates. The

Gmail, HTTP Request, Google Sheets +1
AI & RAG

The AI-Powered Cold Call Machine is a fully automated workflow designed to generate qualified leads from LinkedIn, evaluate them using AI-based scoring, identify key decision-makers, and generate pers

HTTP Request, Google Sheets, OpenAI +1
AI & RAG

Watch on Youtube▶️

HTTP Request, Email Send, Google Sheets +3
AI & RAG

Send a target niche and location via Telegram message Workflow discovers businesses via Google Maps API AI enriches contacts with email and LinkedIn data via Serper GPT-4o scores and qualifies each le

Telegram Trigger, OpenAI, Google Sheets +3