🔓 Unlock all 10,000+ workflows & prompts free Join Newsletter →
✅ Full access unlocked — explore all 10,000 AI workflow and prompt templates Browse Templates →
Home n8n Workflow
January 22, 2026

Perplexity to Google Sheets, Slack GEO scorecards

Lisa Granqvist Partner Workflow Automation Expert

Your brand can look “fine” in AI search one day, then quietly slip the next. No alert. No changelog. Just a different answer in Perplexity that a prospect or journalist might take as fact.

SEO specialists run into this first, honestly. But brand managers and marketing leads feel it too, especially when leadership asks, “How are we showing up in AI?” This Perplexity GEO tracking automation gives you a daily, written record and a simple scorecard you can share.

You’ll see how the workflow generates queries, captures real Perplexity-style answers, stores them in Google Sheets, and posts a graded GEO scorecard to Slack so changes stop slipping by.

How This Automation Works

The full n8n workflow, from trigger to final output:

n8n Workflow Template: Perplexity to Google Sheets, Slack GEO scorecards

The Problem: AI Search Mentions Change Without Warning

AI answer engines don’t behave like traditional search. You can rank well on Google, still get an unflattering (or flat-out wrong) summary in Perplexity. And because the answers are generated, the wording can drift day to day based on sources, model updates, or what the engine decides is “most helpful” that morning. The frustrating part is the visibility gap: you only notice the change after someone forwards a screenshot. By then, you’re reacting instead of managing your narrative.

It adds up fast. Here’s where it breaks down in real teams.

  • Checking Perplexity manually turns into a daily “someone should do it” task that never gets owned.
  • Without an archive of exact answers, it’s hard to prove when a claim started or what shifted.
  • Ad hoc monitoring misses the queries that actually shape perception, like comparisons and “is it legit?” validations.
  • Reporting becomes vibes-based, which means stakeholders lose trust in GEO as a channel.

The Solution: Daily Perplexity GEO Tracking Logged and Scored

This n8n workflow turns AI visibility into something you can actually track. It runs on a daily schedule, creates a fresh dated tab in Google Sheets, and pulls your company name and category from a simple “Main Sheet.” From there, an AI agent generates three strategic queries (discovery, comparison, validation) that reflect how real buyers and analysts search. The workflow then uses BrowserAct to simulate the searches on an AI answer engine like Perplexity, captures the full raw responses, and logs them to the new sheet tab. Finally, a second AI agent reviews what came back, grades your visibility (green/yellow/red), and posts a clean GEO scorecard to Slack for your team.

The workflow starts with a schedule trigger and a new Google Sheets tab for the day. It then generates and splits your queries, runs them through BrowserAct, and appends each AI answer as a row. Once all rows are stored, the analyzer agent summarizes and sends a Slack report your team can act on.

What You Get: Automation vs. Results

Example: What This Looks Like

Say you track 3 core queries per day (discovery, comparison, validation). Manually, a careful check is usually about 10 minutes per query once you run the search, copy the answer, paste it into a sheet, and write a quick summary, so call it 30 minutes daily. With this workflow, you spend maybe 2 minutes maintaining your company details in the “Main Sheet,” then the scheduled run collects answers and posts the scorecard automatically. That’s roughly 2 hours back every week, plus you get a searchable archive.

What You’ll Need

  • n8n instance (try n8n Cloud free)
  • Self-hosting option if you prefer (Hostinger works well)
  • Google Sheets to store daily Perplexity answers.
  • Slack to deliver the GEO scorecard to a channel.
  • BrowserAct API key (get it from your BrowserAct dashboard).
  • OpenRouter (or compatible LLM) to generate queries and scoring.

Skill level: Intermediate. You’ll connect credentials, pick the right Google Sheet in a few nodes, and tweak prompts if you want more specific grading.

Don’t want to set this up yourself? Talk to an automation expert (free 15-minute consultation).

How It Works

A daily schedule kicks it off. n8n runs once per day, then creates a new dated worksheet in Google Sheets so each run has its own clean log.

Your company details are pulled from a “Main Sheet.” The workflow reads your company name and working category, which keeps query generation grounded in your actual market.

AI generates and runs GEO queries. The first agent produces three query types, then BrowserAct executes them on an AI answer engine like Perplexity. Each result is captured as raw text, then appended to the sheet as “Search” and “Result.”

A second AI agent grades the day and posts to Slack. After results are stored and aggregated, the analyzer reviews what came back and sends a Green/Yellow/Red-style scorecard to your chosen Slack channel.

You can easily modify the query types or grading criteria to match your positioning goals. See the full implementation guide below for customization options.

Step-by-Step Implementation Guide

Step 1: Configure the Schedule Trigger

Set the workflow to run daily so it creates a new report worksheet and processes company records automatically.

  1. Add and open Daily Schedule Trigger.
  2. In Rule, keep the default Interval and adjust the schedule as needed for daily execution.
If you want a specific time of day, set the schedule interval accordingly before activating the workflow.

Step 2: Connect Google Sheets

These nodes create a new worksheet per run, set headers, fetch company data, and store results. There are 5 Google Sheets nodes, so connect credentials across all of them.

  1. Open Create Worksheet and set Title to ={{ $json["Readable date"] }} and Document ID to your spreadsheet (replace [YOUR_ID]).
  2. Credential Required: Connect your googleSheetsOAuth2Api credentials to Create Worksheet, Append Column Headers, Fetch Company Records, Append Result Rows, and Load Stored Rows.
  3. In Set Header Fields, keep the assignments for Search and Result as empty strings to define the column headers.
  4. In Append Column Headers, set Sheet Name to ={{ $('Create Worksheet').first().json.sheetId }}.
  5. In Fetch Company Records, set Sheet Name to gid=0 and keep Range Definition as specifyRange if you want to limit the data range.
  6. In Load Stored Rows, set Sheet Name to ={{ $('Create Worksheet').first().json.sheetId }} and keep Execute Once enabled for aggregation.
⚠️ Common Pitfall: Replace all [YOUR_ID] placeholders with real Google Sheets IDs, otherwise the workflow will fail at runtime.

Step 3: Set Up AI Query Generation

This segment generates three search queries per company using an LLM and structures the output for downstream processing.

  1. Open LLM Router Hub and set Model to google/gemini-3-pro-preview.
  2. Credential Required: Connect your openRouterApi credentials to LLM Router Hub.
  3. In Compose Search Queries, set Text to =Company name : {{ $json["Company name"] }}, Working Category :{{ $json["Worknig category"] }} and keep Prompt Type as define.
  4. Open Structured Output Parser and keep Auto Fix enabled with the JSON schema example provided.
  5. In Split Generated Queries, set Field to Split Out to output.
The Structured Output Parser is an AI sub-node; add credentials to LLM Router Hub, not the parser itself.

Step 4: Configure BrowserAct Search Runs and Batch Handling

Each generated query is run through BrowserAct, and the results are appended back into the worksheet.

  1. Open Iterate Batch Items to batch each query for processing.
  2. In Launch BrowserAct Run, set Type to WORKFLOW and Workflow ID to [YOUR_ID].
  3. In Launch BrowserAct RunWorkflow Config, map input-Inputs to ={{ $json.output }}.
  4. Credential Required: Connect your browserActApi credentials to Launch BrowserAct Run.
  5. In Append Result Rows, map Search to ={{ $('Iterate Batch Items').item.json.output }} and Result to ={{ $json.output.string }}, and set Sheet Name to ={{ $('Create Worksheet').first().json.sheetId }}.
⚠️ Common Pitfall: Ensure the BrowserAct workflow expects the input-Inputs field, or your runs may fail with missing input errors.

Step 5: Configure Analysis and Slack Notification

Aggregate all results, analyze them with an LLM, and send a formatted report to Slack.

  1. In Aggregate Sheet Rows, set Aggregate to aggregateAllItemData.
  2. Open LLM Router Hub 2 and set Model to google/gemini-3-pro-preview.
  3. Credential Required: Connect your openRouterApi credentials to LLM Router Hub 2.
  4. In Analyze Company Results, set Text to =Date : {{ $('Daily Schedule Trigger').first().json["Readable date"] }}, Company name : {{ $('Fetch Company Records').first().json["Company name"] }}, Working Category :{{ $('Fetch Company Records').first().json["Worknig category"] }} question and answers : {{ $json.data }}.
  5. In Slack Team Notification, set Text to ={{ $json.output }} and choose your target Channel.
  6. Credential Required: Connect your slackApi credentials to Slack Team Notification.

Step 6: Test and Activate Your Workflow

Run a full test to confirm worksheet creation, query generation, BrowserAct results, and Slack reporting work end-to-end.

  1. Click Execute Workflow to run a manual test from Daily Schedule Trigger.
  2. Verify a new worksheet is created with the date title and that headers Search and Result appear.
  3. Confirm rows are appended in the worksheet with each query and BrowserAct result.
  4. Check that Slack Team Notification posts a formatted report to the selected channel.
  5. When everything looks correct, toggle the workflow to Active for daily runs.
🔒

Unlock Full Step-by-Step Guide

Get the complete implementation guide + downloadable template

Common Gotchas

  • Google Sheets permissions matter more than people expect. If the workflow can’t create the dated tab, check the connected Google account in n8n credentials and confirm it has edit access to that spreadsheet.
  • If you’re using Wait nodes or external rendering, processing times vary. Bump up the wait duration if downstream nodes fail on empty responses.
  • BrowserAct and LLM credentials can silently expire or hit limits. If runs start failing, look at BrowserAct run history first, then confirm your OpenRouter (or model) key is still active and allowed for your chosen model.

Frequently Asked Questions

How long does it take to set up this Perplexity GEO tracking automation?

About 45 minutes if your accounts are ready.

Do I need coding skills to automate Perplexity GEO tracking?

No coding required. You’ll mostly connect accounts and select the right spreadsheet and Slack channel.

Is n8n free to use for this Perplexity GEO tracking workflow?

Yes. n8n has a free self-hosted option and a free trial on n8n Cloud. Cloud plans start at $20/month for higher volume. You’ll also need to factor in BrowserAct usage and LLM costs from OpenRouter (often a few cents per day at this volume).

Where can I host n8n to run this automation?

Two options: n8n Cloud (managed, easiest setup) or self-hosting on a VPS. For self-hosting, Hostinger VPS is affordable and handles n8n well. Self-hosting gives you unlimited executions but requires basic server management.

Can I customize this Perplexity GEO tracking workflow for weekly reporting instead of daily?

Yes. Change the Daily Schedule Trigger to run weekly, then tweak the Slack message text in the “Slack Team Notification” node to reflect a weekly summary. Common customizations include generating more than three queries, adding a competitor list into the prompt for “Compose Search Queries,” and adjusting the grading instructions inside “Analyze Company Results.”

Why is my Google Sheets connection failing in this workflow?

Usually it’s the wrong Google account or missing edit permission on the target spreadsheet. Reconnect Google Sheets credentials in n8n, then re-select the spreadsheet inside nodes like “Create Worksheet” and “Append Result Rows” because copied workflows sometimes keep old IDs. If it fails only on new tabs, check that the spreadsheet isn’t protected and that your account can create worksheets.

How many queries can this Perplexity GEO tracking automation handle?

Plenty for most small teams: three queries per day is trivial, and even 30 per day is usually fine if your BrowserAct and LLM limits allow it.

Is this Perplexity GEO tracking automation better than using Zapier or Make?

Often, yes, because this workflow isn’t just “send data from A to B.” You’re generating queries, splitting items, looping through runs, storing results, aggregating rows, then grading with an agent. n8n handles that kind of branching and batching cleanly without turning into a pile of separate Zaps or scenarios. The self-hosted option is also a big deal if you want lots of executions without cost surprises. Zapier or Make can still be fine for lightweight alerts, but this is closer to a monitoring system than a simple integration. If you want help picking the right approach, Talk to an automation expert.

Once this is running, AI visibility stops being a guessing game. You get receipts in Google Sheets and a Slack scorecard your team will actually read.

Need Help Setting This Up?

Our automation experts can build and customize this workflow for your specific needs. Free 15-minute consultation—no commitment required.

Lisa Granqvist

Workflow Automation Expert

Expert in workflow automation and no-code tools.

×

Use template

Get instant access to this n8n workflow Json file

💬
Get a free quote today!
Get a free quote today!

Tell us what you need and we'll get back to you within one working day.

Get a free quote today!
Get a free quote today!

Tell us what you need and we'll get back to you within one working day.

Launch login modal Launch register modal