Competitor Monitor — Website Change & Price Detection avatar

Competitor Monitor — Website Change & Price Detection

Pricing

from $10.00 / 1,000 results

Go to Apify Store
Competitor Monitor — Website Change & Price Detection

Competitor Monitor — Website Change & Price Detection

Monitor competitor websites for changes: track prices, detect stock availability, and monitor content modifications. Supports multi-page monitoring with scheduled runs for continuous competitor analysis. ⚠️ REQUIRES RESIDENTIAL PROXY to bypass anti-bot protection.

Pricing

from $10.00 / 1,000 results

Rating

0.0

(0)

Developer

Julien ApiKiy

Julien ApiKiy

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

0

Monthly active users

13 hours ago

Last modified

Categories

Share

Competitor Monitor - Website Change Detection & Price Tracker

🎯 Monitor competitor websites for changes, track prices, detect stock availability, and stay ahead of the competition.

Competitor Monitor Price Tracker Stock Monitor

🚀 Overview

Competitor Monitor is a powerful Apify Actor that automatically monitors competitor websites for changes. Built with PlaywrightCrawler for robust, anti-detection web scraping, it tracks content modifications, price changes, and stock availability across multiple pages.

Perfect for e-commerce businesses, market researchers, and anyone who needs to stay informed about competitor activities.

✨ Features

📊 Monitoring Modes

  • Full Page Monitor - Track any changes across entire web pages
  • CSS Selector Monitor - Extract and monitor specific elements using CSS selectors
  • Price Tracker - Dedicated price monitoring with smart parsing (US & EU formats)
  • Stock Monitor - Detect out-of-stock and back-in-stock events

💰 Price Tracking

  • Smart Price Parser - Handles $1,299.99 (US) and 1.299,99 € (EU) formats
  • Price Drop Alerts - Get notified when prices decrease
  • Threshold Control - Only alert on significant price drops (configurable %)
  • Price History - Complete price history stored in dataset

📦 Stock Monitoring

  • Out of Stock Detection - Detect "out of stock", "unavailable", "rupture de stock"
  • Back in Stock Alerts - Know when items become available again
  • Multi-language Support - Works with English, French, and other languages

🔍 Change Detection

  • SHA-256 Hashing - Reliable content comparison using cryptographic hashes
  • Diff Generation - See exactly what changed between runs
  • Historical Data - All snapshots stored in Apify dataset

🛡️ Anti-Detection

  • Random User Agents - Rotates through 7+ realistic browser fingerprints
  • Smart Delays - 2-5 second random delays between requests
  • Proxy Support - Works with Apify Proxy or custom proxy configurations
  • Concurrent Browsers - Up to 5 concurrent browser instances (configurable)

📦 Installation

# Install dependencies
npm install
# Run tests
npm test
# Start the Actor locally
npm start

🎯 Usage

Basic Monitoring

{
"urls": [
{ "url": "https://competitor1.com/product" },
{ "url": "https://competitor2.com/pricing" }
],
"mode": "selector",
"selectors": [".product-title", ".price", ".description"]
}

Price Tracking

{
"urls": [
{ "url": "https://competitor.com/product/123" },
{ "url": "https://competitor.com/product/456" }
],
"mode": "price",
"priceSelector": ".product-price",
"notifyPriceDrop": true,
"priceDropThreshold": 10
}

Stock Monitoring

{
"urls": [
{ "url": "https://store.com/product/sku-123" }
],
"mode": "stock",
"stockSelector": ".availability",
"outOfStockKeywords": ["out of stock", "sold out", "unavailable"],
"inStockKeywords": ["in stock", "add to cart", "buy now"]
}

Multi-Page Monitoring with Schedule

{
"urls": [
{ "url": "https://competitor.com/products" },
{ "url": "https://competitor.com/pricing" },
{ "url": "https://competitor.com/about" }
],
"mode": "selector",
"selectors": ["h1", ".content", ".pricing-table"],
"maxConcurrency": 3,
"proxyConfiguration": { "useApifyProxy": true }
}

📋 Input Schema

ParameterTypeDefaultDescription
urlsarrayrequiredList of URLs to monitor
modestringselectorMonitor mode: full-page, selector, price, stock
selectorsarray["body"]CSS selectors to extract (for selector mode)
priceSelectorstring.priceCSS selector for price element
stockSelectorstring.stock-statusCSS selector for stock status
notifyOnChangebooleantrueTrigger on any content change
notifyPriceDropbooleantrueTrigger on price decrease
priceDropThresholdnumber0Minimum % drop to trigger alert
notifyOutOfStockbooleantrueTrigger when item goes out of stock
notifyBackInStockbooleantrueTrigger when item comes back in stock
maxConcurrencynumber5Max concurrent browser pages
proxyConfigurationobject{}Proxy settings

📤 Output

Each scrape produces a dataset record with:

{
"url": "https://competitor.com/product",
"title": "Product Page",
"contentHash": "abc123...",
"content": "Extracted content...",
"price": 49.99,
"currency": "USD",
"inStock": true,
"changed": true,
"changeType": "price-drop",
"previousHash": "def456...",
"previousPrice": 59.99,
"priceChangePercent": -16.67,
"diff": "1 changed",
"timestamp": "2024-01-15T10:30:00.000Z",
"mode": "price",
"triggered": true
}

🔄 Scheduling

For continuous monitoring, schedule the Actor to run automatically:

  1. Go to the Actor page on Apify Console
  2. Click "Schedule"
  3. Set frequency (e.g., every 6 hours, daily)
  4. Configure input for your monitoring needs

The Actor maintains state between runs using Apify's Key-Value Store, so each run compares against the previous state.

🛠️ Technical Details

  • Crawler: PlaywrightCrawler (headless Chromium)
  • Anti-Detection: Random user agents, smart delays, proxy support
  • Storage: Apify Dataset (results) + Key-Value Store (state)
  • Concurrency: Configurable up to 20 browsers (default 5)
  • Timeout: 60 seconds per page

📝 Examples

Monitor Product Prices Across Competitors

{
"urls": [
{ "url": "https://amazon.com/dp/B09V3KXJPB" },
{ "url": "https://bestbuy.com/site/product/12345678" },
{ "url": "https://walmart.com/ip/123456789" }
],
"mode": "price",
"priceSelector": "#priceblock_ourprice, .a-price-whole",
"notifyPriceDrop": true,
"priceDropThreshold": 5
}

Monitor Competitor Feature Pages

{
"urls": [
{ "url": "https://competitor.com/features" }
],
"mode": "selector",
"selectors": [
".feature-list",
".pricing-tier",
".testimonial"
]
}

🤝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

💰 Pricing

Pay-per-use, no monthly fees:

Price
Actor start$0.01
Per result$0.01

💡 Example: A run returning 500 results costs $5.01 total ($0.01 start + 500 × $0.01).

📄 License

This project is licensed under the Apache 2.0 License - see the LICENSE file for details.


Keywords: website monitor, price tracker, competitor analysis, stock monitor, change detection, web scraping, automation, e-commerce monitoring, price drop alerts, stock availability, web change detection, competitor tracking, market monitoring, price comparison, product monitoring

Tags: monitoring price-tracking competitor-analysis web-scraping automation e-commerce stock-monitoring change-detection