AutomationFlowsAI & RAG › Automated Weekly Tech Stack Reports with Builtwith, Gpt-4o & Gmail

Automated Weekly Tech Stack Reports with Builtwith, Gpt-4o & Gmail

ByYaron Been @yaron-nofluff on n8n.io

Automated weekly report that summarizes technology stack changes, trends, and insights from your tracked companies. Compiles weekly technology updates Highlights significant changes Identifies emerging trends Provides actionable insights Delivers scheduled reports CTOs and…

Cron / scheduled trigger★★★★☆ complexityAI-powered12 nodesOpenAI ChatGoogle SheetsHTTP RequestAgentGmail
AI & RAG Trigger: Cron / scheduled Nodes: 12 Complexity: ★★★★☆ AI nodes: yes Added:

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

This workflow follows the Agent → Gmail 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": "8owN5INh7X8vZtVY",
  "meta": {
    "templateCredsSetupCompleted": true
  },
  "name": "BuiltWith Weekly Summary",
  "tags": [],
  "nodes": [
    {
      "id": "94dc7e06-7eae-429a-a7ac-a732452b430f",
      "name": "Extract Tech Stack Info",
      "type": "n8n-nodes-base.code",
      "position": [
        900,
        0
      ],
      "parameters": {
        "jsCode": "const result = $json.Results?.[0];\nconst domain = result?.Lookup || null;\nconst path = result?.Result?.Paths?.[0];\nconst url = path?.Url || null;\n\nlet extracted = null;\n\n// Loop through Groups to find the first available Tech entry\nfor (const group of path?.Groups || []) {\n  const category = group.Name;\n  const tech = group.Tech?.[0];\n  \n  if (tech) {\n    extracted = {\n      Technology: tech.Name,\n      Category: category,\n      \"First Detected\": tech.FirstDetected,\n      \"Last Detected\": tech.LastDetected,\n      Domain: domain,\n      URL: url\n    };\n    break; // Stop after first match\n  }\n}\n\nreturn extracted ? [extracted] : [];\n"
      },
      "typeVersion": 2
    },
    {
      "id": "609233cd-e8d6-4896-8e63-f065305022e5",
      "name": "OpenAI Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        1200,
        220
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4o-mini"
        },
        "options": {}
      },
      "credentials": {
        "openAiApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "7a9ebaf7-2abf-4e1b-ad9a-bed19adc9bd5",
      "name": "Weekly Trigger",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        180,
        0
      ],
      "parameters": {
        "rule": {
          "interval": [
            {
              "field": "weeks",
              "triggerAtDay": [
                1
              ],
              "triggerAtHour": 9
            }
          ]
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "0750f0ed-8dd0-4a67-815a-dbb6c5d0c45d",
      "name": "Fetch Domain List",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        380,
        0
      ],
      "parameters": {
        "options": {},
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": "gid=0",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1byVKIR8vdDYc8HbrKVlIXw48dVMvcU23SMczwt4E8S8/edit#gid=0",
          "cachedResultName": "Sheet1"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1byVKIR8vdDYc8HbrKVlIXw48dVMvcU23SMczwt4E8S8",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1byVKIR8vdDYc8HbrKVlIXw48dVMvcU23SMczwt4E8S8/edit?usp=drivesdk",
          "cachedResultName": "BuiltWith weekly ecommerce summary"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 4.5
    },
    {
      "id": "d5f6b578-a70f-4768-86c8-76dac077c99a",
      "name": "Get Tech Stack (BuiltWith API)",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        680,
        0
      ],
      "parameters": {
        "url": "https://api.builtwith.com/v21/api.json",
        "options": {},
        "sendQuery": true,
        "queryParameters": {
          "parameters": [
            {
              "name": "KEY",
              "value": "YOUR_API_KEY"
            },
            {
              "name": "LOOKUP",
              "value": "={{ $json['Domain '] }}"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "7a85fed1-df8e-4fb2-bcf9-aed9fdbf86af",
      "name": "Generate Stack Summary (AI)",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        1220,
        0
      ],
      "parameters": {
        "text": "=Provide summary of the data that is scraped from BuiltWith\n\nDomain: {{ $json.Domain }}\nTechnology: {{ $json.Technology }}\nCategory: {{ $json.Category }}\nFirst Detected: {{ $json['First Detected'] }}\nLast Detected: {{ $json['Last Detected'] }}\nURL: {{ $json.URL }}",
        "options": {},
        "promptType": "define"
      },
      "typeVersion": 1.9
    },
    {
      "id": "3057b031-183a-4f84-be77-0ce53418203b",
      "name": "Send Summary Email",
      "type": "n8n-nodes-base.gmail",
      "position": [
        1580,
        0
      ],
      "parameters": {
        "sendTo": "user@example.com",
        "message": "={{ $json.output }}",
        "options": {
          "appendAttribution": false
        },
        "subject": "Weekly BuitlWith Ecommerce Platform Summary",
        "emailType": "text"
      },
      "credentials": {
        "gmailOAuth2": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 2.1
    },
    {
      "id": "fe050e42-81ae-43e2-bb7f-899f9a0f1029",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        120,
        -1380
      ],
      "parameters": {
        "color": 6,
        "width": 440,
        "height": 1560,
        "content": "## \ud83d\udce6 **Section 1: Data Collection Stage**\n\n**(Nodes: 1\ufe0f\u20e3 Schedule Trigger + 2\ufe0f\u20e3 Fetch Domain List)**\n\n### \ud83d\udd01 1. Weekly Automation Trigger\n\n\ud83d\udd58 **Node Name: `Weekly Summary Trigger`**\n\u23f0 **What it does:**\nThis node kicks off the entire workflow **automatically every Monday at 9 AM** \u2014 no manual work needed!\n\n\ud83d\udca1 **Think of it like a morning alarm** for your workflow. Every week, it starts the process so you never forget to analyze the tech stacks again.\n\n---\n\n### \ud83d\udcc4 2. Read Domains from Google Sheets\n\n\ud83d\uddc2\ufe0f **Node Name: `Fetch Domain List`**\n\ud83d\udce5 **What it does:**\nThis node goes into your **Google Sheet** and pulls a list of ecommerce **website domains** (like `nike.com`, `asos.com`, etc.)\n\n\ud83d\udd17 *You just need to keep updating your Google Sheet whenever you want to analyze new ecommerce websites.*\n\n---\n\n### \u2705 **Summary of Section 1:**\n\nThis section **automates the start** and pulls the **input data (website list)** from a central, editable place (Google Sheets).\n\n---\n\n"
      },
      "typeVersion": 1
    },
    {
      "id": "55d142da-8cf6-4f84-bb38-d9311eb8e094",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        620,
        -1380
      ],
      "parameters": {
        "color": 5,
        "width": 440,
        "height": 1560,
        "content": "# \ud83e\udde0 **Section 2: Tech Stack Intelligence Stage**\n\n**(Nodes: 3\ufe0f\u20e3 Get Tech Stack + 4\ufe0f\u20e3 Parse Tech Info)**\n\n### \ud83c\udf10 3. Fetch Tech Stack via BuiltWith\n\n\ud83d\udd27 **Node Name: `Get Tech Stack (BuiltWith API)`**\n\ud83d\udce1 **What it does:**\nThis node sends each domain from the sheet to [BuiltWith](https://builtwith.com) \u2014 a powerful tool that tells you **which technologies** a website is using.\n\n\ud83d\udcac For example:\n`nike.com` \u2192 Shopify, Google Analytics, Facebook Pixel, etc.\n\n\ud83d\udcec It does this using a GET request from BuiltWith\u2019s API endpoint:\n\n```\nGET https://api.builtwith.com/\n```\n\n---\n\n### \ud83e\uddfe 4. Extract Useful Info\n\n\ud83e\uddee **Node Name: `Parse Tech Stack Details`**\n\ud83d\udce4 **What it does:**\nThe raw response from BuiltWith can be messy. This node **cleans up the data** and pulls only what\u2019s **relevant** \u2014 like ecommerce platforms, analytics tools, and payment gateways.\n\n\ud83d\udd0d *It extracts only the gold from the data mine.*\n\n---\n\n### \u2705 **Summary of Section 2:**\n\nThis section **fetches and organizes** advanced tech insights about each ecommerce site. No need for you to visit every site or dig through source code!\n\n---\n\n"
      },
      "typeVersion": 1
    },
    {
      "id": "ddb1135e-3bd4-4b80-aa00-c070ed7722a7",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1120,
        -1100
      ],
      "parameters": {
        "color": 3,
        "width": 620,
        "height": 1460,
        "content": "## \ud83d\udc8c **Section 3: Smart Summary & Delivery**\n\n**(Nodes: 5\ufe0f\u20e3 Generate Stack Summary + 6\ufe0f\u20e3 Send Email)**\n\n### \ud83e\udd16 5. Generate Tech Summary with AI\n\n\ud83e\udde0 **Node Name: `Generate Stack Summary (AI)`**\n\ud83d\udccb **What it does:**\nThis is where the magic happens! It uses **OpenAI Chat Model** to analyze and summarize the tech stack for each domain in **clear, readable language**.\n\n\ud83e\uddd1\u200d\ud83d\udcbb Instead of showing raw JSON or tool names, it says:\n\n> *\u201cNike.com uses Shopify for its storefront, integrates Google Tag Manager for analytics, and uses Klarna for payment processing.\u201d*\n\n\ud83d\udcc8 You can easily forward this to clients, managers, or teammates.\n\n---\n\n### \ud83d\udcec 6. Email the Summary\n\n\ud83d\udce8 **Node Name: `Send Summary Email`**\n\ud83d\udce7 **What it does:**\nFinally, this node **sends the generated summaries via Gmail** to a specified email address \u2014 or even multiple addresses.\n\n\ud83d\udca1 You can customize the subject, recipient list, and message format easily.\n\n---\n\n### \u2705 **Summary of Section 3:**\n\nThis section turns complex data into **natural-language insights** and delivers them **automatically** via email. It's like having your own tech intelligence assistant!\n\n---\n\n"
      },
      "typeVersion": 1
    },
    {
      "id": "b2c9dc89-87f5-4921-8f98-4dd20601e46a",
      "name": "Sticky Note9",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1560,
        -1360
      ],
      "parameters": {
        "color": 4,
        "width": 1300,
        "height": 320,
        "content": "=======================================\n            WORKFLOW ASSISTANCE\n=======================================\nFor any questions or support, please contact:\n    Yaron@nofluff.online\n\nExplore more tips and tutorials here:\n   - YouTube: https://www.youtube.com/@YaronBeen/videos\n   - LinkedIn: https://www.linkedin.com/in/yaronbeen/\n=======================================\n"
      },
      "typeVersion": 1
    },
    {
      "id": "0603059d-4e1b-4fa1-b9c5-17b75a40ba56",
      "name": "Sticky Note4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1560,
        -1020
      ],
      "parameters": {
        "color": 4,
        "width": 1289,
        "height": 3398,
        "content": "## \ud83e\udde9 **Automated Tech Stack Reporting Workflow**\n\n\ud83c\udfaf *Goal: Automatically fetch and summarize the technology stacks of ecommerce domains every week and email the summary.*\n\n---\n\n## \ud83d\udce6 **Section 1: Data Collection Stage**\n\n**(Nodes: 1\ufe0f\u20e3 Schedule Trigger + 2\ufe0f\u20e3 Fetch Domain List)**\n\n### \ud83d\udd01 1. Weekly Automation Trigger\n\n\ud83d\udd58 **Node Name: `Weekly Summary Trigger`**\n\u23f0 **What it does:**\nThis node kicks off the entire workflow **automatically every Monday at 9 AM** \u2014 no manual work needed!\n\n\ud83d\udca1 **Think of it like a morning alarm** for your workflow. Every week, it starts the process so you never forget to analyze the tech stacks again.\n\n---\n\n### \ud83d\udcc4 2. Read Domains from Google Sheets\n\n\ud83d\uddc2\ufe0f **Node Name: `Fetch Domain List`**\n\ud83d\udce5 **What it does:**\nThis node goes into your **Google Sheet** and pulls a list of ecommerce **website domains** (like `nike.com`, `asos.com`, etc.)\n\n\ud83d\udd17 *You just need to keep updating your Google Sheet whenever you want to analyze new ecommerce websites.*\n\n---\n\n### \u2705 **Summary of Section 1:**\n\nThis section **automates the start** and pulls the **input data (website list)** from a central, editable place (Google Sheets).\n\n---\n\n## \ud83e\udde0 **Section 2: Tech Stack Intelligence Stage**\n\n**(Nodes: 3\ufe0f\u20e3 Get Tech Stack + 4\ufe0f\u20e3 Parse Tech Info)**\n\n### \ud83c\udf10 3. Fetch Tech Stack via BuiltWith\n\n\ud83d\udd27 **Node Name: `Get Tech Stack (BuiltWith API)`**\n\ud83d\udce1 **What it does:**\nThis node sends each domain from the sheet to [BuiltWith](https://builtwith.com) \u2014 a powerful tool that tells you **which technologies** a website is using.\n\n\ud83d\udcac For example:\n`nike.com` \u2192 Shopify, Google Analytics, Facebook Pixel, etc.\n\n\ud83d\udcec It does this using a GET request from BuiltWith\u2019s API endpoint:\n\n```\nGET https://api.builtwith.com/\n```\n\n---\n\n### \ud83e\uddfe 4. Extract Useful Info\n\n\ud83e\uddee **Node Name: `Parse Tech Stack Details`**\n\ud83d\udce4 **What it does:**\nThe raw response from BuiltWith can be messy. This node **cleans up the data** and pulls only what\u2019s **relevant** \u2014 like ecommerce platforms, analytics tools, and payment gateways.\n\n\ud83d\udd0d *It extracts only the gold from the data mine.*\n\n---\n\n### \u2705 **Summary of Section 2:**\n\nThis section **fetches and organizes** advanced tech insights about each ecommerce site. No need for you to visit every site or dig through source code!\n\n---\n\n## \ud83d\udc8c **Section 3: Smart Summary & Delivery**\n\n**(Nodes: 5\ufe0f\u20e3 Generate Stack Summary + 6\ufe0f\u20e3 Send Email)**\n\n### \ud83e\udd16 5. Generate Tech Summary with AI\n\n\ud83e\udde0 **Node Name: `Generate Stack Summary (AI)`**\n\ud83d\udccb **What it does:**\nThis is where the magic happens! It uses **OpenAI Chat Model** to analyze and summarize the tech stack for each domain in **clear, readable language**.\n\n\ud83e\uddd1\u200d\ud83d\udcbb Instead of showing raw JSON or tool names, it says:\n\n> *\u201cNike.com uses Shopify for its storefront, integrates Google Tag Manager for analytics, and uses Klarna for payment processing.\u201d*\n\n\ud83d\udcc8 You can easily forward this to clients, managers, or teammates.\n\n---\n\n### \ud83d\udcec 6. Email the Summary\n\n\ud83d\udce8 **Node Name: `Send Summary Email`**\n\ud83d\udce7 **What it does:**\nFinally, this node **sends the generated summaries via Gmail** to a specified email address \u2014 or even multiple addresses.\n\n\ud83d\udca1 You can customize the subject, recipient list, and message format easily.\n\n---\n\n### \u2705 **Summary of Section 3:**\n\nThis section turns complex data into **natural-language insights** and delivers them **automatically** via email. It's like having your own tech intelligence assistant!\n\n---\n\n## \ud83c\udf1f **What Beginners Can Do with This Workflow**\n\n| \ud83d\udee0\ufe0f Use Case            | \u2705 Benefit                                         |\n| ----------------------- | ------------------------------------------------- |\n| \ud83e\uddea **Tech Analysis**    | Learn what tech stacks big ecommerce sites use    |\n| \ud83d\udcca **Client Reporting** | Automatically send insights to stakeholders       |\n| \ud83e\udde0 **AI Integration**   | Understand how LLMs can summarize complex data    |\n| \ud83e\udde9 **Automation**       | Master scheduling, APIs, and data flows           |\n| \ud83d\udcbc **Freelance Growth** | Offer it as a service to marketing or dev clients |\n\n---\n\n## \ud83c\udf08 **Conclusion:**\n\nThis workflow is a **zero-touch**, **AI-powered automation** for ecommerce tech stack analysis that beginners can adopt, modify, and scale for other industries too!\n\n\n"
      },
      "typeVersion": 1
    }
  ],
  "active": false,
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "5f270319-ac54-4ce9-9230-c6debfc01927",
  "connections": {
    "Weekly Trigger": {
      "main": [
        [
          {
            "node": "Fetch Domain List",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Fetch Domain List": {
      "main": [
        [
          {
            "node": "Get Tech Stack (BuiltWith API)",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "OpenAI Chat Model": {
      "ai_languageModel": [
        [
          {
            "node": "Generate Stack Summary (AI)",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Extract Tech Stack Info": {
      "main": [
        [
          {
            "node": "Generate Stack Summary (AI)",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Generate Stack Summary (AI)": {
      "main": [
        [
          {
            "node": "Send Summary Email",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get Tech Stack (BuiltWith API)": {
      "main": [
        [
          {
            "node": "Extract Tech Stack Info",
            "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

Automated weekly report that summarizes technology stack changes, trends, and insights from your tracked companies. Compiles weekly technology updates Highlights significant changes Identifies emerging trends Provides actionable insights Delivers scheduled reports CTOs and…

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

This n8n automation workflow automates the creation, scripting, production, and posting of YouTube videos. It leverages AI (OpenAI), image generation (PIAPI), video rendering (Shotstack), and platform

Agent, OpenAI Chat, Airtable Tool +7
AI & RAG

Created by: Peyton Leveillee Last updated: October 2025

OpenAI Chat, Google Sheets, HTTP Request +5
AI & RAG

The Multi-Model Agency Content Engine is a high-performance editorial system designed for agencies. It solves the "blank page" problem by alternating between real-world social proof and strategic expe

Google Sheets, Gmail, Google Drive +6
AI & RAG

This workflow automates the creation, rendering, approval, and posting of TikTok-style POV (Point of View) videos to Instagram, with cross-posting to Facebook and YouTube. It eliminates manual video p

OpenAI Chat, Output Parser Item List, HTTP Request +10
AI & RAG

SEO Blog Article Generation Workflow. Uses outputParserStructured, httpRequest, agent, lmChatOpenAi. Scheduled trigger; 56 nodes.

Output Parser Structured, HTTP Request, Agent +4