Competitor Monitor — Website Change & Price Detection
Pricing
from $10.00 / 1,000 results
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
Maintained by CommunityActor 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.
🚀 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 dependenciesnpm install# Run testsnpm test# Start the Actor locallynpm 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
| Parameter | Type | Default | Description |
|---|---|---|---|
urls | array | required | List of URLs to monitor |
mode | string | selector | Monitor mode: full-page, selector, price, stock |
selectors | array | ["body"] | CSS selectors to extract (for selector mode) |
priceSelector | string | .price | CSS selector for price element |
stockSelector | string | .stock-status | CSS selector for stock status |
notifyOnChange | boolean | true | Trigger on any content change |
notifyPriceDrop | boolean | true | Trigger on price decrease |
priceDropThreshold | number | 0 | Minimum % drop to trigger alert |
notifyOutOfStock | boolean | true | Trigger when item goes out of stock |
notifyBackInStock | boolean | true | Trigger when item comes back in stock |
maxConcurrency | number | 5 | Max concurrent browser pages |
proxyConfiguration | object | {} | 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:
- Go to the Actor page on Apify Console
- Click "Schedule"
- Set frequency (e.g., every 6 hours, daily)
- 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.
🔗 Related Actors
- Website Content Crawler - General purpose web scraping
- SEO Audit - SEO analysis tools
- Price Tracker - Specialized price monitoring
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