Shopify Scraper: Products, Prices & Stock Monitor — Cartlark
Pricing
$0.80 / 1,000 product delivereds
Shopify Scraper: Products, Prices & Stock Monitor — Cartlark
Shopify and WooCommerce product scraper: every product of any store with prices, compare-at (sale) prices, discount %, stock per variant, SKU, vendor, tags and images. Monitor mode returns only price drops, new products and stock changes. $0.80 per 1,000 products, no start fee.
Pricing
$0.80 / 1,000 product delivereds
Rating
0.0
(0)
Developer
CyberMax
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 hours ago
Last modified
Categories
Security
Limited permissionsShare
Cartlark: Shopify Scraper — Products, Prices & Stock Monitor (also WooCommerce)
Every product, price, sale price and stock level of any Shopify or WooCommerce store, and an alert when they change
Paste a store URL and get its whole catalogue as clean rows: title, price range, compare-at (was) price, discount %, stock per variant, SKU, vendor, type, tags, images and link. Turn on monitor mode, schedule it, and you only get (and only pay for) what changed: price drops and rises with the % change, new products, out-of-stock and back-in-stock. Works with Shopify and WooCommerce, detected automatically. $0.80 per 1,000 products, no start fee.
▶ Try it now with a prefilled input · $0.0008 per product (a 250-product store = $0.20) · no start fee · Apify's free plan includes $5 of credit a month
Built for: e-commerce brands watching competitors' prices · dropshippers and resellers researching products · agencies auditing a client's catalogue · price-comparison and deal sites · market researchers · AI agents that need a store's live catalogue
Real output (real run on Apify, 10 Nov 2026: 2 stores, 10 products in 5 s, platform cost $0.0001; four rows shown):
| Product | Price | Was | Currency | In stock | Variants | Platform |
|---|---|---|---|---|---|---|
| Women's Wool Runner NZ - Shadow Blue | 120 | USD | 12 of 13 sizes | 13 | Shopify | |
| Women's Wool Cruiser - Port | 120 | USD | 3 of 13 sizes | 13 | Shopify | |
| All Star Canvas Hi Converse | 29 | USD | yes | 20 | WooCommerce | |
| Varanise CN Tee Hilfiger Denim | 15 | 19 | USD | yes | WooCommerce |
{"stores": ["https://www.allbirds.com"], "maxProductsPerStore": 20}
Ready-made inputs (one click)
| Job | Input | Result |
|---|---|---|
| Whole catalogue | {"stores": ["competitor.com"]} | Every product (up to 250; raise maxProductsPerStore for more). |
| One collection | {"stores": ["https://shop.com/collections/sale"]} | Just that Shopify collection. |
| What's on sale | {"stores": ["shop1.com", "shop2.com"], "onlyOnSale": true} | Products priced below their compare-at price, with discount %. |
| Product research | {"stores": ["shop.com"], "keywords": ["hoodie", "jacket"], "maxPrice": 80} | Matching products under $80. |
| Price & stock alerts | {"stores": ["competitor.com"], "monitor": true, "monitorKey": "competitors"} | On a schedule: only new products, price changes and stock changes. |
Use cases
- Competitor price monitoring: a daily scheduled run on your competitors' stores, with a Slack or email ping when a price drops or a product sells out.
- Restock and drop alerts: know the moment a sold-out product is back or a new collection lands.
- Product research for dropshipping and resale: best sellers, price points, vendors and tags across many stores in one table.
- Catalogue audits: missing SKUs, products without images, out-of-stock items, sale prices left on by mistake.
- Feeds for comparison sites and AI agents: clean JSON with a stable shape for both platforms.
Output fields
| Field | What it is |
|---|---|
platform, store, productId, url | Where the product lives. |
title, vendor, productType, tags, sku | Product details (WooCommerce: categories and tags go into tags, the first category into productType). |
price, priceMax, currency | Lowest and highest variant price, in the store's currency. |
compareAtPrice, onSale, discountPercent | The "was" price and the discount when the product is on sale. |
available, variantsAvailable, variantCount | In stock at all, how many variants are in stock, how many variants exist. |
variants[] | Each variant: id, title, SKU, price, compare-at price, in stock, options (size/colour). Shopify. |
image, imageCount | Main image URL and number of images. |
rating, reviewCount | WooCommerce product rating, when the store shows one. |
description | Plain text, when includeDescription is on. |
createdAt, publishedAt, updatedAt, scrapedAt | Dates (Shopify gives all three). |
change, previousPrice, priceChange, priceChangePercent, previousAvailable | Monitor mode only: new, price, compare_at_price, out_of_stock, back_in_stock or variants. |
A run summary per store (platform found, products scanned and delivered, and the reason when a store could not be read) is saved as the OUTPUT record.
Input
| Field | What it does |
|---|---|
stores | Store domains or URLs. A Shopify /collections/<name> URL limits the run to that collection. |
maxProductsPerStore | Default 250. In monitor mode: how many products per store are watched. |
keywords, minPrice, maxPrice, onlyAvailable, onlyOnSale | Filters. Filtered-out products are free. |
includeVariants, includeDescription | Row detail. |
platform | auto (default), shopify or woocommerce. |
monitor, monitorKey | Only changes since the last monitor run with the same watchlist. |
proxyConfiguration | Optional, for stores that rate-limit. |
Run it on a schedule (price and stock alerts)
- Open the Actor, set
{"stores": ["competitor-a.com", "competitor-b.com"], "monitor": true, "monitorKey": "competitors"}and save it as a task. - Schedules → Create: daily at 07:00 (cron
0 7 * * *), pointing at the task. - Add an integration on the task: Slack, email or a webhook "when the run succeeds". The first run records the catalogue; every later run returns only what changed, so a quiet day costs almost nothing.
Integrations
- Google Sheets / Make / Zapier / n8n: use the Apify app or node and map the dataset fields (title, price, compareAtPrice, available, change).
- API (curl):
curl -X POST "https://api.apify.com/v2/acts/cybermax~shopify-scraper/run-sync-get-dataset-items?token=YOUR_TOKEN" \-H "Content-Type: application/json" -d '{"stores": ["https://www.allbirds.com"], "maxProductsPerStore": 20}'
- Python:
ApifyClient(token).actor("cybermax/shopify-scraper").call(run_input={"stores": ["allbirds.com"]}) - AI agents (MCP): add
cybermax/shopify-scraperto the Apify MCP server (https://mcp.apify.com?actors=cybermax/shopify-scraper) so Claude, Cursor or any MCP client can ask "what does this store sell, and at what price?".
Why Cartlark
| Cartlark | Typical Shopify product scraper on the Store | |
|---|---|---|
| Platforms | Shopify and WooCommerce, detected per store | Usually one platform per Actor |
| Change monitoring | Built in: price changes with %, stock in/out, new products; unchanged = free | Rare |
| Sale data | Compare-at price, discount %, on-sale filter | Often raw prices only |
| Variants | Every variant's price, SKU and stock | Varies, sometimes a paid add-on |
| Price | $0.80 per 1,000 products, no start fee | $1 to $10 per 1,000, some with a start fee (Store prices on 10 Nov 2026) |
FAQ
Which stores work? Any Shopify store and any WooCommerce store that has the standard public catalogue switched on (most do). Password-protected stores, stores that disable these endpoints, and stores whose robots.txt disallows them are skipped, and the summary says why. Other platforms (Wix, BigCommerce, Magento) are not supported.
Is it legal? Cartlark reads only the public product catalogue a storefront serves to every visitor, the same data shown on its product pages, and it follows each store's robots.txt. It collects no customer or personal data. Use the data in line with the laws that apply to you.
Why not write my own script? You can; Cartlark saves the edge cases: both platforms in one shape, minor-unit prices, variable products, pagination limits, rate limits with retries, robots.txt, and change detection with state kept between runs.
How much will a run cost? $0.0008 per product delivered, nothing else. A 1,000-product store is $0.80; a daily monitor on a 500-product store that changes 10 prices costs about $0.01 a day.
Can I get more than 250 products? Yes, set maxProductsPerStore up to 50,000.
Also from CyberMax
- Auditmoss: SEO Audit Crawler · find broken links and on-page SEO issues on any store or site.
- Unfurlwren: Meta Tags & Open Graph Extractor · titles, descriptions and schema for any list of URLs.
- Bouncefern: Bulk URL Status & Redirect Checker · check thousands of product links at once.
Found this useful? A quick rating helps others find it.
© 2026 CyberMax. All rights reserved.