This workflow corresponds to n8n.io template #8757 — we link there as the canonical source.
This workflow follows the Emailsend → 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 →
{
"meta": {
"templateCredsSetupCompleted": true
},
"nodes": [
{
"id": "e35fb337-0724-4e36-9d0e-1d064df566f7",
"name": "On form submission",
"type": "n8n-nodes-base.formTrigger",
"position": [
0,
0
],
"parameters": {
"options": {},
"formTitle": "Website Traffic Checker",
"formFields": {
"values": [
{
"fieldLabel": "Domain",
"requiredField": true
}
]
}
},
"typeVersion": 2.2
},
{
"id": "20601b36-f688-4241-901f-92a606ff3a56",
"name": "Set Domain Value",
"type": "n8n-nodes-base.set",
"position": [
208,
0
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "2119e477-af9d-4cb1-8729-2e62c8ffd23e",
"name": "Domain",
"type": "string",
"value": "={{ $json.Domain }}"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "d6b3586a-136f-436d-a0b4-d2a3eaeb7715",
"name": "Check Website Traffic API",
"type": "n8n-nodes-base.httpRequest",
"position": [
464,
0
],
"parameters": {
"url": "https://website-traffic-checker-ahref.p.rapidapi.com/check-traffic.php",
"method": "POST",
"options": {
"response": {
"response": {
"fullResponse": true
}
}
},
"sendBody": true,
"contentType": "multipart-form-data",
"sendHeaders": true,
"bodyParameters": {
"parameters": [
{
"name": "domain",
"value": "={{ $json.Domain }}"
}
]
},
"headerParameters": {
"parameters": [
{
"name": "x-rapidapi-host",
"value": "website-traffic-checker-ahref.p.rapidapi.com"
},
{
"name": "x-rapidapi-key",
"value": "your key"
}
]
}
},
"typeVersion": 4.2,
"alwaysOutputData": true
},
{
"id": "59a6d92f-39b2-48b9-83db-96300ebe5cfc",
"name": "Check if API Call Succeeded",
"type": "n8n-nodes-base.if",
"position": [
784,
0
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "d8ec3848-a4b9-47f1-bbf7-4097c45aa97e",
"operator": {
"type": "number",
"operation": "equals"
},
"leftValue": "={{ $json.statusCode }}",
"rightValue": 200
}
]
}
},
"typeVersion": 2.2
},
{
"id": "035c2cd8-5681-455a-9cb3-57e9b4328805",
"name": "Send Failure Email Alert",
"type": "n8n-nodes-base.emailSend",
"position": [
1088,
464
],
"parameters": {
"html": "=Dear Team,\n\nThis is to inform you that the system failed to retrieve data for: {{ $('Set Domain Value').item.json.Domain }}.\n\nStatus Code: {{ $json.statusCode }}\n\nKindly take note of this issue and do the needful at the earliest.\n\nRegards, \nn8n Automation\n",
"options": {},
"subject": "=Failed to Retrieve Data for - {{ $('Set Domain Value').item.json.Domain }}",
"toEmail": "user@example.com",
"fromEmail": "user@example.com"
},
"credentials": {
"smtp": {
"name": "<your credential>"
}
},
"typeVersion": 2.1
},
{
"id": "55b516b2-065e-4f2b-bf45-f6d776d16392",
"name": "Extract Backlink Info",
"type": "n8n-nodes-base.code",
"position": [
1072,
-128
],
"parameters": {
"jsCode": "return $input.first().json.body.backlinks_info;"
},
"typeVersion": 2
},
{
"id": "abfddbea-a012-41e2-b52a-0a88771ea9c7",
"name": "Log Backlinks to Sheet",
"type": "n8n-nodes-base.googleSheets",
"position": [
1440,
-128
],
"parameters": {
"columns": {
"value": {
"ascore": "={{ $json.data.ascore }}",
"website": "={{ $('Set Domain Value').item.json.Domain }}",
"total backlinks": "={{ $json.data.total }}",
"referring domain": "={{ $json.data.domains }}"
},
"schema": [
{
"id": "website",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "website",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "ascore",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "ascore",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "referring domain",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "referring domain",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "total backlinks",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "total backlinks",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "append",
"sheetName": {
"__rl": true,
"mode": "list",
"value": "gid=0",
"cachedResultUrl": "",
"cachedResultName": "Backlink Info"
},
"documentId": {
"__rl": true,
"mode": "url",
"value": ""
},
"authentication": "serviceAccount"
},
"credentials": {
"googleApi": {
"name": "<your credential>"
}
},
"typeVersion": 4.7
},
{
"id": "23991e01-055f-45ae-ae78-b3d1ea59b6f3",
"name": "Extract Traffic Info",
"type": "n8n-nodes-base.code",
"position": [
1344,
224
],
"parameters": {
"jsCode": "return $input.first().json.body.traffic_analysis;"
},
"typeVersion": 2
},
{
"id": "35bd8043-541c-43e9-a8ee-68b1e9ae7194",
"name": "Log Traffic to Sheet",
"type": "n8n-nodes-base.googleSheets",
"position": [
1776,
368
],
"parameters": {
"columns": {
"value": {},
"schema": [
{
"id": "accuracy",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "accuracy",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "bounce_rate",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "bounce_rate",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "desktop_share",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "desktop_share",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "direct",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "direct",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "display_ad",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "display_ad",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "display_date",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "display_date",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "mail",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "mail",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "mobile_share",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "mobile_share",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "pages_per_visit",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "pages_per_visit",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "paid",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "paid",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "prev_bounce_rate",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "prev_bounce_rate",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "prev_direct",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "prev_direct",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "prev_display_ad",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "prev_display_ad",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "prev_mail",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "prev_mail",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "prev_pages_per_visit",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "prev_pages_per_visit",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "prev_referral",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "prev_referral",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "prev_search_organic",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "prev_search_organic",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "prev_search_paid",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "prev_search_paid",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "prev_social_organic",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "prev_social_organic",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "prev_social_paid",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "prev_social_paid",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "prev_time_on_site",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "prev_time_on_site",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "prev_users",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "prev_users",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "prev_visits",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "prev_visits",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "rank",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "rank",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "referral",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "referral",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "search",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "search",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "search_organic",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "search_organic",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "search_paid",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "search_paid",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "social",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "social",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "social_organic",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "social_organic",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "social_paid",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "social_paid",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "target",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "target",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "time_on_site",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "time_on_site",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "unknown_channel",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "unknown_channel",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "users",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "users",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "visits",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "visits",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "autoMapInputData",
"matchingColumns": [],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "append",
"sheetName": {
"__rl": true,
"mode": "list",
"value": 1530109257,
"cachedResultUrl": "",
"cachedResultName": "Traffic Data"
},
"documentId": {
"__rl": true,
"mode": "url",
"value": ""
},
"authentication": "serviceAccount"
},
"credentials": {
"googleApi": {
"name": "<your credential>"
}
},
"typeVersion": 4.7
},
{
"id": "6678ef4e-aedc-4a23-8444-f9ccc4272cfb",
"name": "Sticky Note",
"type": "n8n-nodes-base.stickyNote",
"position": [
-96,
-160
],
"parameters": {
"height": 304,
"content": "Triggers the workflow when a user submits a form with a domain name.\nCaptures the input field Domain as required."
},
"typeVersion": 1
},
{
"id": "cd942b09-5757-4789-b5d0-289ad83628a6",
"name": "Sticky Note1",
"type": "n8n-nodes-base.stickyNote",
"position": [
160,
-160
],
"parameters": {
"height": 304,
"content": "Stores the submitted domain value into a variable Domain for reuse.\nEnsures consistent referencing throughout the workflow."
},
"typeVersion": 1
},
{
"id": "13ada3da-5313-4bdf-8625-2eabb8e09b44",
"name": "Sticky Note2",
"type": "n8n-nodes-base.stickyNote",
"position": [
416,
-160
],
"parameters": {
"height": 304,
"content": "Sends a POST request to the RapidAPI endpoint with the submitted domain.\nIncludes required headers and multipart form data for API compatibility."
},
"typeVersion": 1
},
{
"id": "b5a992d1-d024-40ce-a2a8-075e4b1ca3c9",
"name": "Sticky Note3",
"type": "n8n-nodes-base.stickyNote",
"position": [
672,
-160
],
"parameters": {
"height": 304,
"content": "Checks if the API response returned HTTP status code 200.\nBranches based on whether the call was successful or failed."
},
"typeVersion": 1
},
{
"id": "217c0e5a-b6be-4727-ab2d-473701b617be",
"name": "Sticky Note4",
"type": "n8n-nodes-base.stickyNote",
"position": [
1008,
304
],
"parameters": {
"height": 320,
"content": "Sends an email alert if the API call fails.\nIncludes the failed domain and HTTP status code in the message."
},
"typeVersion": 1
},
{
"id": "61d200d6-be52-45b7-8bb6-dea56b990f71",
"name": "Sticky Note5",
"type": "n8n-nodes-base.stickyNote",
"position": [
992,
-272
],
"parameters": {
"height": 288,
"content": "Extracts the backlinks_info object from the API response body.\nThis data will be logged to the backlinks sheet."
},
"typeVersion": 1
},
{
"id": "5c01e269-2126-433e-83de-8c724cef80ee",
"name": "Sticky Note6",
"type": "n8n-nodes-base.stickyNote",
"position": [
1376,
-288
],
"parameters": {
"height": 304,
"content": "Appends backlink-related data to the \"Backlink Info\" sheet.\nLogs values like ascore, referring domains, and total backlinks."
},
"typeVersion": 1
},
{
"id": "ef3260d7-50df-489f-80ed-680a4b7e79af",
"name": "Sticky Note7",
"type": "n8n-nodes-base.stickyNote",
"position": [
1296,
96
],
"parameters": {
"height": 256,
"content": "Extracts traffic_analysis data from the API response body.\nPrepares traffic metrics for logging."
},
"typeVersion": 1
},
{
"id": "674fdc56-0348-4fc4-8183-75d3baf238ef",
"name": "Sticky Note8",
"type": "n8n-nodes-base.stickyNote",
"position": [
1680,
272
],
"parameters": {
"height": 256,
"content": "Appends website traffic data to the \"Traffic Data\" sheet.\nAutomatically maps fields from the API response to sheet columns."
},
"typeVersion": 1
},
{
"id": "6d342474-b007-495c-801d-b59d28bb227b",
"name": "Sticky Note9",
"type": "n8n-nodes-base.stickyNote",
"position": [
-880,
-320
],
"parameters": {
"width": 592,
"height": 784,
"content": "\n### \ud83d\udcc8 **Automated Website Traffic & Backlink Tracker in Google Sheets**\n\n**Description:**\nThis n8n workflow automates the process of checking a website's traffic and backlink data using the RapidAPI \"Website Traffic Checker\" and logs the results into Google Sheets for ongoing monitoring and analysis.\n\n### \ud83d\udd01 **Workflow Summary:**\n\n1. **User Input:**\n A user submits a domain name via a web form (`Form Trigger`).\n\n2. **API Call:**\n The domain is sent to the RapidAPI endpoint using a `POST` request.\n\n3. **Response Handling:**\n\n * \u2705 If the response is successful (`Status Code: 200`):\n\n * Backlink data is extracted and saved to the **Backlink Info** sheet.\n * Traffic metrics are extracted and logged in the **Traffic Data** sheet.\n * \u274c If the API call fails:\n\n * An email alert is triggered, notifying the admin of the failed domain and status code.\n\n---\n\n### \u2705 **Use Case:**\n\nPerfect for SEO professionals, digital marketers, or agencies who want an automated solution to track and log backlink and traffic data for multiple websites into Google Sheets.\n"
},
"typeVersion": 1
}
],
"connections": {
"Set Domain Value": {
"main": [
[
{
"node": "Check Website Traffic API",
"type": "main",
"index": 0
}
]
]
},
"On form submission": {
"main": [
[
{
"node": "Set Domain Value",
"type": "main",
"index": 0
}
]
]
},
"Extract Traffic Info": {
"main": [
[
{
"node": "Log Traffic to Sheet",
"type": "main",
"index": 0
}
]
]
},
"Extract Backlink Info": {
"main": [
[
{
"node": "Log Backlinks to Sheet",
"type": "main",
"index": 0
}
]
]
},
"Send Failure Email Alert": {
"main": [
[]
]
},
"Check Website Traffic API": {
"main": [
[
{
"node": "Check if API Call Succeeded",
"type": "main",
"index": 0
}
]
]
},
"Check if API Call Succeeded": {
"main": [
[
{
"node": "Extract Backlink Info",
"type": "main",
"index": 0
},
{
"node": "Extract Traffic Info",
"type": "main",
"index": 0
}
],
[
{
"node": "Send Failure Email Alert",
"type": "main",
"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.
googleApismtp
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
Track website traffic and backlinks effortlessly using the Website Traffic Checker - Ahref API. This n8n workflow automates data retrieval and logging into Google Sheets, making it perfect for SEO professionals and digital marketers. Accepts a domain via a simple web form. Sends…
Source: https://n8n.io/workflows/8757/ — original creator credit. Request a take-down →
Related workflows
Workflows that share integrations, category, or trigger type with this one. All free to copy and import.
Description: Easily automate your YouTube video giveaways using n8n and the YouTube Comments Scraper API. This workflow fetches comments, selects a random winner, logs results to Google Sheets, and no
Overview 🌐
Splitout Code. Uses splitOut, httpRequest, googleSheets, stickyNote. Event-driven trigger; 36 nodes.
This n8n workflow is designed for Customer Success Managers (CSM), marketers, sales teams, and data administrators who need to automate the process of uploading and processing CSV data in HubSpot. It
The SEO On Page API is a powerful tool for keyword research, competitor analysis, backlink insights, and overall SEO optimization. With multiple endpoints, you can instantly gather actionable SEO data