India E-commerce Price Tracker avatar

India E-commerce Price Tracker

Pricing

from $2.00 / 1,000 product scrapeds

Go to Apify Store
India E-commerce Price Tracker

India E-commerce Price Tracker

Track non-personal product prices, discounts, ratings, images, stock status, and URLs across major Indian e-commerce marketplaces for price monitoring and market research.

Pricing

from $2.00 / 1,000 product scrapeds

Rating

0.0

(0)

Developer

Md Jakaria Mirza

Md Jakaria Mirza

Maintained by Community

Actor stats

0

Bookmarked

5

Total users

2

Monthly active users

2 days ago

Last modified

Categories

Share

Discover comparable products and review public prices, discounts, ratings, stock signals, and listing URLs across four Indian marketplaces in one normalized Apify dataset.

The Actor is built for competitor monitoring, assortment research, and recurring price snapshots. Structured product targets receive an explainable confidence score based on product-name terms, brand, pack size, and variant evidence. It saves product-level facts only and does not intentionally collect seller contacts, reviewer identities, emails, phone numbers, or other personal data.

What It Extracts

  • Product identity: source, search query, result position, product ID, title, brand, category, size, or variant.
  • Product matching: target product, confidence (exact, high, likely, or needs_review), numeric score, and human-readable match evidence.
  • Pricing: current price, MRP/list price, discount percentage, and currency.
  • Market signals: aggregate rating, rating count, and stock status when exposed by the source.
  • Links and media: absolute product URL and image URL.
  • Monitoring metadata: an ISO scrape timestamp on every record.

Supported Sources

SourceInput valueBest forLocation-aware
FlipkartflipkartGeneral retail and electronicsNo
MyntramyntraFashion, footwear, and accessoriesNo
BigBasketbigbasketGrocery and household productsYes
MeeshomeeshoValue fashion and marketplace catalogsNo

Each source runs independently. If one source is blocked or changes its payload, the Actor records a sanitized failure in SOURCE_STATUS and continues with the remaining selected sources. Explicit no-result pages remain distinct from parser or anti-bot failures.

Blinkit, JioMart, and AliExpress are temporarily unavailable in public inputs. Their browser-based paths produced unpredictable proxy costs and empty runs, so they are parked until a direct/API implementation or separate pricing model is verified.

Quick Start

Product discovery and comparison

Use structured targets when you know the products but not every competitor URL. The Actor derives one marketplace search per target and scores the returned candidates.

{
"sources": ["bigbasket"],
"targetProducts": [
{
"name": "Amul Gold Full Cream Milk",
"brand": "Amul",
"packSize": "1 L",
"variant": "Gold Full Cream"
},
{
"name": "Amul Taaza Milk",
"brand": "Amul",
"packSize": "1 L",
"variant": "Taaza"
},
{
"name": "Mother Dairy Full Cream Milk",
"brand": "Mother Dairy",
"packSize": "1 L",
"variant": "Full Cream"
}
],
"city": "Mumbai",
"latitude": 19.076,
"longitude": 72.8777,
"maxResults": 20,
"maxPagesPerQuery": 1,
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"],
"apifyProxyCountry": "IN"
}
}

This mode is intended for 3-5 deliberate targets. Confidence remains visible so ambiguous matches can be reviewed instead of silently accepted.

Store QA-sized first run

This matches the bounded Store prefill used by Apify's automated quality check.

{
"sources": ["bigbasket"],
"targetProducts": [
{
"name": "Amul Gold Full Cream Milk",
"brand": "Amul",
"packSize": "1 L",
"variant": "Gold Full Cream"
}
],
"maxResults": 1,
"maxPagesPerQuery": 1,
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"],
"apifyProxyCountry": "IN"
}
}

Multi-market price snapshot

{
"sources": ["flipkart", "myntra", "meesho"],
"searchQueries": ["wireless earbuds"],
"minPrice": 500,
"maxPrice": 5000,
"maxResults": 20,
"maxPagesPerQuery": 1,
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"],
"apifyProxyCountry": "IN"
}
}
{
"sources": ["bigbasket"],
"searchQueries": ["milk"],
"city": "Mumbai",
"latitude": 19.076,
"longitude": 72.8777,
"inStockOnly": true,
"maxResults": 15,
"maxPagesPerQuery": 1,
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"],
"apifyProxyCountry": "IN"
}
}

Input Fields

FieldTypeDefaultDescription
sourcesarray["bigbasket"]One or more supported marketplace input values.
targetProductsarrayEmptyUp to five structured product definitions with name, optional brand, pack size, and variant.
searchQueriesarray["milk"]Broad product-discovery keywords. Ignored when targetProducts is supplied.
citystringMumbaiLocation label used by BigBasket.
latitudenumber19.076Latitude for location-aware catalogs.
longitudenumber72.8777Longitude for location-aware catalogs.
brandsarrayEmptyOptional case-insensitive exact brand filters.
minPricenumber0Minimum numeric product price to keep.
maxPricenumber1000000Maximum numeric product price to keep.
inStockOnlybooleanfalseKeep only records explicitly identified as in stock.
maxResultsinteger1Maximum clean records saved across all selected sources, capped at 1000.
maxPagesPerQueryinteger1Maximum pages or scroll payloads inspected per query and source, capped at 25.
proxyConfigurationobjectIndia residentialFallback proxy settings. Direct access is tried first; the proxy is used only after a request failure or block.

Brand filters are exact after case normalization. Records with unknown stock are excluded when inStockOnly is enabled. Products without a numeric price or a source-owned product URL are never saved or charged.

Output Overview

Each dataset item follows the same field order for predictable CSV, Excel, JSON, and API exports.

Field groupFields
Source and identitysource, searchQuery, position, productId, title, brand, category
Match decisiontargetProduct, matchConfidence, matchScore, matchReason
Price and variantprice, mrp, discountPercent, currency, packSize
Market signalsrating, ratingCount, inStock
Links and timingproductUrl, imageUrl, scrapedAt

Verified Sample Output

The product facts in the following record came from a successful Myntra run on June 23, 2026. The matching fields show how broad keyword discovery is conservatively labeled after the v2 matching upgrade.

{
"source": "myntra",
"searchQuery": "kurti",
"targetProduct": "kurti",
"matchConfidence": "likely",
"matchScore": 65,
"matchReason": "name 1/1 terms",
"position": 1,
"productId": "32402499",
"title": "Sangria Women Embroidered Tie Up Neck Short Top",
"brand": "Sangria",
"price": 575,
"mrp": 1799,
"discountPercent": 68,
"currency": "INR",
"packSize": "S, M, L, XL, XXL",
"category": "Kurtis",
"rating": 4,
"ratingCount": 518,
"inStock": null,
"productUrl": "https://www.myntra.com/kurtis/sangria/sangria-women-embroidered-tie-up-neck-short-top/32402499/buy",
"imageUrl": "https://assets.myntassets.com/assets/images/2025/JANUARY/20/Ddbz2VT6_d952864492a042c2af83594217f21ef6.jpg",
"scrapedAt": "2026-06-23T13:06:09.076Z"
}

Historical Cross-Store Comparison Example

This is a public-data capability sample from a successful June 19, 2026 run for milk. It demonstrates conservative matching, not live price monitoring or a client report. The current Actor automates the same confidence discipline and exposes the evidence on each row.

ProductBigBasketBlinkitDifferenceMatch confidenceAction note
Amul Gold Full Cream Milk, 1 LINR 72, in stockINR 72, in stockINR 0 (0.0%)ExactSame public price in this stored snapshot.
Amul Taaza Milk, 1 LINR 57, in stockINR 59, in stockBlinkit +INR 2 (+3.5%)HighBrand, Taaza product family, and 1 L pack match. Blinkit includes Toned; verify the product page before acting.
Mother Dairy Full Cream Milk, 1 LINR 72, in stockNo safe match in the stored Blinkit result setNot comparedNeeds reviewDo not infer a competitor price. Add a known competitor URL or broaden the search.

This historical example is retained to explain matching confidence only; Blinkit is not currently selectable. The Blinkit rows were captured for Mumbai, while the stored BigBasket rows did not expose a city. Product titles that are merely similar are excluded instead of being silently compared.

Export Quality

Before a product is saved, the Actor normalizes and validates it:

  • every row has the same 22 output fields in the same order
  • numeric fields are finite numbers or null
  • missing text uses N/A only where that is clearer in spreadsheets
  • product links are required source-owned HTTPS URLs; image links are absolute HTTPS URLs or null
  • invalid or duplicate records are skipped
  • records are saved and charged atomically

Each run also writes two default key-value-store records. MATCH_REPORT keeps the best saved candidate per source and shows any observed price spread. SOURCE_STATUS reports every selected source as results, empty, failed, or not_run, with candidate count, saved count, duration, and sanitized error details.

Tips For Better Results

  • Start with one source, one query, one page, and 1-3 results. Use 5-20 results for recurring reports so setup and proxy work are shared across more records.
  • Runs default to 512 MB, with up to 1 GB available when selected manually.
  • Use broad product terms for discovery and exact brand filters for monitoring.
  • Split unrelated product categories into separate runs so result caps are easier to interpret.
  • Use Mumbai coordinates only as a sample; set the city and coordinates to the BigBasket market you need.
  • Enable an India residential proxy only when the selected source needs it.
  • Schedule the same input and compare price, mrp, discountPercent, and inStock over time.

Known Limits

  • Marketplace layouts, public APIs, anti-bot systems, and regional catalogs can change without notice.
  • Location-aware results can differ by city, coordinates, inventory zone, and run time.
  • Some sources do not expose stock, rating, image, brand, or MRP data for every listing; those fields remain null or N/A.
  • maxResults is shared across selected sources. Capacity unused by an earlier source is made available to later sources.
  • Each structured target receives a small per-source search budget so the first product cannot consume the entire comparison run. Set maxResults to at least the number of targets multiplied by the number of sources when every target/source pair matters.
  • Matching is heuristic. Similar names can still describe different variants, bundles, or regional listings, so likely and needs_review rows require source-page review.
  • A run fails when no selected source produces a valid product, making empty outputs visible in monitoring.

Pricing

This Actor uses pay-per-event pricing. The currently active Store prices are:

EventWhen chargedPrice
apify-actor-startAt run start; event count depends on memory (one per GB, minimum one)$0.00005 per event
product-scrapedOne clean product record saved$0.002

Before creating a proxy or requesting a marketplace page, the Actor verifies that the run budget can charge for at least one product-scraped event. It stops immediately when that is not possible, and it stops adding records when the user's maximum cost per run is reached. Apify displays the authoritative current event prices before a run; scheduled pricing updates may take effect later than documentation changes.

Data Safety

The Actor is limited to public product-level information. It does not intentionally output seller names, merchant IDs, reviewer identities, emails, phone numbers, or contact fields. Email- and phone-like strings found in text are redacted before output.

Responsible Use

This Actor is intended for lawful collection and processing of publicly available product information. Users are responsible for complying with source terms, robots.txt, applicable privacy laws, India's DPDP Act, and all local regulations.

Do not use this Actor to collect, store, sell, or misuse personal data without a lawful basis. The Actor author is not responsible for misuse by end users.

License

Apache-2.0