SaaS Competitor Pricing Monitor avatar

SaaS Competitor Pricing Monitor

Pricing

from $450.00 / 1,000 competitor checkeds

Go to Apify Store
SaaS Competitor Pricing Monitor

SaaS Competitor Pricing Monitor

Monitor competitor SaaS pricing pages for changes. Get Slack alerts the moment a price changes, a plan disappears, or a free trial is killed.

Pricing

from $450.00 / 1,000 competitor checkeds

Rating

0.0

(0)

Developer

Cong

Cong

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

3 days ago

Last modified

Share

PriceSentinel — SaaS Competitor Pricing Monitor

Know the moment a competitor changes their pricing — before your sales team finds out on a lost deal.

PriceSentinel monitors your SaaS competitors' pricing pages on a schedule, extracts structured plan data using Claude AI, and fires a Slack alert the moment anything meaningful changes — price increase, plan removed, free trial killed, new tier added.


What it detects

Change typeSeverityExample
Price increase / decrease🔴 HighPro plan: $29/mo → $49/mo (↑ 69%)
Plan added🔴 HighNew "Growth" plan added at $99/mo
Plan removed🔴 High"Starter" plan ($19/mo) was removed
Plan renamed🟡 Medium"Business" plan renamed to "Enterprise"
Free trial changed🟡 MediumTrial reduced from 14 days to 7 days
Annual discount changed🟡 MediumAnnual discount changed from 20% to 15%
Feature removed from plan🟡 MediumFeature removed from Pro: "Unlimited exports"
Feature added to plan🟢 LowFeature added to Starter: "Basic analytics"
CTA text changed🟢 LowPro CTA: "Get started" → "Start free trial"

Quickstart (10 minutes to first Slack alert)

1. Configure competitors

In the Input tab, paste your competitor list:

[
{ "name": "Notion", "pricingUrl": "https://www.notion.so/pricing" },
{ "name": "Coda", "pricingUrl": "https://coda.io/pricing" },
{ "name": "Linear", "pricingUrl": "https://linear.app/pricing" }
]

2. Add your Anthropic API key

Get one at console.anthropic.com → API Keys → Create key.

Paste it into the Anthropic API Key field. It's stored as a secret.

  1. Go to api.slack.com/apps → Create New App → From scratch
  2. Enable Incoming Webhooks
  3. Add webhook to your chosen channel, copy the URL
  4. Paste into the Slack Webhook URL field

4. Run it once to capture baselines

Click Start. The first run captures a baseline snapshot for each competitor — no Slack alert fires yet (there's nothing to compare to).

5. Set up a daily schedule

In your actor's Schedules tab → Add schedule → set to run daily at 8am. From now on, if anything changes, Slack fires automatically.


Output

Each run produces a Dataset record per competitor:

{
"competitor": "Notion",
"pricingUrl": "https://www.notion.so/pricing",
"runDate": "2026-07-24T08:00:00.000Z",
"scrapeSuccess": true,
"extractionSuccess": true,
"changeDetected": true,
"isFirstRun": false,
"changes": [
{
"type": "price_change",
"severity": "high",
"planName": "Plus",
"summary": "\"Plus\" monthly price increased from $10 to $12 (20% ↑)",
"before": "$10",
"after": "$12"
}
],
"currentSnapshot": {
"plans": [
{
"name": "Plus",
"monthlyPrice": "$12",
"annualPrice": "$8",
"currency": "USD",
"isFree": false,
"isContactSales": false,
"highlighted": true,
"features": ["Unlimited blocks", "Unlimited file uploads", "30-day history"],
"ctaText": "Get started"
}
],
"freeTrialMentioned": false,
"annualDiscountMentioned": true,
"annualDiscountPercent": "save 20%"
}
}

Integrations (via Zapier — no extra setup needed)

The Dataset output is a live integration bus. Connect it to anything:

Email digest (Zapier) Trigger: "New item in Apify Dataset" → Filter: changeDetected = true → Action: "Send email"

Google Sheets log Trigger: "New item in Apify Dataset" → Action: "Append row to spreadsheet"

Notion database Trigger: "New item in Apify Dataset" → Filter: changeDetected = true → Action: "Create Notion page"

Linear / Jira ticket Trigger: "New item in Apify Dataset" → Filter: severity = high → Action: "Create issue"


Proxy configuration

Most SaaS pricing pages load fine without a proxy. For protected pages (HubSpot, Intercom, Salesforce), use Apify Residential Proxies in the Proxy Configuration field — this dramatically improves success rates on bot-protected pages.


Known limitations

  • Login-gated pricing pages: Pages that require authentication cannot be scraped. If a competitor hides pricing behind a demo request, PriceSentinel cannot access it.
  • Image-based pricing tables: If pricing is embedded in an image rather than HTML text, extraction will fail gracefully (the actor logs a warning, does not crash).
  • URL changes: If a competitor moves their pricing page from /pricing to /plans, the actor will return a 404 alert so you can update the URL.

Pricing

Billed per competitor URL processed per run.

FrequencyCompetitorsEstimated monthly cost
Weekly5~$10/mo
Daily10~$150/mo
Daily20~$300/mo

Apify's free plan covers initial testing. No credit card required for first 10 events.


Architecture

Playwright (headless Chrome) → page text
→ Claude Haiku (structured extraction)
→ Apify KV Store (snapshot comparison)
→ Diff engine (semantic change detection)
→ Slack Block Kit notification
→ Apify Dataset (full run archive)

The extraction uses Claude AI rather than regex, so it works across any pricing page layout regardless of CSS class names or HTML structure. The diff engine does semantic matching — it detects plan renames (not just deletions + additions) and calculates percent-change on prices.