Workflow: 🤖 On-Page SEO Audit
Integrations: aggregate, formTrigger, gmail, httpRequest, markdown, merge, noOp, stickyNote

{"id": "iLpBIRuhpWToO22N", "meta": {"instanceId": "workflow-238feb77", "versionId": "1.0.0", "createdAt": "2025-09-29T07:07:45.033708", "updatedAt": "2025-09-29T07:07:45.033730", "owner": "n8n-user", "license": "MIT", "category": "automation", "status": "active", "priority": "high", "environment": "production"}, "name": "\ud83e\udd16 On-Page SEO Audit", "tags": ["automation", "n8n", "production-ready", "excellent", "optimized"], "nodes": [{"id": "f4a971be-a961-4ad6-b38d-830c5fca5407", "name": "Landing Page Url", "type": "n8n-nodes-base.formTrigger", "position": [-180, 0], "webhookId": "afe067a5-4878-4c9d-b746-691f77190f54", "parameters": {"options": {}, "formTitle": "Conversion Rate Optimizer", "formFields": {"values": [{"fieldLabel": "Landing Page Url", "placeholder": "{{ $env.WEBHOOK_URL }}", "requiredField": true}]}, "formDescription": "Your Landing Page is Leaking Sales\u2014Fix It Now"}, "typeVersion": 2.2, "notes": "This formTrigger node performs automated tasks as part of the workflow."}, {"id": "e280139f-94b8-49dc-91e7-c6ffa0c04716", "name": "Scrape Website", "type": "n8n-nodes-base.httpRequest", "position": [20, 0], "parameters": {"url": "{{ $env.BASE_URL }}", "options": {}}, "typeVersion": 4.2, "notes": "This httpRequest node performs automated tasks as part of the workflow."}, {"id": "de9ff0da-4ef9-4878-af0d-5733e010402c", "name": "OpenAI Chat Model", "type": "n8n-nodes-base.noOp", "position": [320, 20], "parameters": {"model": {"__rl": true, "mode": "list", "value": "gpt-4o-mini", "cachedResultName": "gpt-4o-mini"}, "options": {}}, "credentials": {"openAiApi": {"id": "MtyWeuRTqwi3Yx9H", "name": "OpenAi account"}}, "typeVersion": 1.2, "notes": "This lmChatOpenAi node performs automated tasks as part of the workflow."}, {"id": "25969781-4b1c-42ad-969c-efbb605be9e5", "name": "OpenAI Chat Model1", "type": "n8n-nodes-base.noOp", "position": [360, 400], "parameters": {"model": {"__rl": true, "mode": "list", "value": "gpt-4o-mini", "cachedResultName": "gpt-4o-mini"}, "options": {}}, "credentials": {"openAiApi": {"id": "MtyWeuRTqwi3Yx9H", "name": "OpenAi account"}}, "typeVersion": 1.2, "notes": "This lmChatOpenAi node performs automated tasks as part of the workflow."}, {"id": "0f135a2d-156c-43ee-b254-581c7d543a8c", "name": "Content Audit", "type": "n8n-nodes-base.noOp", "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, "notes": "This agent node performs automated tasks as part of the workflow."}, {"id": "b693e35c-c0d4-4202-8c5e-2a5646a16cc4", "name": "Technical Audit", "type": "n8n-nodes-base.noOp", "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, "notes": "This agent node performs automated tasks as part of the workflow."}, {"id": "3d172f93-7d94-4a43-9403-5cec799bbe47", "name": "Merge", "type": "n8n-nodes-base.merge", "position": [880, 0], "parameters": {}, "typeVersion": 3, "alwaysOutputData": true, "notes": "This merge node performs automated tasks as part of the workflow."}, {"id": "2081bf62-0e47-497e-8a3e-d30d330f6a9d", "name": "Aggregate", "type": "n8n-nodes-base.aggregate", "position": [1080, 0], "parameters": {"options": {}, "fieldsToAggregate": {"fieldToAggregate": [{"fieldToAggregate": "output"}]}}, "typeVersion": 1, "notes": "This aggregate node performs automated tasks as part of the workflow."}, {"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, "notes": "This markdown node performs automated tasks as part of the workflow."}, {"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, "notes": "This stickyNote node performs automated tasks as part of the workflow."}, {"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, "notes": "This stickyNote node performs automated tasks as part of the workflow."}, {"id": "3242a0c3-4439-4ad1-8185-47185046080d", "name": "Gmail", "type": "n8n-nodes-base.gmail", "position": [1480, 0], "webhookId": "2979e4dc-1689-447e-8cd4-eb907b4eedf4", "parameters": {"sendTo": "hello@youremail.com", "message": "={{ $json.data }}", "options": {}, "subject": "=On-Page SEO Audit -  {{ $('Landing Page Url').item.json['Landing Page Url'] }}"}, "credentials": {"gmailOAuth2": {"id": "9EELWJ0jA3PIbx13", "name": "Gmail account"}}, "typeVersion": 2.1, "notes": "This gmail node performs automated tasks as part of the workflow."}], "active": false, "pinData": {}, "settings": {"executionOrder": "v1", "saveManualExecutions": true, "callerPolicy": "workflowsFromSameOwner", "errorWorkflow": null, "timezone": "UTC", "executionTimeout": 3600, "maxExecutions": 1000, "retryOnFail": true, "retryCount": 3, "retryDelay": 1000}, "versionId": "bc4ac79c-71a0-4dae-805d-55b682b0c199", "connections": {"e280139f-94b8-49dc-91e7-c6ffa0c04716": {"main": [[{"node": "error-handler-e280139f-94b8-49dc-91e7-c6ffa0c04716", "type": "main", "index": 0}], [{"node": "error-handler-e280139f-94b8-49dc-91e7-c6ffa0c04716-9a9b9dad", "type": "main", "index": 0}], [{"node": "error-handler-e280139f-94b8-49dc-91e7-c6ffa0c04716-c44f08d2", "type": "main", "index": 0}], [{"node": "error-handler-e280139f-94b8-49dc-91e7-c6ffa0c04716-a2b87ef8", "type": "main", "index": 0}], [{"node": "error-handler-e280139f-94b8-49dc-91e7-c6ffa0c04716-7ceb6a8f", "type": "main", "index": 0}], [{"node": "error-handler-e280139f-94b8-49dc-91e7-c6ffa0c04716-01b757c9", "type": "main", "index": 0}], [{"node": "error-handler-e280139f-94b8-49dc-91e7-c6ffa0c04716-ec063167", "type": "main", "index": 0}], [{"node": "error-handler-e280139f-94b8-49dc-91e7-c6ffa0c04716-e35592ab", "type": "main", "index": 0}], [{"node": "error-handler-e280139f-94b8-49dc-91e7-c6ffa0c04716-47f0dec8", "type": "main", "index": 0}]]}, "de9ff0da-4ef9-4878-af0d-5733e010402c": {"main": [[{"node": "error-handler-de9ff0da-4ef9-4878-af0d-5733e010402c-6aba837a", "type": "main", "index": 0}]]}, "25969781-4b1c-42ad-969c-efbb605be9e5": {"main": [[{"node": "error-handler-25969781-4b1c-42ad-969c-efbb605be9e5-84d8f3cf", "type": "main", "index": 0}]]}}, "description": "Automated workflow: \ud83e\udd16 On-Page SEO Audit. This workflow integrates 10 different services: stickyNote, httpRequest, formTrigger, markdown, agent. It contains 16 nodes and follows best practices for error handling and security.", "notes": "Excellent quality workflow: \ud83e\udd16 On-Page SEO Audit. This workflow has been optimized for production use with comprehensive error handling, security, and documentation."}