VOOZH about

URL: https://apify.com/dami_studio/saas-competitor-change-monitor

โ‡ฑ Competitor Pricing & Changelog Monitor โ€“ Typed Alerts ยท Apify


๐Ÿ‘ SaaS Competitor Monitor: Pricing, Changelog & Positioning avatar

SaaS Competitor Monitor: Pricing, Changelog & Positioning

Pricing

from $10.00 / 1,000 page checkeds

Go to Apify Store

SaaS Competitor Monitor: Pricing, Changelog & Positioning

Monitors competitor SaaS pricing pages, changelogs, homepage positioning, and integrations, then returns only what changed as structured deltas plus Slack/webhook alerts.

Pricing

from $10.00 / 1,000 page checkeds

Rating

5.0

(2)

Developer

๐Ÿ‘ Dami's Studio

Dami's Studio

Maintained by Community

Actor stats

0

Bookmarked

4

Total users

2

Monthly active users

3 days ago

Last modified

Share

Track competitor SaaS pricing pages, changelogs, homepage positioning, and integrations on a schedule โ€” and get back only what changed, as typed competitive-intelligence signals, with optional Slack/Discord/webhook alerts and a weekly AI brief.

Why it wins

  • Diffs, not dumps. It compares each page against the previous run and returns only the delta โ€” no more eyeballing pricing tables to spot what moved.
  • Typed signals. Changes come back classified (price_change, plan_added, positioning_shift, integration_added, โ€ฆ) so they drop straight into a dashboard, Notion, or a standup.
  • Cheap to run on a schedule. With only new since last run enabled, quiet weeks cost pennies โ€” change/AI/brief events only fire when there's actually news.
  • "Why it matters" built in. Optional AI signals add a one-line read on each change ("moved the lowest paid tier $19 โ†’ $29 and dropped free โ€” repositioning upmarket").
  • Alerts where you work. Push a compact summary to Slack, Discord, or any webhook the moment something changes.
  • MCP-ready. Callable as a tool from Claude, Cursor, or ChatGPT over the hosted Apify MCP server.

What it monitors

Page typeWhat it tracks
PricingTiers, prices, CTAs, plan features; added/removed plans and add-ons.
ChangelogNewly shipped release entries and updates.
PositioningHomepage hero headline, value proposition, and primary CTA.
IntegrationsPartners/connectors added or dropped (scans docs + changelog).

It runs on a schedule, fetches the page types you select per competitor, compares against the last run, and emits one structured row per change. When generateAiSignals is on, a small LLM sharpens the analysis on changed pages only. When weeklyBrief is on, all moves this run are rolled into one readable digest.

Input

FieldTypeDescription
competitors (required)array of objectsEach competitor: name, plus the URLs to watch โ€” pricingUrl, changelogUrl, homepageUrl, docsUrl. Leave a URL empty to skip that page type for that competitor.
watcharrayPage types to track: pricing, changelog, positioning, integrations. Defaults to all four.
onlyNewSinceLastRunbooleanEmit only deltas instead of a full re-dump each run. Default true โ€” this is what makes scheduled runs cheap.
generateAiSignalsbooleanUse a small LLM to sharpen "why it matters" on changed pages only. Needs ANTHROPIC_API_KEY; falls back to deterministic rules if absent. Default true.
weeklyBriefbooleanProduce a Markdown/HTML brief of every move this run, stored in the Key-Value Store and linked in the dataset. Default true.
webhookUrlstringSlack, Discord, or generic webhook for a compact summary of new signals. Slack/Discord formatting auto-detected.
proxyConfigurationobjectProxy used to fetch pages. Apify Proxy recommended to avoid blocks and geo-pricing skew.

Example input

{
"competitors":[
{
"name":"Acme",
"pricingUrl":"https://acme.com/pricing",
"changelogUrl":"https://acme.com/changelog",
"homepageUrl":"https://acme.com",
"docsUrl":""
},
{
"name":"Globex",
"pricingUrl":"https://globex.com/pricing",
"changelogUrl":"",
"homepageUrl":"https://globex.com",
"docsUrl":""
}
],
"watch":["pricing","changelog","positioning","integrations"],
"onlyNewSinceLastRun":true,
"generateAiSignals":true,
"weeklyBrief":true,
"webhookUrl":"https://hooks.slack.com/services/XXX/YYY/ZZZ",
"proxyConfiguration":{"useApifyProxy":true}
}

Output

Results go to the default dataset, one row per detected change โ€” the delta, not the page. A typical row:

{
"competitor":"Acme",
"url":"https://acme.com/pricing",
"pageType":"pricing",
"signalType":"price_change",
"changeType":"modified",
"before":"Plus plan โ€” $19/user/mo",
"after":"Plus plan โ€” $29/user/mo",
"detectedAt":"2026-06-21T09:00:00Z",
"aiSignal":"Acme raised its lowest paid tier 53% ($19 โ†’ $29/user/mo) and dropped the free plan โ€” repositioning upmarket."
}

Runs where nothing changed return no change rows, so the dataset only fills up when there's real news. When weeklyBrief is enabled, the digest is saved to the Key-Value Store and linked from the dataset.

Connect it to Claude, Cursor, or ChatGPT (MCP)

Every Apify actor is callable as a tool over the hosted Apify MCP server (Streamable HTTP) at https://mcp.apify.com. Point your AI client at it, scope it to this actor, and your assistant can launch monitoring runs and read the deltas back in conversation.

{
"mcpServers":{
"apify":{
"url":"https://mcp.apify.com?tools=dami_studio/saas-competitor-change-monitor",
"headers":{"Authorization":"Bearer <APIFY_TOKEN>"}
}
}
}

Claude Desktop and Claude.ai also support OAuth via the connector directory, so you can add Apify without pasting a token.

Pricing

Pay-per-event โ€” no subscription, you pay only for what runs.

EventPrice (USD)
Actor start$0.05
Page checked$0.01
Change detected$0.015
AI signal generated$0.035
Weekly brief generated$0.30

Example: watching 5 competitors across 4 page types daily for a week is $1.40), plus a $0.30 weekly brief and a handful of change/AI events โ€” a few dollars a week versus quote-only enterprise CI suites (Crayon, Klue) that run into five figures a year.

FAQ

How is this different from just scraping the pages? A plain scraper returns the whole page every run and leaves you to find the change. This actor diffs each page against the last run and returns only what moved, classified by signal type, with an optional AI read on why it matters.

How do I get alerts in Slack? Add your Slack incoming-webhook URL to webhookUrl. The actor posts a compact summary whenever a change is detected. Discord and generic webhooks work the same way.

Do I need an AI key? Only if you want LLM-sharpened signals. Set ANTHROPIC_API_KEY to enable them; otherwise generateAiSignals falls back to deterministic rules.

How often does it check? On whatever schedule you set in Apify โ€” daily and weekly are common. With onlyNewSinceLastRun on, each run reports only what changed since the prior one.

Will I get charged when nothing changes? You pay per page checked and per actor start, but change-detected, AI-signal, and weekly-brief events only fire when there's something to report โ€” so quiet weeks cost very little.

You might also like

SaaS Pricing Scraper

labrat011/saas-pricing-scraper

Extract structured pricing data from any SaaS company's public pricing page. The dedicated SaaS pricing intelligence tool on the Apify Store.

saas-pricing-monitor

wingless_zirconium/saas-pricing-monitor

Monitors public SaaS pricing pages and alerts you when they change. Runs on a schedule and stays silent unless pricing content is updated.

SaaS Pricing Page Monitor & Competitor Price Change Alerts

taroyamada/saas-pricing-page-change-monitor

Monitor public SaaS pricing pages and produce competitor pricing snapshots, comparison reports, or weekly watch summaries with predictable capped PPE billing.

SaaS Pricing Changelog Battlecard Watch Scraper

taroyamada/saas-pricing-changelog-battlecard-watch-scraper

Unofficially watch public SaaS pricing and changelog pages, then emit source-linked pricing changes and battlecard report rows.