Prompt
How do I track competitor pricing changes automatically?
Latest observation
Oct 12, 2026
OpenAI APIWeb search: off
To track competitor pricing changes automatically, you usually combine data collection, change detection, and alerts/reporting.
1) Decide what to monitor
List the exact competitor products/SKUs you care about:
- Product URL
- Product name / SKU / model
- Variant (size, color, pack)
- Price, sale price, shipping, stock status
- Currency and region
2) Pick a monitoring method
A. Use a price-tracking tool
Fastest option if you want minimal setup. Examples:
- Visualping
- Distill.io
- Wachete
- Price2Spy
- Prisync
- Competera
Good for:
- Non-technical teams
- Small to medium catalogs
- Email/Slack alerts and dashboards
B. Build a scraper + alert system
Best if you need full control.
Typical stack:
- Crawler/scraper: Python + Requests/BeautifulSoup, Scrapy, or Playwright/Selenium for dynamic sites
- Scheduler: cron, Airflow, GitHub Actions, AWS Lambda, etc.
- Storage: database or spreadsheet
- Diff logic: compare current price vs. last stored price
- Notifications: email, Slack, Teams, webhook
C. Use APIs or feeds if available
Some competitors publish:
- Product feeds
- Affiliate feeds
- Public APIs
- Marketplaces with accessible APIs
This is more reliable than scraping when available.
3) Example automated flow
- Fetch product pages every hour/day
- Extract price from HTML or API response
- Save timestamped data
- Compare with previous value
- If price changes beyond threshold, send alert
- Optionally generate a daily report
4) Important implementation details
- Dynamic pages: use Playwright/Selenium if the price is loaded by JavaScript.
- Anti-bot protection: rotate headers, respect robots.txt, slow request rates, consider proxy services if needed.
- Normalization: convert currencies and parse formats consistently.
- Variants: ensure you monitor the exact item/variant.
- False positives: ignore minor formatting changes or promotional banners.
5) Simple Python approach
If a page contains a stable price element:
import requests
from bs4 import BeautifulSoup
url = "https://competitor.com/product/123"
headers = {"User-Agent": "Mozilla/5.0"}
html = requests.get(url, headers=headers, timeout=20).text
soup = BeautifulSoup(html, "html.parser")
price = soup.select_one(".price").get_text(strip=True)
print(price)
Then store the result in a database or CSV and compare it to the previous run.
6) Best practice
Track not just the current price but also:
- Discount percentage
- Shipping cost
- Stock availability
- Historical trends
- Price change frequency
That gives better pricing intelligence than price alone.
7) Legal/ethical note
Make sure your monitoring complies with:
- Competitor site terms of service
- Robots.txt
- Applicable laws and regulations
If you want, I can help you design:
- a no-code setup
- a Python scraper
- or a full alerting workflow for Slack/email.