BigBasket Grocery Scraper: Prices & Stock avatar

BigBasket Grocery Scraper: Prices & Stock

Pricing

from $1.70 / 1,000 product scrapeds

Go to Apify Store
BigBasket Grocery Scraper: Prices & Stock

BigBasket Grocery Scraper: Prices & Stock

Monitor public BigBasket grocery prices and stock. Track run-to-run price drops, increases, and availability changes, plus MRP, discounts, ratings, brands, categories, images, and product URLs.

Pricing

from $1.70 / 1,000 product scrapeds

Rating

0.0

(0)

Developer

Md Jakaria Mirza

Md Jakaria Mirza

Maintained by Community

Actor stats

1

Bookmarked

36

Total users

5

Monthly active users

15 days ago

Last modified

Share

Scrape public BigBasket grocery listing pages and export clean product rows from the Apify Dataset in JSON, CSV, Excel, XML, HTML, RSS, or JSONL. The Actor is built for grocery price monitoring, FMCG catalog research, assortment checks, and simple ecommerce reporting. Optional persistent tracking compares every product with its previous run and labels price drops, price increases, and stock changes.

It collects public product details such as title, brand, pack size, price, MRP, discount percentage, rating, rating count, stock status, category, image URL, product URL, and scrape timestamp. It does not require a BigBasket login or API key, and it does not collect private customer, account, seller, or contact data.

The default run is intentionally small: one in-stock milk result with one result page and Apify Residential proxy in India.

What you get

  • Search query or category URL source
  • Product position in the listing response
  • BigBasket product ID
  • Product title, brand, and pack size
  • Current price, MRP, discount percentage, and currency
  • Category name when visible in the listing payload
  • Rating and rating count when available
  • Stock status
  • Optional previous price, price change, price-change percentage, and stock-change fields
  • Change labels: new, unchanged, price_drop, price_increase, back_in_stock, or out_of_stock
  • Product URL and image URL
  • Timestamp for each saved row

Common uses

  1. Monitor grocery and FMCG prices, MRP, discounts, and availability.
  2. Compare pack sizes and brand pricing across grocery keywords.
  3. Build small category snapshots for reports or dashboards.
  4. Track assortment changes for key BigBasket category pages.
  5. Enrich internal catalog rows with public marketplace listing metadata.

Ready-to-run workflows

Use these public task pages when you want a prepared input instead of configuring a run from scratch:

For the complete scheduled-run, Google Sheets, and webhook setup, see the BIGBASKET-PRICE-WATCH-KIT.md. A short recording outline is available in the VIDEO-DEMO-SCRIPT.md.

Quick start

Use this input for a low-cost first run:

{
"keywords": ["milk"],
"categoryUrls": [],
"brands": [],
"inStockOnly": true,
"maxResults": 1,
"maxPagesPerSource": 1,
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"],
"apifyProxyCountry": "IN"
}
}

After the run finishes, open the dataset and export the Products view.

Schedule Price And Stock Monitoring

Use an Apify Task and Schedule when you need recurring BigBasket price or availability snapshots. Start with a daily schedule; use a higher frequency only when the business need justifies the additional requests and cost.

This example tracks up to five Amul milk listings. The named key-value store keeps each product's previous state between scheduled runs:

{
"keywords": ["milk"],
"categoryUrls": [],
"brands": ["Amul"],
"inStockOnly": false,
"maxResults": 5,
"maxPagesPerSource": 1,
"trackChanges": true,
"trackingStoreName": "bigbasket-mumbai-milk-watch",
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"],
"apifyProxyCountry": "IN"
}
}
  1. Run the input once and confirm the returned products are relevant.
  2. Select Save as a new task on the Actor page.
  3. Open Schedules, create a daily schedule, and select the saved task.
  4. The first run marks each product as new and establishes the baseline.
  5. Later runs populate previousPrice, priceChange, priceChangePercent, previousInStock, stockChanged, and changeType.
  6. Filter changeDetected: true, or connect a webhook/API workflow for downstream alerts.

The tracking store keeps the latest previous state, not a complete time series. Export each run to your own table when you need full historical charts. The Actor does not match products across different stores or send messages by itself. Availability and prices are regional, so use a separate trackingStoreName for every delivery region and keep the same proxy/delivery context when comparing runs.

For cost control, begin with one keyword, one page, five or fewer results, and a daily schedule. Avoid duplicate schedules and aggressive polling.

Need Cross-Store Price Comparison?

This Actor is designed for BigBasket-only catalog and price snapshots. To compare a product across BigBasket, Blinkit, Myntra, Meesho, and other supported India ecommerce sources, use the India E-commerce Price Tracker.

For reliable comparison, use the same city or delivery area across sources and keep product-match confidence visible when titles or variants differ.

Input

FieldTypeDefaultDescription
keywordsarray["milk"]One to five grocery search terms. Leave empty only when using category URLs.
categoryUrlsarray[]Optional BigBasket listing URLs under /pc/, /pb/, or /cl/. Invalid category URLs are skipped when other sources are valid.
brandsarray[]Optional exact brand filters. Matching is case-insensitive.
inStockOnlybooleantrueSave only products that BigBasket marks available for sale.
maxResultsinteger1Maximum unique products saved across the run. Range: 1-1000.
maxPagesPerSourceinteger1Maximum pages requested for each keyword or category URL. Range: 1-25.
trackChangesbooleanfalseCompare each result with the previous product state stored across runs.
trackingStoreNamestringbigbasket-price-historyNamed persistent store used for tracking. Use one name per delivery region/workflow.
proxyConfigurationobjectResidential IndiaApify proxy settings. Residential India proxy is recommended for regional prices and availability.

Output

A saved dataset row looks like this:

{
"source": "bigbasket",
"searchQuery": "milk",
"position": 1,
"productId": "40147597",
"title": "Daily Health Toned Milk",
"brand": "Heritage",
"price": 32,
"mrp": null,
"discountPercent": null,
"currency": "INR",
"packSize": "500 ml",
"category": "Bakery, Cakes & Dairy",
"rating": 3.7,
"ratingCount": 18036,
"inStock": true,
"trackingEnabled": true,
"changeDetected": true,
"changeType": "price_drop",
"previousPrice": 35,
"priceChange": -3,
"priceChangePercent": -8.57,
"previousInStock": true,
"stockChanged": false,
"firstSeenAt": "2026-06-29T10:00:00.000Z",
"previousScrapedAt": "2026-06-29T10:00:00.000Z",
"productUrl": "https://www.bigbasket.com/pd/40147597/heritage-daily-health-toned-milk-500-ml-pouch/",
"imageUrl": "https://www.bbassets.com/media/uploads/p/l/40147597_9-heritage-daily-health-toned-milk.jpg",
"scrapedAt": "2026-06-30T10:00:00.000Z"
}

Optional fields may be null or N/A when BigBasket does not expose them in the listing response.

Pricing

This Actor uses Apify Pay Per Event pricing.

EventPrice
product-scraped$0.002 per saved product row
apify-actor-start$0.00005 per GB when the Actor starts

Products are charged only when a clean product record is saved to the dataset. The Actor uses atomic dataset charging, so the run stops before saving unpaid records after the user's maximum charge is reached.

Platform usage, such as compute and proxy traffic, may also be charged by Apify depending on the run configuration. Residential India proxy is recommended for BigBasket reliability and regional pricing, but it can increase platform usage cost.

Cost control

  • Start with one keyword and maxResults: 1.
  • Keep maxPagesPerSource: 1 for the first test.
  • Keep inStockOnly enabled unless you need unavailable products.
  • Add more keywords, brands, or category pages only after checking the output.
  • Use the run's maximum cost setting if you want a strict spending cap.

Reliability

BigBasket prices and availability vary by region and can change frequently. The Actor includes:

  • Anonymous storefront cookie initialization before listing API requests
  • India residential proxy defaults
  • Retries for transient request failures
  • Deduplication by product ID, URL, or title
  • Invalid category URL skipping when at least one valid source remains
  • A zero-result failure guard so blocked or empty runs do not look successful
  • Field-level fallbacks when optional listing data is unavailable
  • Optional persistent previous-state tracking in a named key-value store
  • Machine-readable price and availability change labels for scheduled workflows

Limits

  • This Actor reads public listing data, not private account or order data.
  • Some product cards do not expose ratings, discounts, stock flags, images, or MRP.
  • Brand and category values come from BigBasket's listing payload and may need downstream cleaning for strict catalog workflows.
  • Built-in tracking stores only the latest previous state, not every historical observation.
  • Regional comparisons require a consistent delivery/proxy context and a separate tracking store per region.
  • This Actor is not an official BigBasket API and is not affiliated with BigBasket.

Responsible use

Use this Actor for lawful research, price monitoring, and analysis of publicly available information. You are responsible for complying with BigBasket's terms, robots.txt, privacy laws, India's DPDP Act where applicable, and all local regulations.

Do not use this Actor to collect, infer, sell, or misuse personal data. The Actor author is not responsible for misuse by end users.

Feedback

If this Actor is useful in your workflow, consider leaving an honest review. Feedback helps guide reliability improvements.

License

Apache-2.0. See LICENSE.