Shopify Price & Stock Monitor — Track Any Store's Products
Pricing
from $2.00 / 1,000 products
Shopify Price & Stock Monitor — Track Any Store's Products
Track competitor prices, stock & new products in any Shopify store via its public products.json. Monitor mode returns only CHANGES — price drops, out-of-stock, back-in-stock, new launches.
Pricing
from $2.00 / 1,000 products
Rating
0.0
(0)
Developer
Diego Moragues
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
17 hours ago
Last modified
Categories
Share
Shopify Price Monitor — Track Prices, Stock & New Products in Any Shopify Store
This Shopify price tracker and competitor price monitoring tool extracts the full product catalog of any Shopify store — prices, sale prices, stock availability, new arrivals — straight from the store's public products.json endpoint. No browser, no proxies, no fragile HTML scraping. Point it at your competitors' Shopify stores and get clean, structured e-commerce pricing data in seconds. Enable monitor mode and it becomes a price change alert system: scheduled runs return only what changed since the last run — price drops, price increases, out-of-stock events, back-in-stock restocks, and newly launched products.
Why track Shopify stores directly?
- Nearly every Shopify store exposes
/products.jsonpublicly — the same data that powers the storefront, in clean JSON. - Real-time competitor pricing — see price changes the moment your scheduled run fires, not days later via a pricing tool's crawl cycle.
- Stock-outs are opportunities. When a competitor's bestseller goes out of stock, that's your window. When your reseller's price drops below MAP, that's your alert.
- AI-agent ready — flat input, clean JSON output. Works out of the box via MCP for AI agents and LLM pipelines.
What you get for each product variant
{"store": "www.allbirds.com","productId": 4547069902916,"title": "Men's Wool Runners","handle": "mens-wool-runners","url": "https://www.allbirds.com/products/mens-wool-runners","vendor": "Allbirds","productType": "Shoes","variantId": 39250875613252,"variantTitle": "10","sku": "WR2MNBG100","price": 110,"compareAtPrice": 125,"available": true,"createdAt": "2020-01-14T10:42:00-05:00","updatedAt": "2026-07-01T08:12:33-04:00","imageUrl": "https://cdn.shopify.com/s/files/1/1104/4168/products/wool-runner.jpg","checkedAt": "2026-07-02T12:00:00.000Z"}
In monitor mode, each item additionally carries a changeType:
baseline— first run for a store: the whole catalog is output and remembered.new-product— a variant that wasn't in the catalog last run.price-change— witholdPrice,newPriceandpriceChangePct(e.g.-12.5for a 12.5% price drop).stock-change— withstockStatus:back-in-stockorout-of-stock.
How to use it
- Add stores — full URLs (
https://www.allbirds.com) or bare domains (gymshark.com). - (Optional) Set a product cap —
maxProductsPerStore(default 250, max 2000). - (Optional) Enable monitor mode and schedule the actor (e.g. daily at 6:00). The first run seeds the memory; every run after that outputs only real changes.
- Add a webhook on run-succeeded to push price drops and stock alerts to Slack, email, Zapier, or your repricing engine. Filter on
changeType: "price-change"with a negativepriceChangePctto alert on price drops only.
Use cases
- Competitor price tracking: monitor rival Shopify stores daily and undercut or match automatically.
- MAP compliance monitoring: watch resellers' prices and get alerted the moment anyone lists below your minimum advertised price.
- Reseller & dropshipping sourcing: spot price drops and clearance (
compareAtPrice>price) across supplier stores. - Back-in-stock alerts: get notified when a sold-out product returns — for buying, or for timing your own promotions against a competitor's stock-out.
- New product launch detection:
new-productitems reveal a competitor's roadmap the day it ships. - AI agents: feed structured pricing data to LLM workflows via the Apify MCP server — every Apify actor is callable as an agent tool.
Pricing
Pay per product checked — one event per product variant delivered to the dataset. No subscription, no minimum. Failed stores are never charged.
FAQ
Is it legal to read a store's products.json?
The actor reads the same public, unauthenticated JSON endpoint that powers each store's own storefront and is served to any visitor. No login, no personal data, no rate-limit abuse — requests are throttled to one page per 500 ms with a descriptive user-agent.
Which stores work with this actor?
Any Shopify store with a public /products.json endpoint — which is the vast majority of Shopify stores. If a store is password-protected or has disabled the endpoint, it is reported in the run's FAILED record instead (and you're not charged for it).
How does monitor mode work exactly?
The actor keeps a per-store map of {variantId: {price, available}} in a persistent named key-value store (SHOPIFY-MONITOR-STATE). On each run it compares the live catalog against that map and outputs only differences, then updates the map. The very first run for a store outputs the full catalog tagged changeType: "baseline" so you have a starting snapshot.
How many products can it fetch per store?
Up to 2,000 products per store (maxProductsPerStore, default 250). Pagination runs at 250 products per page — Shopify's maximum — with a 500 ms politeness delay between pages. Note that output rows are per variant, so a store with 100 products × 5 sizes yields up to 500 rows.
Why do some stores fail?
Three common reasons: the store is password-protected (pre-launch or members-only), the merchant disabled the public products.json endpoint, or the domain isn't actually a Shopify store. Failed stores appear in the FAILED record of the run's key-value store with the reason — they never appear in the dataset and are never charged.
How do I schedule daily monitoring with alerts?
Create the actor task with your store list and monitorMode: true, add a Schedule (e.g. every morning), then attach a webhook or an Apify integration (Slack, email, Zapier, Make) to the run-succeeded event. Because monitor mode outputs only changes, every dataset item in a scheduled run is actionable — filter on changeType to route price drops, stock-outs and new launches to different channels.
Can AI agents use this actor?
Yes — the input schema is flat and agent-friendly, and every Apify actor is consumable via the Apify MCP server, so agents can call it as a tool ("check if any competitor dropped prices today").