Shopify Competitor Product Monitor
Pricing
from $0.80 / 1,000 product scrapeds
Shopify Competitor Product Monitor
Track Shopify product prices, variants, sale status, stock signals, images, and product changes from public store data.
Pricing
from $0.80 / 1,000 product scrapeds
Rating
0.0
(0)
Developer
GhostGrid
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
0
Monthly active users
16 days ago
Last modified
Categories
Share
Monitor public Shopify stores for product, price, promotion, and inventory changes. It uses Shopify's public product JSON endpoint when available and falls back to public product pages. No Shopify API key, store login, or private app is required.
Best use cases
- Competitor price and promotion monitoring
- New-product and assortment discovery
- Stock-out and restock signals
- Scheduled market snapshots for e-commerce analysis
Input
| Parameter | Type | Default | Description |
|---|---|---|---|
storeUrl | string | required | Public Shopify store URL, for example https://www.allbirds.com |
maxItems | integer | 100 | Maximum products to inspect |
collection | string | none | Optional collection handle such as frontpage |
onlyOnSale | boolean | false | Keep only products with a compare-at price above the current price |
includeDescription | boolean | true | Include cleaned product description text |
trackChanges | boolean | true | Persist successful product snapshots in a named Apify key-value store |
onlyChanges | boolean | false | Emit only first-seen or changed products |
Output
Each product includes title, URL, price range, compare-at price, sale status, inventory status, variants, images, tags, and a snapshot_hash.
When change tracking is enabled, the output also includes:
change_type:new,price_changed,sale_status_changed,inventory_status_changed,available_variant_count_changed,product_content_changed, orunchangedchange_detected: whether the product changed since the previous successful runchange_summary: machine-readable reasons for the changeprevious_snapshot_hashandprevious_scraped_at
Example output
{"status": "ok","title": "Everyday T-Shirt","url": "https://example.com/products/everyday-t-shirt","price_min": 28.0,"price_max": 32.0,"inventory_status": "in_stock","change_type": "price_changed","change_detected": true,"change_summary": ["price_changed"]}
Limitations
The actor only uses publicly accessible Shopify data. It tries /products.json, then Shopify's public XML product sitemap, then ordinary product pages with JSON-LD. This makes it useful for stores that disable the public product endpoint or use JavaScript-heavy collection pages. If all public paths are blocked, the actor emits a diagnostic status record instead of an empty successful dataset. A private Shopify Admin API is not required.