Zepto Scraper avatar

Zepto Scraper

Pricing

Pay per usage

Go to Apify Store
Zepto Scraper

Zepto Scraper

Scrape Zepto, India's quick-commerce grocery app: price, MRP, discount, in-stock flag and units in stock for every product in a category, plus seller, shelf life and FSSAI licence from product pages. Free trial, no per-result fee, JSON or CSV. Powered by Scrape.do.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

scrapedo

scrapedo

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

6 hours ago

Last modified

Categories

Share

Scrape product data from Zepto, India's quick-commerce grocery app: price, MRP, discount, in-stock flag and units in stock for every product in a category, plus an optional catalog sheet per product with seller, shelf life, FSSAI licence number, country of origin and full description.

Free to try: run it without any setup and get up to 50 products per run. Add your free Scrape.do API token to remove the limit.

Why most Zepto scrapers fail

Zepto sits behind AWS WAF. A script gets HTTP 429, or an HTTP 202 with an empty body and an x-amzn-waf-action: challenge header. Because 202 counts as success to most HTTP clients, a naive scraper saves empty pages without reporting a single error.

This actor fetches every page through the Scrape.do web scraping API, which returns the real page through residential proxies in India: no browser, 10 credits per page. It then reads the product data Zepto streams into the HTML (the Next.js payload), including out-of-stock products that a simple parser skips.

What data you get

FieldDescription
name, brand, packSizeProduct name, brand and pack size
priceInr, mrpInr, discountPctSelling price and printed MRP in rupees (Zepto stores paise; the actor converts), and the discount
inStock, availableQtyStock flag and the units the dark store holds
rating, ratingCountAverage rating and number of ratings
subcategoryThe product's primary subcategory
storeIdThe Zepto dark store the price and stock belong to
url, variantIdProduct page and variant id
seller, shelfLife, fssaiLicence, countryOfOrigin, category, maxPerOrder, imageCount, descriptionWith Add product details on, or for product URLs
sourceUrl, scrapedAtWhere and when the row was scraped

How to use it

  1. Whole category: paste one subcategory URL (open a category on zepto.com and click a subcategory in the left sidebar, for example Chips & Crisps). With Walk the whole category on, the actor reads every sibling subcategory too.
  2. Product details: turn on Add product details to open each product page as well (one extra request per product).
  3. Product URLs: paste product URLs (zepto.com/pn/.../pvid/...) to get the catalog sheet for specific products.

Input example

{
"startUrls": ["https://www.zepto.com/cn/munchies/chips-crisps/cid/d2c2a144-43cd-43e5-b308-92628fa68596/scid/df4f5100-c02f-4906-83b8-ddb744081a7a"],
"includeSiblingSubcategories": true,
"includeProductDetails": false,
"maxItems": 500,
"scrapeDoToken": "YOUR_SCRAPEDO_TOKEN"
}

Output example

Each product is one item. Example (fictional product, illustrative values):

{
"variantId": "44444444-4444-4444-8444-444444444440",
"name": "Example Chilli Chips",
"brand": "Examplo",
"packSize": "1 pack (41 g)",
"priceInr": 19,
"mrpInr": 20,
"discountPct": 5,
"inStock": true,
"availableQty": 30,
"rating": 4.9,
"ratingCount": 401062,
"subcategory": "Chips & Crisps",
"storeId": "33333333-3333-4333-8333-333333333333",
"url": "https://www.zepto.com/pn/example-chilli-chips/pvid/44444444-4444-4444-8444-444444444440",
"sourceUrl": "https://www.zepto.com/cn/munchies/chips-crisps/cid/.../scid/...",
"scrapedAt": "2026-10-27T09:00:00.000Z"
}

Download the results as JSON, CSV, Excel or HTML from the run's Output tab, or pull them through the Apify API.

Pricing and your Scrape.do token

There is no per-result fee for this actor; Apify only bills its normal platform usage. Pages are fetched through the Scrape.do web scraping API:

  1. Free trial, no token: leave the Scrape.do API token field empty and you get up to 50 products per run.
  2. Your own Scrape.do token: no product limit. Every page (one subcategory with up to 32 products, or one product page) is 10 Scrape.do credits. Create a free Scrape.do account for 1,000 free credits a month.

Good to know

  • 32 products per subcategory. Zepto's web pages stop at 32 products per subcategory and have no page 2. Walk more subcategories and categories for wider coverage.
  • One dark store. Each price and stock count belongs to one Zepto dark store. Without a location Zepto serves its default store in east Bengaluru; storeId records which store a row came from.
  • Price and stock come from the listing. Product pages cap the stock count and can lag the listing, so when details are added, the listing values win.
  • Search is not supported. Zepto's search needs a browser-computed signature and robots.txt disallows /search; walk categories instead.
  • Prefer Python? The same logic is an open-source package: pip install zepto-scraper (GitHub).

FAQ

Is scraping Zepto legal? The actor reads category (/cn/) and product (/pn/) pages, which Zepto's robots.txt allows, and never touches search, API, cart or account paths. Product names, prices and stock are not personal data. Read Zepto's terms of use for your use case and keep request rates modest. This is not legal advice.

Something broke or a field is missing? Open an issue in the Issues tab and we will look at it.