AI For Modern Marketers
← Back to workflows
workflowintermediate

Build a Weekly Competitor Intel Agent That Actually Gets Read

Set up an AI agent that monitors competitor websites, pricing, ads, and content every week and delivers a short brief of what changed and why it matters.

competitive-intelligenceai-agentsmonitoringautomationgrowth marketermarketing leadermarketing ops manager

Published 2026-05-20

What this workflow does

Every marketing team says they watch competitors; almost none do it systematically. This workflow builds an agent that checks a defined set of competitor surfaces every week — websites, pricing pages, blog output, ad libraries, changelogs — diffs them against last week, and delivers a brief that answers one question: what changed, and what, if anything, should we do about it?

The outcome is a Monday-morning brief that takes 3 minutes to read, replaces 2–3 hours of manual checking nobody was actually doing, and creates a searchable archive of competitor moves over time.

Prerequisites

  • An automation platform with LLM steps and scheduling (n8n, Make, or Zapier; or a code-based agent if you have engineering support)
  • An LLM API key (Claude or GPT class)
  • A page-monitoring capability: either the platform's HTTP module plus a diff step, or a service like Visualping/Browse AI with webhook output
  • A list of 3–7 competitors and, for each, the URLs that matter: homepage, pricing, blog index, and their Meta/Google ad library pages
  • A delivery channel: Slack, email, or Notion

The workflow, step by step

Step 1: Define what "intel" means for you (1 hour, one time)

Agents fail when the goal is "watch competitors." Write a monitoring spec: for each competitor, which surfaces, and which changes are signal vs. noise. Example spec entries:

  • Pricing page: any change to tiers, numbers, or feature lists → high priority
  • Blog: new posts → capture title, topic, target keyword; more than 2 posts/week → flag velocity change
  • Homepage hero: messaging changes → medium priority (repositioning signal)
  • Ad libraries: new creative themes or a jump in active ad count → medium priority
  • Careers page (optional but underrated): new senior marketing roles → strategic signal

Step 2: Build the collection layer

Set up a scheduled scenario (Sunday night) that, for each URL: fetches the page, extracts main content to text (strip nav/footer — most platforms have an HTML-to-text step), and stores it with a date stamp in a data store or Google Sheet. Keep last week's snapshot for diffing.

For ad libraries, which are harder to scrape, use the platform's screenshot module or a service that supports them, and pass screenshots to a multimodal model.

Step 3: The diff-and-analyze step

For each page, send old text + new text to the LLM:

Compare these two snapshots of [COMPETITOR]'s [PAGE TYPE] page,
taken one week apart. List substantive changes only — ignore dates,
rotating testimonials, and cosmetic edits. For each change:
what changed, and one hypothesis for why. If nothing substantive
changed, reply exactly: NO_CHANGE.

The NO_CHANGE convention matters: it lets the workflow filter silence before the synthesis step, so your brief only contains real movement.

Step 4: Synthesize the weekly brief

Collect all non-empty diff outputs and run a final synthesis call:

You are a competitive intelligence analyst for [YOUR COMPANY], which
sells [PRODUCT] to [AUDIENCE]. Below are this week's detected
competitor changes. Write a brief with:
1. TL;DR — the single most important move this week (or "quiet week")
2. Changes by competitor, one line each, priority-tagged
3. "Worth discussing" — max 2 items where we might respond, with a
   suggested owner (product marketing / paid / content)
Keep it under 300 words. No filler.

Post to Slack with a link to the full diff archive.

Step 5: Human review and reaction

Someone owns the brief — reads it, marks items "act / watch / ignore" (emoji reactions work fine in Slack), and files anything requiring a response into your normal planning process. The agent gathers and summarizes; humans decide. Don't let the agent draft responses to competitor moves automatically — that's how you end up reactive to noise.

Failure modes and fixes

  • The brief cries wolf. Too many "changes" that are timestamps and A/B test flickers. Tighten the diff prompt's ignore-list with concrete examples from the false positives, and consider diffing only the main content block.
  • Pages block your fetcher. Some sites block datacenter IPs. Use a monitoring service with residential proxies for those specific pages rather than fighting it yourself.
  • The hypothesis column is fan fiction. Models over-explain. Add: "If the reason is unclear, say 'unclear' — do not speculate beyond one sentence."
  • Nobody reads it by week six. The brief is too long or too rarely actionable. Cut it harder (the 300-word cap is a feature) and add the quiet-week honesty — credibility comes from the agent saying "nothing happened" when nothing happened.

Turning it into a loop

Two feedback loops make this compound:

  1. Relevance loop: monthly, feed the model the quarter's briefs plus which items the team marked "act" vs. "ignore." Ask it to propose changes to the monitoring spec — surfaces to drop, competitors to add, priority rules to adjust. Your signal-to-noise ratio improves every cycle.
  2. Trend loop: quarterly, run all briefs through a synthesis prompt: "What patterns emerge across 12 weeks of competitor activity? What strategic direction does each competitor appear to be moving in?" This turns weekly snapshots into the strategic narrative your leadership team actually wants — and it's something no single weekly check could ever produce.