Flipkart Products Scraper avatar

Flipkart Products Scraper

Pricing

from $0.44 / 1,000 item extracteds

Go to Apify Store
Flipkart Products Scraper

Flipkart Products Scraper

Scrape Flipkart product listings for prices, discounts, ratings, availability, offers, images, product IDs, and seller/catalog data.

Pricing

from $0.44 / 1,000 item extracteds

Rating

0.0

(0)

Developer

Hanna Nosova

Hanna Nosova

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Share

Scrape Flipkart product listings into clean ecommerce datasets for price monitoring, assortment research, seller analysis, and competitor tracking.

Use this Actor to collect Flipkart product titles, URLs, product IDs, prices, discounts, ratings, availability labels, offers, images, and source metadata from search keywords or direct product URLs. Export results as CSV, JSON, Excel, XML, RSS, or consume them through the Apify API.

Who is it for?

This scraper is useful for ecommerce teams, sellers, brands, agencies, and analysts who need repeatable Flipkart product intelligence for pricing, assortment, stock, ratings, and offer tracking.

Use cases

  • Track competitor prices and discounts for a category or product family.
  • Monitor Flipkart assortment changes for brands, private labels, and sellers.
  • Build product research datasets for marketplaces, analytics dashboards, and BI tools.
  • Watch ratings and review-count movement for products you sell or compete with.
  • Feed clean product URLs, IDs, prices, and images into enrichment or automation workflows.

Input recipes

Small smoke test

{
"searchQueries": ["wireless earbuds"],
"maxItems": 10,
"pageLimit": 1,
"sortBy": "relevance",
"includeProductDetails": false,
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"],
"apifyProxyCountry": "IN"
}
}

Example input

Monitor a product category

{
"searchQueries": ["smart watch", "running shoes"],
"maxItems": 100,
"pageLimit": 3,
"sortBy": "popularity"
}

Check specific products

{
"productUrls": [
{ "url": "https://www.flipkart.com/realme-buds-t110-rma2306-ai-enc-calls-38-hours-playback-deep-bass-bluetooth/p/itma5620a39a816e?pid=ACCH4HY6GRGJYUU8" }
],
"maxItems": 1
}

What data can you extract?

FieldDescription
querySearch query that produced the product, if any.
inputTypesearch or productUrl.
positionOverall product position in search results.
pageSearch page number.
rankOnPageProduct rank on the source page.
titleFlipkart product title.
productUrlFlipkart product URL.
pidFlipkart product ID.
priceCurrent listed price.
originalPriceOriginal/list price when shown.
currencyPrice currency, usually INR.
discountDisplayed discount text, for example 78% off.
ratingAverage product rating.
ratingCountNumber of ratings shown.
reviewCountNumber of reviews when available.
availabilityStock or availability label when shown.
brandBest-effort brand from page data or product title.
sellerNameSeller name when available.
offersOffer labels shown for the product.
imageUrlProduct image URL.
categoryBreadcrumbsCategory path when available.
sourceUrlFlipkart page used to produce the row.
scrapedAtISO timestamp for the scrape.

Example output

{
"query": "wireless earbuds",
"inputType": "search",
"position": 1,
"page": 1,
"rankOnPage": 1,
"title": "GOBOULT Z40 with ENC Mic, 60Hr Battery, Metal Finish, Low Latency, 5.3v Bluetooth",
"productUrl": "https://www.flipkart.com/goboult-z40-enc-mic-60hr-battery-metal-finish-low-latency-5-3v-bluetooth/p/itm21d4f04d5f53e?pid=ACCGKXHYZECYJRTS",
"pid": "ACCGKXHYZECYJRTS",
"price": 1099,
"originalPrice": 4999,
"currency": "INR",
"discount": "78% off",
"rating": 4.1,
"ratingCount": 509542,
"reviewCount": null,
"availability": null,
"brand": "GOBOULT",
"sellerName": null,
"offers": ["Bank Offer"],
"imageUrl": "https://rukminim2.flixcart.com/image/612/612/xif0q/headphone/d/a/c/-enriched-transparent-original-imahebzzqs5fspcv.png?q=70",
"categoryBreadcrumbs": [],
"sourceUrl": "https://www.flipkart.com/search?q=wireless+earbuds",
"scrapedAt": "2026-07-09T18:31:54.263Z"
}

Input settings

SettingJSON keyUse it forDefault
Search queriessearchQueriesFlipkart keywords, categories, brands, or competitor terms.[]
Product URLsproductUrlsSpecific Flipkart product pages to fetch best-effort.[]
Maximum productsmaxItemsCap saved rows and control spend.20
Maximum search pagespageLimitLimit pagination for each query.2
Sort search results bysortByChoose relevance, popularity, price_asc, price_desc, or recency.relevance
Fetch product detail pagesincludeProductDetailsBest-effort detail-page enrichment. Keep off for faster category monitoring.false
Proxy configurationproxyConfigurationProxy settings for stable cloud scraping. Residential India is recommended for Flipkart.Apify residential, India

Pricing

EventPriceCharged when
Run start$0.005 per runOnce when the Actor starts.
Item processedTiered from $0.000835 to $0.0002033 per saved dataset rowEach product row saved to the dataset.

Current item tiers: Free $0.000835, Bronze $0.00072609, Silver $0.00056635, Gold $0.00043565, Platinum $0.00029044, Diamond $0.0002033.

Tiered pricing is based on measured cloud run costs. Start with small maxItems values while testing.

Tips for best results

  • Start with maxItems: 10 and pageLimit: 1 to confirm a query returns the products you expect.
  • Use search queries for the richest and most reliable price/rating/listing exports.
  • Use direct product URLs for best-effort checks; some Flipkart product pages may throttle anonymous requests.
  • Schedule repeat runs to monitor price changes, discounts, rating movement, and stock labels over time.
  • Keep queries focused by category, brand, model, or competitor keyword for cleaner exports.

API usage

Node.js:

import { ApifyClient } from "apify-client";
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor("fetch_cat/flipkart-products-scraper").call({
searchQueries: ["wireless earbuds"],
maxItems: 10,
pageLimit: 1
});
console.log(run.defaultDatasetId);

Python:

from apify_client import ApifyClient
client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("fetch_cat/flipkart-products-scraper").call(run_input={
"searchQueries": ["wireless earbuds"],
"maxItems": 10,
"pageLimit": 1,
})
print(run["defaultDatasetId"])

cURL:

curl -X POST "https://api.apify.com/v2/acts/fetch_cat~flipkart-products-scraper/runs?token=YOUR_APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"searchQueries":["wireless earbuds"],"maxItems":10,"pageLimit":1}'

MCP and AI agents

Use this Actor from MCP-compatible tools through the official Apify MCP Server.

$claude mcp add --transport http apify "https://mcp.apify.com?tools=fetch_cat/flipkart-products-scraper"
{
"mcpServers": {
"apify": {
"url": "https://mcp.apify.com?tools=fetch_cat/flipkart-products-scraper"
}
}
}

Example prompt: "Run Flipkart Products Scraper for wireless earbuds and summarize the cheapest products with rating above 4.0."

Limits and caveats

  • Flipkart pages can vary by region, category, and stock state, so some optional fields may be empty.
  • Direct product pages are fetched best-effort; search result pages are the recommended source for reliable listing exports.
  • Very large or frequent runs may be throttled by the source website. The default Apify residential proxy setting is recommended for cloud runs; keep runs scoped while testing.
  • Data is fresh at scrape time and can change after the run finishes.

Legality and responsible use

Process only data you are allowed to access. Follow Flipkart's terms, Apify's terms, and applicable laws. This Actor collects publicly visible catalog information and does not bypass logins or paywalls.

FAQ

Can I export results?

Yes. Apify datasets support JSON, CSV, Excel, XML, RSS, and API access.

Can I monitor prices over time?

Yes. Schedule the Actor with the same input and compare datasets between runs.

Why are some fields empty?

Flipkart does not expose every field for every product or page. The Actor leaves unavailable fields empty instead of guessing.

Should I enable product details?

Use includeProductDetails only when you need best-effort enrichment from individual product pages. Keep it disabled for faster and more reliable listing exports.

Support

Open an issue from the Actor page if a run fails or output looks wrong. Include the run ID or run URL, input JSON, expected output, actual output, and one reproducible public URL or query.