Shopify Price & Stock Change Tracker
Pricing
$0.01 / change detected
Shopify Price & Stock Change Tracker
Monitor any Shopify store for changes — price increases/decreases, back-in-stock & out-of-stock flips, and products added or removed. Run on a schedule for set-and-forget competitor and supplier watching.
Pricing
$0.01 / change detected
Rating
0.0
(0)
Developer
ByteMe
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
5 days ago
Last modified
Categories
Share
Pain points
- Manually re-checking competitor or supplier stores for price and stock changes is tedious and easy to miss.
- A one-time scrape tells you today's prices, not what actually changed since last time.
- Spotting restocks, sell-outs, and new products across many stores by hand doesn't scale.
What we solve
- Diffs a Shopify store's public catalog against the previous run — one row per real change.
- Catches price moves (old → new, %), back-in-stock / out-of-stock flips, and products added or removed.
- Point it at competitors, suppliers, or your own stores and run it on a schedule.
- First run is a free baseline; pay only per change, empty runs free.
Summary
Watch a list of Shopify stores and get told exactly what changed since last time. Each run reads the store's public catalog and diffs it against the previous run, so you get one row per real change: a price moved (with the old price, new price, and % change), a product went out of stock or came back, or a product was added or removed. The first run captures a baseline; every run after that is pure signal — point it at competitors, suppliers, or your own stores, put it on a daily schedule, and turn price/stock monitoring into a set-and-forget task. Built for dropshippers, repricing teams, and competitive-intelligence analysts.
Who it's for
- Dropshippers and resellers watching supplier catalogs
- Repricing and merchandising teams tracking competitor prices
- Competitive-intelligence analysts monitoring DTC brands
- Buyers watching for restocks and new drops
How to use
Set the input, run the actor, and collect results from the run's dataset (export to JSON/CSV/Excel, or pull via the Apify API). Example input:
{"domains": ["allbirds.com","colourpop.com"],"minPriceChangePercent": 0}
See Inputs below for every available field.
What you get
One row per record:
| Field | Description |
|---|---|
domain | Store domain monitored |
change_type | price_increased, price_decreased, back_in_stock, out_of_stock, new_product, removed_product (or a free baseline/snapshot/unavailable marker) |
product_title / product_handle | The product that changed |
variant_sku / variant_id | The specific variant, for price/availability changes |
old_price / new_price | Price before and after the change |
price_change_pct | Signed percentage price change |
old_available / new_available | Stock status before and after the change |
tracked_products | Products tracked this run (on heartbeat rows) |
changes_found | Number of changes detected this run (on the snapshot heartbeat row) |
detected_at | UTC timestamp the change was detected |
source_url | The store URL |
Sample:
{"domain": "allbirds.com","change_type": "price_decreased","product_title": "Wool Runner","product_handle": "wool-runner","product_id": 100,"variant_sku": "WR-9-GREY","variant_id": 1001,"old_price": 110.0,"new_price": 88.0,"price_change_pct": -20.0,"old_available": null,"new_available": null,"tracked_products": null,"changes_found": null,"detected_at": "2026-02-01T00:00:00+00:00","source_url": "https://allbirds.com"}
Inputs
| Field | Required | Type | Default | Description |
|---|---|---|---|---|
domains | yes | array | ["allbirds.com"] | Shopify store domains or URLs to monitor, e.g. 'allbirds.com'. The first run captures a baseline (free); run again later (a schedule works well) to get the changes since the previous run. |
minPriceChangePercent | no | integer | 0 | Ignore price moves smaller than this percentage (noise filter). 0 reports every price change. |
maxProductsPerStore | no | integer | 2000 | Cap on products sampled per store (bounds cost). Very large catalogs are sampled up to this many products. |
proxyConfiguration | no | object | {"useApifyProxy": false} | Optional. Shopify storefronts are usually reachable directly; enable a proxy (e.g. residential) only if a store is blocked. |
Pricing (Pay Per Event)
You pay per result (dataset-item) — no charge for empty runs. Example: 1000 changes detected at $0.01/result ≈ $10.00.
The first run for a store is a free baseline, and runs with no changes cost nothing — you're only charged per detected change. Apify platform usage (compute) is billed separately per your plan.
Use cases
- Competitor price monitoring — repricing teams get alerted when a rival raises, drops, or discounts a price.
- Restock / sell-out alerts — buyers and merchandisers know when a hot product returns or sells out.
- New-product watch — analysts catch every product a store adds or removes, for trend-spotting.
- Supplier monitoring — dropshippers track supplier catalogs for price and availability shifts that hit margins.
Why this actor
- Diffs the catalog between runs — you get what changed, not another full snapshot.
- Catches price moves, stock flips, and product add/remove per SKU.
- First run is a free baseline; pay only per change.
Limitations & updates
Public storefront /products.json only — never real inventory counts, sales, revenue, or orders (those are Admin-API-only). Diffing needs a prior run, so the first run for each store is a baseline with no changes. ~10–15% of stores disable /products.json (those return an 'unavailable' marker). Availability reflects the storefront's per-variant available flag. Some stores sit behind bot protection — enable the residential proxy toggle if a run is blocked.
FAQ
How does it detect changes?
It reads the store's public catalog (/products.json) and diffs it against the previous run's snapshot.
What happens on the first run?
It captures a free baseline — there's nothing to diff yet. From the second run on, you get the changes.
How am I charged?
Pay-per-change: one charge per detected change. Runs with no changes are free.
What changes does it catch?
Price increases/decreases (with old price, new price, and %), back-in-stock and out-of-stock flips, and products added or removed.
How often should I run it?
On a schedule (e.g. daily) — it's built for set-and-forget monitoring.
Are there store limits?
~10–15% of stores disable /products.json; those return an 'unavailable' marker. Enable the proxy toggle if a store blocks datacenter IPs.
Which actor to choose
Part of the same Shopify-intel suite — pick the one that fits your goal:
- Shopify Price & Stock Change Tracker (this actor) — monitor stores over time for price moves, restocks, and catalog changes (run on a schedule).
- Shopify Store Audit & Tech-Stack Lead Scorer — audit a store right now — installed apps, theme, tech-stack gaps, and catalog signals — for B2B prospecting.