Shein Price & Stock Monitor avatar

Shein Price & Stock Monitor

Pricing

Pay per event

Go to Apify Store
Shein Price & Stock Monitor

Shein Price & Stock Monitor

Monitor Shein product prices and stock from a watchlist of URLs. Tracks sale price, retail price, discount, flash-sale windows, and per-variant stock. Emits price_changed and price_delta each run. Built for dropshippers and resellers running scheduled monitoring workflows.

Pricing

Pay per event

Rating

0.0

(0)

Developer

BowTiedRaccoon

BowTiedRaccoon

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

17 hours ago

Last modified

Share

Monitor Shein product prices and stock from a watchlist of product page URLs. Each run fetches the current sale price, retail price, discount percentage, flash-sale status, and per-variant stock for every URL in your list. Price changes are detected by comparing to the previous run.

Built for dropshippers, resellers, and pricing analysts running scheduled monitoring workflows.

What it does

  • Fetches each Shein product detail page (PDP) via Bright Data Web Unlocker — the only path that clears Shein's Halo anti-bot server-side
  • Extracts sale price, retail price, discount percentage, flash-sale price and end time, in-stock status, per-variant stock map, and low-stock hints
  • Detects price changes by comparing sale_price to the previous run's recorded price (stored in the run's Key-Value store)
  • Emits one dataset record per URL with price_changed (bool) and price_delta (number) fields

Input

FieldTypeDescription
watchlistUrlsURL listShein product page URLs to monitor. Must end in -p-<id>.html. Example: https://us.shein.com/some-product-p-1234567.html
regionselectStorefront region for currency context (us, uk, de, fr, au, ca). Defaults to us.
maxItemsintegerMaximum records per run. Default 10. Set to 0 for no limit.

Note: Only product detail URLs (containing -p-<id>.html) are accepted. Category pages, search results, and collection pages are not supported.

Output

Each record includes:

FieldTypeDescription
goods_idstringShein's numeric product identifier
product_urlstringThe product page URL
product_namestringProduct display title
checked_atstringISO 8601 timestamp of this reading
sale_pricenumberCurrent discounted sale price
retail_pricenumberOriginal retail price before discount
discount_pctnumberDiscount percentage (0-100)
currencystringISO 4217 currency code (e.g. USD, GBP)
price_changedbooleanTrue if sale price differs from previous run
price_deltanumberPrice change from previous run (positive = rose, negative = dropped)
in_stockbooleanTrue if at least one variant is available
stock_level_hintstringLow-stock text shown on the page, or null
variants_in_stockstringJSON map of variant label to availability
variants_out_of_stockstringPipe-separated list of sold-out variant labels
is_flash_salebooleanTrue if a flash or limited-time sale is active
flash_sale_pricenumberFlash sale price if active, otherwise null
flash_sale_endstringISO 8601 end time of the flash sale, or null
coupon_appliedstringCoupon or promo label on the page, or null
regionstringStorefront region code

Example output record

{
"goods_id": "26507001",
"product_url": "https://us.shein.com/SHEIN-Solid-Color-Short-Sleeve-T-Shirt-p-26507001-cat-1738.html",
"product_name": "Pearl Letter Fashion Earrings",
"checked_at": "2026-07-05T00:46:11.000Z",
"sale_price": 1.4,
"retail_price": 2.0,
"discount_pct": 30,
"currency": "USD",
"price_changed": false,
"price_delta": 0,
"in_stock": false,
"stock_level_hint": null,
"variants_in_stock": "{\"one-size\":false}",
"variants_out_of_stock": "one-size",
"is_flash_sale": false,
"flash_sale_price": null,
"flash_sale_end": null,
"coupon_applied": null,
"region": "us"
}

Scheduling for continuous monitoring

This actor is designed to be run on a schedule (e.g. every 6 or 24 hours). Each run compares prices to the previous run's values and populates price_changed and price_delta. Use Apify's built-in scheduler or an external cron job to automate.

On the first run, price_changed will be false and price_delta will be 0 for all records (no previous data to compare against).

Region support

The region input controls the currency code in the currency output field. URLs must match the selected region's Shein domain (e.g. us.shein.com for us, shein.co.uk for uk). The actor auto-detects the region from the URL hostname if not specified.

Supported regions: us (USD), uk (GBP), de / fr / es / it (EUR), au (AUD), ca (CAD).

Limitations

  • Only product detail pages (PDP) are supported — not category or search pages
  • Each URL consumes one Bright Data Web Unlocker request
  • Price history is limited to the previous run's values; longer history requires external storage