Mindket

Daily competitor signals compared with your company

Newversion 1 · updated

Overview

An n8n workflow that researches each competitor in your Google Sheet every day. Explorium and Tavily feed an agent recent signals, Apify adds LinkedIn and traffic numbers, and gpt-4.1-mini compares them with your company in a short paragraph.

Daily competitor signals compared with your company is an n8n workflow in the Business category, listed by Mindket. It is free. This is version 1, last updated on . Download it on this page or copy its JSON, then import it into an n8n canvas. Nothing runs until you activate it in n8n.

At a glance

Runs in
  • n8n Cloud: import the file, add the credentials and publish
  • Your own n8n server: the same file, with the schedule following the server’s time zone
  • Google Sheets: one new row for each competitor on every run, so the tab becomes a history
  • A chat or email tool: add a node after Append row in sheet to send each insight on

Platform

Connects 5 apps

How it works

Trigger

Daily schedule

It starts on a schedule, daily at midnight until you set a time, and works through the Competitor details tab, each row with:

  • A company name
  • A company domain

Actions

  1. Reads the competitors in Competitor details and takes them one at a time
  2. An agent gathers the past week’s signals through Explorium and finds the LinkedIn page with Tavily
  3. Apify returns the LinkedIn follower and staff counts and an organic traffic figure
  4. A second agent sets those findings against the first row of My company
  5. The findings and a paragraph of insight are added as a new row in Competitor analysis

Result

A Competitor analysis tab that gains a row for each rival on every run, ending in a written comparison with your company

Integrations

What you need before you start.

Google Sheets

Spreadsheet

Holds your list of competitors and your own figures, and takes a new row of findings for each competitor.

NeedsA Google account to sign in with, and a sheet with three tabs

OpenAI

Language model

Runs gpt-4.1-mini for the research agent, its parser and the agent that writes the comparison.

NeedsOpenAI API key

Explorium

Company data

Gives the research agent its business matching and enrichment tools through an MCP server.

NeedsAn Explorium account with credit, and a token for its MCP server

Tavily

Web search

Searches linkedin.com so the agent can name each company’s LinkedIn page.

NeedsTavily API key, typed into the node’s header

Apify

Scraping

Runs two Actors: one reads the LinkedIn page for followers and staff, the other reads the domain’s organic traffic.

NeedsApify API token, typed into both nodes’ headers, and credit for the results

Workflow check

Checked by Mindket on 13 Nov 2026

Steps
11 steps, starting on a schedule
AI
2 steps call an AI model: AI Agent and Insights
Sign-ins
Signs in to: Google Sheets, OpenAI and Apify
API keys
No API key is left in the file; 1 blank in it for your own key
Step types
Mindket’s checker reads all 7 of its step types

Read from the workflow’s file, not from a run.

About

What it is

This n8n workflow checks on your competitors every day and writes a comparison with your own company into Google Sheets. It reads a list of company names and domains from one tab. For each one, an AI agent asks Explorium for the past week’s signals: content, ads, product launches, partnerships, press and changes to the tech stack. Tavily finds the company’s LinkedIn page. Two Apify Actors then fetch the follower and staff counts and a traffic figure, and a second agent sets all of it against your own figures in a paragraph. Fifteen nodes run it. Nothing is sent.

Who it suits

Founders, product marketers and agency strategists who watch a short list of rivals and want a running record in a sheet. Keep the list short, since every company costs several paid calls on each run. Skip it if you want an alert the moment a rival changes something. It only writes rows.

Who uses it, and how
IndustryWho uses itHow they use itExample
Software and SaaSProduct marketersList the closest rivals and read the new rows each MondayA product marketer spots a rival’s new integration in the sheet before the sales team hears of it.
Online retailBrand managersFill My company with their own followers and traffic, so each comparison has a baselineA skincare brand sets its LinkedIn following against three larger rivals.
Marketing agenciesAccount strategistsKeep one sheet for each client, with the client’s figures in My companyA strategist pastes the latest insight paragraphs into a client’s monthly report.
B2B servicesFounders of consultanciesSwitch the schedule to weekly and track the firms they compete with for bidsA founder sees a rival’s run of press coverage before a large pitch.

You need some n8n and five accounts: OpenAI, Explorium, Tavily, Apify and Google. Its author puts setup at about 15 minutes, which assumes the accounts and the sheet already exist.

Where to use it

Any n8n that can reach OpenAI, Explorium, Tavily, Apify and Google will run it. Keep it published. A workflow that is not published never fires on its schedule.

  • n8n Cloud: import the file, add the credentials and publish
  • Your own n8n server: the same file, with the schedule following the server’s time zone
  • Google Sheets: one new row for each competitor on every run, so the tab becomes a history
  • A chat or email tool: add a node after Append row in sheet to send each insight on

Setup

Get it saves a zip with workflow.json and Mindket’s setup notes in your downloads folder. Make the sheet first, since three nodes point at it.

What you need first
NeedDetail
n8nOn n8n Cloud or on a server of your own
OpenAIAn API key that can use gpt-4.1-mini
ExploriumAn account with credit, and a token its MCP server accepts
TavilyAn account and its API key, for the LinkedIn search
ApifyAn account and its API token, with credit for two Actors
GoogleAn account that can edit the sheet, for a Google Sheets OAuth2 credential
A sheetThree tabs: Competitor details, My company and Competitor analysis
The sheet’s three tabs
TabColumns
Competitor detailsCompany name and Company domain, one competitor in each row
My companyYour own figures in the first row under headers you choose, such as LinkedIn followers, staff and monthly visits. Only that row is read
Competitor analysisCompany, Website Traffic Growth, Content Output, Ad Activity, Product Launch Frequency, Partnerships Integrations Added, LinkedIn Followers, Employee Count, Press Mentions PREvents, Technology Stack Changes, Insights
  1. In n8n, create a workflow, open its menu, choose Import from File and pick workflow.json.
  2. Make the sheet with the three tabs, then copy its ID: the long part of its address between /d/ and /edit.
  3. Add a Google Sheets OAuth2 credential. In Get row(s) in sheet, Get row(s) in sheet1 and Append row in sheet, select it and replace YOUR_SHEET_ID with the ID.
  4. Add an OpenAI credential and select it in OpenAI Chat Model.
  5. Open Explorium, add a Bearer Auth credential with your Explorium token and select it.
  6. In tavilySearch, replace <YOUR_TAVILY_KEY> in the Authorization header with your key. The brackets go too, so the header reads Bearer, a space and the key.
  7. In Linkedin Followers + Employee count and Website visits, replace <YOUR_APIFY_TOKEN> with your Apify token in the same way.
  8. Set a day and an hour in Schedule Trigger, put one competitor in Competitor details and press Execute workflow. Press Publish when the new row looks right.

The file’s Explorium node is an MCP Client Tool of version 1, which speaks only SSE, at https://mcp.explorium.ai/sse. Explorium’s own sign-in page, read on 2 November 2026, names https://mcp.explorium.ai/mcp over HTTP Streamable, signed in with OAuth. Both addresses asked for sign-in when we called them without a token that day. If your token is refused, swap the node for a current MCP Client Tool set up that way and connect it to AI Agent.

How to use it

Keep Competitor details to the companies you want watched, one name and domain to a row. Each run takes them one at a time, and every pass adds a row to Competitor analysis with the agent’s findings, three numbers from Apify and a paragraph of insight. Nothing is overwritten. To change your own baseline, edit the first row of My company.

What to change for a different result
To changeWhere
How often it runsSchedule Trigger, which has no time set in the file and so runs daily at midnight
What the research looks forThe system message of AI Agent and the example in Structured Output Parser, seven fields in both
How far back it looksThe last line of the same system message, which asks for signals from the past week
The comparisonThe system message of Insights, which asks for a paragraph of about 200 words
Columns savedThe mapping in Append row in sheet
ModelOpenAI Chat Model, gpt-4.1-mini for both agents and the parser

Example

You put one rival in Competitor details and your own figures in My company.

Two tabs before a run
TabRow
Competitor detailsCompany name: Northwind Analytics. Company domain: northwind.example
My companyLinkedIn followers: 4,200. Employees: 35. Monthly visits: 18,000

The research agent answers in its parser’s shape, shown here with the content cut:

{
  "contentOutput": "…",
  "adActivity": "…",
  "productLaunches": "…",
  "partnershipsIntegrationsAdded": "…",
  "pressMentionsPREvents": "…",
  "technologyStackChanges": "…",
  "linkedin": "https://www.linkedin.com/company/…"
}

The LinkedIn address goes to the first Actor, which returns the follower count and the company’s size. The domain goes to the second, which returns a traffic history. Insights reads those numbers, the six findings and your row. The new row in Competitor analysis ends with its paragraph, for instance that Northwind posts more often than you but has fewer followers.

For newcomers and experts

If you are new. n8n draws a workflow as boxes joined by lines, and each box, a node, does one job. An agent is a node that picks its own tools, here Explorium and a web search, which hang under it on thin lines. Start with a single competitor. Then open the run under Executions, where each node shows what it received and what it sent, which is where a wrong token or a missing column turns up.

For experts. The research agent gathers words, the two Actors add numbers, and a second agent with no tools writes the comparison.

The calls behind each row
NodeCallWhat to know
ExploriumMCP Client Tool 1, SSE, Bearer AuthThe prompt has the agent match the business first, then call Explorium’s enrichment tools
tavilySearchPOST to Tavily’s searchThe agent writes the whole JSON body. The prompt asks for three results from linkedin.com
Linkedin Followers + Employee countLinkedIn Profile Scraper by anchor on ApifyReads follower_count and the second item of company_size
Website visitsAhrefs Scraper by radeance on Apify, traffic onlyReads organic from the fifth entry of website_traffic_history
Insightsgpt-4.1-mini, with no parserIts input ends with your first My company row as JSON

Both Actors answered when we looked them up on 2 November 2026. Each is called synchronously, and Apify ends such a call after 300 seconds, according to its API reference.

Good to know

It spends money at four vendors. Two of its columns also hold less than their names say.

  • Billing: OpenAI bills two gpt-4.1-mini agent runs for each competitor, plus a repair call whenever the parser rejects a reply. Explorium spends credits on its lookups, Tavily counts each search, and both Actors bill per result on Apify. Start small
  • A retired model: OpenAI shuts down gpt-4.1-mini on 14 January 2027 and names gpt-6-luna as the replacement. Change the model in OpenAI Chat Model before then
  • Explorium credit: its sign-in page offers a free trial of 100 credits and says calls fail once the balance is spent
  • Traffic: Website Traffic Growth gets one organic traffic figure, the fifth entry of the history, not a rate of growth. A young domain may have nothing there
  • Staff: Employee Count takes the second item of the Actor’s company_size, so check in a first run what that item holds
  • Overlap: the prompt asks for the past week while the schedule runs daily, so one piece of news can show up on several days. A weekly schedule matches the prompt
  • History: rows are appended and never updated, so clear old ones when the tab grows long
  • Your data: competitor names and domains go to OpenAI, Explorium, Tavily and Apify, and your first My company row goes to OpenAI
  • Your keys: the Tavily key and the Apify token sit in headers, so take them out before you share the workflow
  • Credentials: the JSON holds none, and nothing from its author’s sheet

README and files

README

Daily competitor signals compared with your company

An n8n workflow that looks at each competitor in a Google Sheet once a day. An AI agent gathers the past week's signals
through Explorium and finds the company's LinkedIn page with Tavily. Two Apify Actors add follower, staff and traffic
numbers, and a second agent compares all of it with your own company in a paragraph. Every run adds one row for each
competitor to the sheet.

What is inside

  • workflow.json: the workflow as n8n exports it, fifteen nodes and no sticky notes. It holds no credential.
  • README.md: these notes.

What we changed from the original copy

  • The author's sheet and its three tab ids are gone. The three Google Sheets nodes ask for YOUR_SHEET_ID and find their
    tab by name: Competitor details, My company or Competitor analysis.
  • The Authorization headers held Bearer <token>. They now read Bearer <YOUR_APIFY_TOKEN> in the two Apify nodes and
    Bearer <YOUR_TAVILY_KEY> in tavilySearch, so you can see which key goes where.
  • The Explorium credential is gone from Explorium. Its address is unchanged.

Before you start

  • An n8n instance, on n8n Cloud or your own server.
  • An OpenAI API key that can use gpt-4.1-mini.
  • An Explorium account with credit, and a token its MCP server accepts.
  • A Tavily account and its API key.
  • An Apify account and its API token, with credit for two Actors.
  • A Google account, and a Google Sheet with three tabs (below).

Set it up

  1. In n8n, create a workflow, open its menu and choose Import from File. Pick workflow.json.
  2. Make the sheet with the three tabs below, then copy its ID: the long part of its address between /d/ and /edit.
  3. Add a Google Sheets OAuth2 credential. In Get row(s) in sheet, Get row(s) in sheet1 and Append row in sheet,
    select it and replace YOUR_SHEET_ID with the ID.
  4. Add an OpenAI credential and select it in OpenAI Chat Model. The two agents and the parser all use it.
  5. Open Explorium, add a Bearer Auth credential with your Explorium token and select it.
  6. In tavilySearch, replace <YOUR_TAVILY_KEY> in the Authorization header with your key. The brackets go too, so the
    header reads Bearer, a space and the key.
  7. In Linkedin Followers + Employee count and Website visits, replace <YOUR_APIFY_TOKEN> with your Apify token in
    the same way.
  8. Open Schedule Trigger and pick a day and an hour. The file sets none, so it runs daily at midnight.
  9. Put one competitor in Competitor details and press Execute workflow. Press Publish when the new row looks right.

Explorium is an MCP Client Tool of version 1, which only speaks SSE, pointed at https://mcp.explorium.ai/sse with
Bearer Auth. Explorium's own sign-in page, read on 2 November 2026, names https://mcp.explorium.ai/mcp over HTTP
Streamable, signed in with OAuth. Both addresses asked for sign-in when we called them without a token that day. If your
token does not get through, add a fresh MCP Client Tool node. Set its Endpoint to the /mcp address, its transport to
HTTP Streamable and its authentication to MCP OAuth2, then connect it to AI Agent as a tool and delete the old one.

The sheet

| Tab | Columns |
|---|---|
| Competitor details | Company name, Company domain, one competitor in each row |
| My company | Your own figures in the first row, under headers you choose, such as LinkedIn followers, staff and monthly visits. Only that row is read |
| Competitor analysis | Company, Website Traffic Growth, Content Output, Ad Activity, Product Launch Frequency, Partnerships Integrations Added, LinkedIn Followers, Employee Count, Press Mentions PREvents, Technology Stack Changes, Insights |

Spell the headers of the first and last tabs as above, since the nodes match them by name.

How a run goes

  1. Schedule Trigger starts Get row(s) in sheet, which reads every row of Competitor details. Loop Over Items
    hands them on one at a time, and Edit Fields keeps the name and the domain.
  2. AI Agent runs gpt-4.1-mini. Its prompt has it match the business in Explorium, call Explorium's enrichment tools,
    then search linkedin.com through tavilySearch for the company page. It writes the whole Tavily request body itself.
    Structured Output Parser holds its reply to seven fields: contentOutput, adActivity, productLaunches,
    partnershipsIntegrationsAdded, pressMentionsPREvents, technologyStackChanges and linkedin. The prompt asks for
    signals from the past week, and the agent retries when it fails.
  3. Linkedin Followers + Employee count sends the LinkedIn address to Apify's LinkedIn Profile Scraper by anchor. The
    workflow reads follower_count and the second item of company_size from its answer.
  4. Website visits sends the domain to Apify's Ahrefs Scraper by radeance, with only traffic switched on. The workflow
    reads organic from the fifth entry of website_traffic_history.
  5. Get row(s) in sheet1 reads My company, and Aggregate gathers its rows into one list.
  6. Insights, a second agent on the same model with no tools and no parser, gets the findings, the three numbers and
    your first My company row as JSON. It writes a paragraph of about 200 words.
  7. Append row in sheet adds a row to Competitor analysis, then the loop takes the next competitor.

Both Actors answered when we looked them up on 2 November 2026. Each is called synchronously, and Apify ends such a call
after 300 seconds, according to its API reference.

Change the look

  • How often: Schedule Trigger. The prompt asks for the past week, so a weekly run matches it.
  • What the research looks for: the system message of AI Agent and the example in Structured Output Parser. Change
    both together, then the mapping in Append row in sheet.
  • The comparison: the system message of Insights, which sets the length at about 200 words.
  • Your baseline: the first row of My company. Use the same kinds of figures the competitors get, so the agent compares
    like with like.
  • Model: OpenAI Chat Model, shared by both agents and the parser.

Good to know

  • Each competitor costs two gpt-4.1-mini agent runs, plus a repair call when the parser rejects a reply. Explorium
    spends credits on its lookups, Tavily counts every search, and both Actors bill per result on Apify. Start with one
    competitor.
  • OpenAI shuts down gpt-4.1-mini on 14 January 2027 and names gpt-6-luna as the replacement. Pick the new model
    in OpenAI Chat Model before that date.
  • Explorium's sign-in page offers a free trial of 100 credits and says calls fail once the balance is spent.
  • Website Traffic Growth gets one organic traffic figure, not a rate of growth. A young domain may have no fifth entry
    in its history, which leaves the column empty.
  • Employee Count takes the second item of the Actor's company_size. Check in a first run what that item holds.
  • Rows are appended and never updated, so the tab keeps a history and grows on every run. Clear old rows now and then.
  • The prompts carry a few typing slips from the original copy, such as "tody". They do not change what the agents do, so
    they are left as they were.
  • Competitor names and domains go to OpenAI, Explorium, Tavily and Apify. Your first My company row goes to OpenAI.
  • The Tavily key and the Apify token sit in headers, so take them out before you share the workflow.
Files
README.md  7 KB
workflow.json  19 KB

2 files, 26 KB, downloaded as a zip.

What’s new

  • Version 1 · 2026-11-03

Reviews

No ratings yet

Write a review

No reviews yet.

More from Mindket

See all from Mindket

anaksor-ocr

Sokheng · Kit

Reads Khmer and English text from documents, receipts and photos of signs, using a detector for text lines and a recogniser for each line. Suits developers who…

New

Qwen2.5-7B-Instruct as GGUF files in eight quantization sizes, to chat with locally through llama.cpp. For people who want a capable 7.6B model on their own co…

New

ACE-Step 1.5 XL SFT

ACE-Step · Kit

Generates music from text with a 4B diffusion decoder, 50 steps and guidance control, aiming for higher audio quality than the base. For creators with a GPU of…

New

Similar in Business

See all in Business

pplx-decider-v1.1-27b

perplexity-ai · Kit

Picks the best option for a decision from text and images, such as which team should handle a request, with a probability for each choice, for developers who b…

New

NuExtract3

numind · Kit

Reads documents as text or images and fills a JSON template with the fields you ask for, or converts the pages to Markdown. A 4B model for teams that process s…

New

Drex DLM

nace-ai · Kit

Scores yes or no, multiple choice and rating questions about a document in one pass, with a probability for every option. An 8B decision model from Nace.AI tha…

New