AutomationFlowsData & Sheets › Analyze Website Backlinks with Top Backlink Checker API and Google Sheets…

Analyze Website Backlinks with Top Backlink Checker API and Google Sheets…

Original n8n title: Analyze Website Backlinks with Top Backlink Checker API and Google Sheets Logging

BySk developer @skdeveloper on n8n.io

This workflow helps you analyze top backlinks using Semrush API and logs the results directly into Google Sheets for easy SEO tracking and reporting. It integrates the Top Backlink Checker API from RapidAPI, providing in-depth backlink analysis, and combines that with Google…

Event trigger★★★★☆ complexity13 nodesForm TriggerHTTP RequestGoogle Sheets
Data & Sheets Trigger: Event Nodes: 13 Complexity: ★★★★☆ Added:

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

This workflow follows the Form Trigger → 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": "55979fca-6abb-43f2-af9a-59f2cacaeb51",
      "name": "On form submission",
      "type": "n8n-nodes-base.formTrigger",
      "position": [
        0,
        0
      ],
      "parameters": {
        "options": {},
        "formTitle": "website backlink checker",
        "formFields": {
          "values": [
            {
              "fieldLabel": "website",
              "requiredField": true
            }
          ]
        },
        "formDescription": "website backlink checker"
      },
      "typeVersion": 2.2
    },
    {
      "id": "00963262-4328-4998-a996-b12d98f1badb",
      "name": "Re format output",
      "type": "n8n-nodes-base.code",
      "position": [
        560,
        0
      ],
      "parameters": {
        "jsCode": "return $input.first().json.data.semrushAPI.backlinksOverview"
      },
      "typeVersion": 2
    },
    {
      "id": "2ec4b6b3-d8e0-4afd-8230-05604e85a258",
      "name": "Check webTraffic",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        300,
        0
      ],
      "parameters": {
        "url": "https://top-backlink-checker.p.rapidapi.com/backlink.php",
        "method": "POST",
        "options": {},
        "sendBody": true,
        "contentType": "multipart-form-data",
        "sendHeaders": true,
        "bodyParameters": {
          "parameters": [
            {
              "name": "website",
              "value": "={{ $json.website }}"
            }
          ]
        },
        "headerParameters": {
          "parameters": [
            {
              "name": "x-rapidapi-host",
              "value": "top-backlink-checker.p.rapidapi.com"
            },
            {
              "name": "x-rapidapi-key",
              "value": "your key"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "8d668a57-48db-4aec-b233-534ffdd89c44",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        480,
        -200
      ],
      "parameters": {
        "height": 380,
        "content": "### 3. **Re format output**  \nExtracts and reformats the relevant traffic data from the API response.  \nCleans the raw data for easier processing and usage.\n"
      },
      "typeVersion": 1
    },
    {
      "id": "493ee398-972d-4a0b-b4ee-407ce2eeffc0",
      "name": "Reformat",
      "type": "n8n-nodes-base.code",
      "position": [
        580,
        360
      ],
      "parameters": {
        "jsCode": "return $input.first().json.data.semrushAPI.backlinks;"
      },
      "typeVersion": 2
    },
    {
      "id": "47be20f6-5340-4d42-af21-bff7faf046ec",
      "name": "Backlink overview",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        800,
        0
      ],
      "parameters": {
        "columns": {
          "value": {},
          "schema": [],
          "mappingMode": "autoMapInputData",
          "matchingColumns": [],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "append",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": 275308757,
          "cachedResultUrl": "",
          "cachedResultName": "backlink overview"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "",
          "cachedResultUrl": "",
          "cachedResultName": "Seo n8n"
        },
        "authentication": "serviceAccount"
      },
      "credentials": {
        "googleApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 4.6
    },
    {
      "id": "2273488d-2ac3-404a-8708-cc032fe3be62",
      "name": "Backlinks",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        1160,
        320
      ],
      "parameters": {
        "columns": {
          "value": {},
          "schema": [
            {
              "id": "targetUrl",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "targetUrl",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "sourceUrl",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "sourceUrl",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "sourceTitle",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "sourceTitle",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "pageAscore",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "pageAscore",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "lastSeen",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "lastSeen",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "internalNum",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "internalNum",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "firstSeen",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "firstSeen",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "externalNum",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "externalNum",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "anchor",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "anchor",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "nofollow",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "nofollow",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "autoMapInputData",
          "matchingColumns": [],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "append",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": 1521883577,
          "cachedResultUrl": "",
          "cachedResultName": "backlinks"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "",
          "cachedResultUrl": "",
          "cachedResultName": "Seo n8n"
        },
        "authentication": "serviceAccount"
      },
      "credentials": {
        "googleApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 4.6
    },
    {
      "id": "cec213c8-02b4-4d58-bc07-e3fb841f0c18",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -660,
        -440
      ],
      "parameters": {
        "width": 480,
        "height": 1000,
        "content": "# SEO-Friendly Title:\n**Backlink Checker with Google Sheets Logging Using Semrush API**\n\n### Description:\nThis workflow helps you monitor website traffic and analyze backlinks using **Semrush API** and logs the results directly into **Google Sheets** for easy SEO tracking and reporting.\n\n## Node-by-Node Explanation:\n\n### 1. **On form submission**\nCaptures the website URL submitted by the user through a form.  \nTriggers the workflow when the form is filled with a website URL.\n\n### 2. **Check webTraffic**\nSends a request to the **Semrush API** to gather traffic data for the submitted website.  \nFetches the website's traffic information such as visits, bounce rate, and more.\n\n### 3. **Re format output**\nExtracts and re-formats the traffic data received from the **Semrush API**.  \nCleans and structures the raw data for easier processing.\n\n### 4. **Reformat**\nProcesses the backlinks data received from the **Semrush API**.  \nReformats and structures the backlink data for Google Sheets storage.\n\n### 5. **Backlink overview**\nAppends the re-formatted backlink overview data into a **Google Sheets** document.  \nStores backlink information like source URLs, anchor texts, and more for later analysis.\n\n### 6. **Backlinks**\nAppends detailed backlink data (such as target URL, anchor, and internal/external links) into **Google Sheets**.  \nHelps track individual backlinks, their attributes, and page scores.\n"
      },
      "typeVersion": 1
    },
    {
      "id": "0f516194-3c23-446e-9048-a48183655b65",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -60,
        -200
      ],
      "parameters": {
        "height": 400,
        "content": "### 1. **On form submission**\nCaptures the website URL submitted by the user through a form.  \nTriggers the workflow when the form is filled with a website URL.\n"
      },
      "typeVersion": 1
    },
    {
      "id": "2d1cbb57-4a63-4818-bb60-1fcdc60f88a4",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        520,
        200
      ],
      "parameters": {
        "height": 320,
        "content": "### 4. **Reformat**\nProcesses the backlinks data received from the **Semrush API**.  \nReformats and structures the backlink data for Google Sheets storage."
      },
      "typeVersion": 1
    },
    {
      "id": "83223c0c-4456-49cd-86df-19ddf160dc59",
      "name": "Sticky Note4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        200,
        -200
      ],
      "parameters": {
        "height": 380,
        "content": "### 2. **Check webTraffic**\nSends a request to the **Semrush API** to gather traffic data for the submitted website.  \nFetches the website's traffic information such as visits, bounce rate, and more.\n"
      },
      "typeVersion": 1
    },
    {
      "id": "2eae1984-86f5-47e6-9dbd-07499e79d0bb",
      "name": "Sticky Note5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        740,
        -200
      ],
      "parameters": {
        "height": 360,
        "content": "### 5. **Backlink overview**\nAppends the re-formatted backlink overview data into a **Google Sheets** document.  \nStores backlink information like source URLs, anchor texts, and more for later analysis.\n"
      },
      "typeVersion": 1
    },
    {
      "id": "81ae528a-c410-4e94-96df-504e9d47fc3b",
      "name": "Sticky Note6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1100,
        120
      ],
      "parameters": {
        "height": 340,
        "content": "### 6. **Backlinks**\nAppends detailed backlink data (such as target URL, anchor, and internal/external links) into **Google Sheets**.  \nHelps track individual backlinks, their attributes, and page scores.\n"
      },
      "typeVersion": 1
    }
  ],
  "connections": {
    "Reformat": {
      "main": [
        [
          {
            "node": "Backlinks",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Check webTraffic": {
      "main": [
        [
          {
            "node": "Re format output",
            "type": "main",
            "index": 0
          },
          {
            "node": "Reformat",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Re format output": {
      "main": [
        [
          {
            "node": "Backlink overview",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "On form submission": {
      "main": [
        [
          {
            "node": "Check webTraffic",
            "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.

Pro

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

About this workflow

This workflow helps you analyze top backlinks using Semrush API and logs the results directly into Google Sheets for easy SEO tracking and reporting. It integrates the Top Backlink Checker API from RapidAPI, providing in-depth backlink analysis, and combines that with Google…

Source: https://n8n.io/workflows/7461/ — original creator credit. Request a take-down →

More Data & Sheets workflows → · Browse all categories →

Related workflows

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

Data & Sheets

Overview 🌐

Form Trigger, HTTP Request, Google Sheets
Data & Sheets

Splitout Code. Uses splitOut, httpRequest, googleSheets, stickyNote. Event-driven trigger; 36 nodes.

HTTP Request, Google Sheets, Form Trigger +1
Data & Sheets

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

HTTP Request, Google Sheets, Form Trigger +1
Data & Sheets

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

Form Trigger, HTTP Request, Google Sheets
Data & Sheets

Demonstration video

Form Trigger, HTTP Request, Google Sheets