Flipkart Product Scraper 🛒 avatar

Flipkart Product Scraper 🛒

Pricing

from $1.20 / 1,000 results

Go to Apify Store
Flipkart Product Scraper 🛒

Flipkart Product Scraper 🛒

Extract detailed product data from Flipkart with ease. Capture essential information including prices, descriptions, images, and customer reviews instantly. Ideal for market research, price monitoring, and e-commerce analysis. Get structured data for your business needs today!

Pricing

from $1.20 / 1,000 results

Rating

5.0

(5)

Developer

Shahid Irfan

Shahid Irfan

Maintained by Community

Actor stats

4

Bookmarked

344

Total users

41

Monthly active users

3 days ago

Last modified

Share

What does Flipkart Product Scraper do?

Flipkart Product Scraper collects product listings from Flipkart.com. Give it a category, brand, or search results URL, or give it a keyword, and it returns product titles, prices, discounts, ratings, specifications, stock state, and product links as structured JSON.

Use the output for price tracking, catalog research, assortment checks, or a feed into your own database.

What you get

Each product record includes:

  • Product identity: id, item_id, listing_id, title, brand, category, market_place
  • Pricing: current price, original price, discount amount, discount percentage, displayed text, currency
  • Ratings: average rating, rating count, review count, and the 1 to 5 star breakdown
  • Details: key specifications, specification key-values, warranty summary
  • Stock: availability status, availability flag, buyability intent
  • Media and links: main image URL and the full product URL
  • Analytics labels and a fetched_at timestamp

Why use this Actor

  • Track a category every day and compare prices between runs.
  • Search a keyword across Flipkart without opening a browser.
  • Collect ratings and discount depth before a purchase decision.
  • Feed product data into Google Sheets, Airtable, or your own API.

Input

ParameterTypeDefaultWhat it does
startUrlStringMonitors category URLCategory, brand, or search results URL. Ignored when keyword is set.
keywordStringEmptySearch term. When supplied, the Actor searches this term and ignores startUrl.
sortStringrelevancerelevance, popularity, price_asc, price_desc, or newest.
results_wantedInteger20Stop after this many products. Range 1 to 10000.
proxyConfigurationObjectApify Residential proxyProxy settings. Turn it off if you supply your own proxies.

Use one search source per run. A submitted keyword wins over a submitted URL, and the Actor ignores the URL completely in that case. To run a URL search after using a keyword, clear the keyword field.

Flipkart returns about 40 products per page and repeats a few promoted items, so the final count can be slightly lower than the number of cards the listing shows. The Actor removes duplicates before saving.

Output

FieldTypeDescription
idString or NullFlipkart product identifier
item_idString or NullItem identifier from the product URL
listing_idString or NullListing identifier
titleString or NullProduct title
brandString or NullBrand name
categoryString or NullCategory label
priceNumber or NullCurrent selling price
price_textString or NullCurrent price with the rupee sign
original_priceNumber or NullOriginal or MRP price
original_price_textString or NullOriginal price with the rupee sign
discount_percentNumber or NullDiscount percentage
discount_amountNumber or NullDiscount amount
discount_textString or NullDiscount label, for example 56% off
ratingNumber or NullAverage rating
rating_countNumber or NullNumber of ratings
review_countNumber or NullNumber of reviews
rating_breakdownObject or NullCount per star level, keys 1 to 5
specificationsObject or NullSpecification key-values
key_specsArray or NullKey specification bullets
warranty_summaryString or NullWarranty text
availability_statusString or NullIN_STOCK, OUT_OF_STOCK, PREORDER, or another Flipkart state
is_availableBoolean or NullAvailability flag
buyability_intentString or NullPOSITIVE or NEGATIVE when Flipkart provides it
is_flipkart_advantageBoolean or NullFlipkart Advantage flag
swatch_availableBoolean or NullWhether listing swatches are available
currencyString or NullCurrency code, usually INR
analytics_categoryString or NullAnalytics category label
analytics_sub_categoryString or NullAnalytics sub-category label
market_placeString or NullMarketplace label
image_urlString or NullProduct image URL at 832 by 832
urlString or NullFull product URL
fetched_atStringISO timestamp for the extraction

Examples

Collect 20 monitors from a category:

{
"startUrl": "https://www.flipkart.com/computers/computer-components/monitors-accessories/monitors/pr?sid=6bo,g0i,unb,pp8&marketplace=FLIPKART",
"results_wanted": 20
}

Search by keyword and sort by price:

{
"keyword": "gaming keyboard",
"sort": "price_asc",
"results_wanted": 100
}

Collect a larger batch from a category:

{
"startUrl": "https://www.flipkart.com/mobiles/pr?sid=tyy,4io&marketplace=FLIPKART",
"results_wanted": 300,
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"]
}
}

Sample output

This record was extracted from a live run:

{
"id": "MONH7GHGSGF3AGM9",
"item_id": "ITM909C8202E1864",
"listing_id": "LSTMONH7GHGSGF3AGM9N3DVIC",
"title": "Samsung S3 54.6 cm (22 inch) Full HD LED Backlit IPS Panel with Super Slim Borderless Design, Ports-HDMI, VGA, Game Mode, Eye Saver Mode, Wall Mountable, Black Monitor (LS22D300GAWXXL)",
"brand": "Samsung",
"category": "DesktopMonitor",
"price": 5999,
"price_text": "₹5999",
"original_price": 13700,
"original_price_text": "₹13700",
"discount_percent": 56,
"discount_amount": 7701,
"discount_text": "56% off",
"rating": 4.4,
"rating_count": 5835,
"review_count": 685,
"rating_breakdown": {
"1": 309,
"2": 92,
"3": 270,
"4": 1304,
"5": 3860
},
"key_specs": [
"Panel Type: IPS Panel",
"Screen Resolution Type: Full HD",
"Brightness: 250 nits",
"Response Time: 5 ms | Refresh Rate: 100 Hz",
"HDMI Ports - 1"
],
"warranty_summary": "3 Years Domestic Warranty on the Product",
"availability_status": "IN_STOCK",
"is_available": true,
"buyability_intent": "POSITIVE",
"is_flipkart_advantage": true,
"swatch_available": true,
"currency": "INR",
"market_place": "FLIPKART",
"image_url": "https://rukminim1.flixcart.com/image/832/832/xif0q/monitor/n/o/5/-original-imahrzfxjjaazdrd.jpeg?q=75",
"url": "https://www.flipkart.com/samsung-s3-54-6-cm-22-inch-full-hd-led-backlit-ips-panel-super-slim-borderless-design-ports-hdmi-vga-game-mode-eye-saver-wall-mountable-black-monitor-ls22d300gawxxl/p/itm909c8202e1864?pid=MONH7GHGSGF3AGM9&lid=LSTMONH7GHGSGF3AGM9N3DVIC&marketplace=FLIPKART&store=6bo%2Fg0i%2Funb%2Fpp8",
"fetched_at": "2026-11-01T11:33:52.764Z"
}

Pagination and recovery

The Actor requests one listing page at a time, removes duplicate products, and saves each page as soon as it is parsed. It stops when it reaches results_wanted, when Flipkart reports no further pages, or when three pages in a row add no new products.

If a request fails, the Actor retries with a different browser profile, a different Flipkart API host, and a new proxy session. Temporary failures include network errors, timeouts, HTTP 403, 408, 425, 429, and 5xx responses. Permanent client errors are not retried.

If the JSON endpoint stops returning products, the Actor switches to the product data embedded in the listing page and continues pagination there. A run that extracts nothing fails with a message instead of finishing with an empty dataset, and the key-value store keeps LATEST_FAILURE_DIAGNOSTICS with the profile, host, page, status, and timing of each attempt.

Tips

  • Open the URL in a browser first and confirm it shows a product grid. A product detail page is not a listing, so it returns no records.
  • Keep results_wanted small for a first run. Raise it after you see how deep the category goes.
  • Apify Residential proxy is the default. If a direct run returns 403, keep the proxy on or supply your own proxies.
  • Some listings do not expose every field. Null values mean Flipkart did not return that value for the product, not that extraction failed.
  • Sorting applies to the whole listing. The Actor does not re-sort records after collecting them.

Integrations

Send the dataset to:

  • Google Sheets for price history and inventory sheets
  • Airtable for a searchable product catalog
  • Make or Zapier for scheduled updates
  • Your own API through webhooks
  • PostgreSQL, BigQuery, or S3 through Apify's dataset export

Datasets download as JSON, CSV, Excel, XML, or HTML from Apify Console.

FAQ

Can I export the data to CSV or Excel?

Yes. Open the dataset in Apify Console and choose CSV, Excel, JSON, XML, or HTML.

Can I run the Actor on a schedule?

Yes. Create a schedule in Apify Console and set the interval you need, for example every day at 06:00.

Does the Actor paginate until it reaches my count?

Yes, while Flipkart keeps returning new products. Some categories run out of pages before the requested count, and the run stops cleanly at the end of the listing.

Why are some fields null?

Flipkart does not include every field for every product or category. A missing rating, warranty, or specification is returned as null.

What happens if Flipkart changes its page structure?

The Actor detects a failed or empty response and retries with a different profile and host. If the JSON endpoint is unusable, it reads the product data embedded in the listing page. If both paths fail, the run stops with an error and writes diagnostics instead of saving an empty dataset.

Can I use a URL and a keyword together?

The keyword takes priority and the URL is ignored. Run one source per run.

How many products can I collect in one run?

You can request up to 10000. The practical limit is the number of unique products Flipkart exposes for that listing, plus the run's page and runtime guards.

Scraping public data can be legal, but you are responsible for following applicable laws, Flipkart's terms, and privacy rules. This Actor is intended for publicly available listing data.

Support

Open an issue on the Actor page for bugs or feature requests.

This Actor collects publicly available listing data from Flipkart.com. You are responsible for how you use the data and for complying with applicable laws and website terms.