Flipkart Reviews Scraper
Pricing
from $4.00 / 1,000 review scrapeds
Flipkart Reviews Scraper
Scrape Flipkart product reviews by product or product-reviews URL. Returns rating, title, text, reviewer name & location, verified-purchase flag, date, helpful/unhelpful votes, review images, and the product rating summary. PPE — $0.004 per review. MCP/API-ready.
Pricing
from $4.00 / 1,000 review scrapeds
Rating
0.0
(0)
Developer
Khadin Akbar
Maintained by CommunityActor stats
0
Bookmarked
3
Total users
1
Monthly active users
7 days ago
Last modified
Categories
Share
Flipkart Reviews Scraper — Ratings, Verified Buyers
Flipkart Reviews Scraper is an Apify Actor for analysts, builders, and AI agents that need structured review data from a specific Flipkart product URL or product-reviews URL. It accepts one or more product links that include an itm... id and a pid= parameter, then returns one record per review plus an optional product_summary record per product. Each review record can include rating, title, full review text, reviewer name and location, verified-purchase flag, review date, helpful and unhelpful votes, the reviewed variant, review images, and source URLs. The dataset also includes the product rating summary when enabled, and the Actor is usable through Apify MCP.
Best fit and connected workflows
Use this Actor when your workflow starts with a known Flipkart product and needs review-level detail in a structured dataset.
It fits naturally when you want to:
- collect review text and metadata for sentiment analysis, tagging, or summarization
- compare review patterns across product variants
- combine product details from an upstream listing scraper with review engagement data
- feed an AI agent that needs Flipkart review records through Apify MCP or the Apify API
- build a review archive from multiple specific product links
For connected product context, pair it with Flipkart Product Scraper. A practical workflow is to scrape the parent product first, then pass the related product link into this Actor to gather review engagement data for the same item.
Practical scenario
An ecommerce analyst, Priya, starts with a Flipkart product page for a smartphone. She pastes the product URL into productUrls and keeps the summary setting on. The dataset returns review rating, title, body, author, location, isVerifiedPurchase, and reviewDate, plus a product summary with averageRating and ratingDistribution. Priya uses the helpful-vote counts and review text to identify recurring themes, then sends the dataset into a reporting workflow for weekly product monitoring.
What you get
Review fields
| Field | Description | Example |
|---|---|---|
recordType | Record type identifying review rows | review |
productKey | Flipkart product id (pid) the record belongs to | MOBH2Z9HJYYQBFGD |
productUrl | Canonical Flipkart product page URL | https://www.flipkart.com/.../p/... |
reviewsUrl | Product-reviews page URL used for scraping | https://www.flipkart.com/.../product-reviews/... |
reviewId | Flipkart review id when exposed by the layout | null |
rating | Star rating from 1 to 5 for the review | 5 |
title | Flipkart review title or sentiment tag, such as "Value-for-money" | Value-for-money |
body | Full review text, expanded past the "READ MORE" or "more" toggle | The phone feels solid and the display is sharp. |
author | Reviewer name | Asha |
location | Reviewer city or region when shown | Bengaluru |
isVerifiedPurchase | Marked true when the review shows "Certified Buyer" or "Verified Purchase" | true |
reviewDate | Flipkart's displayed date, either absolute or relative | Aug, 2024 |
helpfulCount | Helpful votes shown on the review | 12 |
unhelpfulCount | Unhelpful votes shown on the review | 1 |
variant | The product variant the review refers to | Color Blue, Storage 128 GB |
images | Flipkart CDN image URLs attached to the review | ["https://rukminim2.flixcart.com/..."] |
sortOrder | Sort mode used for the record set | MOST_HELPFUL |
page | Source page number | 1 |
scrapedAt | ISO-8601 UTC capture timestamp | 2026-06-21T00:00:00.000Z |
Product summary fields
When includeProductSummary is enabled, the dataset also includes one recordType: "product_summary" row per product with:
| Field | Description | Example |
|---|---|---|
totalRatings | Total ratings shown for the product | 1842 |
totalReviews | Total review count shown for the product | 312 |
averageRating | Average rating derived from the star distribution | 4.4 |
ratingDistribution | Counts per star, with keys 5 through 1 | {"5":1200,"4":412,"3":104,"2":63,"1":63} |
Input
Input fields
| Field | Type | Default | Notes |
|---|---|---|---|
productUrls | array[string] | required | Flipkart product or product-reviews URLs. Each needs an itm... id and a pid= parameter. |
maxReviews | integer | 100 | Per-product cap, 1-1000. Ten reviews are paginated per page. |
sortBy | string | MOST_HELPFUL | Also MOST_RECENT, POSITIVE_FIRST, NEGATIVE_FIRST. Controls ordering served by Flipkart before paging. |
includeProductSummary | boolean | true | Emits one product_summary record per product when enabled. |
proxyConfiguration | object | Apify proxy default | Residential India proxy settings. |
customProxyUrls | array[string] | [] | Optional residential or mobile India proxy URLs. |
maxConcurrency | integer | 3 | Number of review pages fetched in parallel. |
Valid input example
{"productUrls": ["https://www.flipkart.com/samsung-galaxy-m35-5g-thunder-grey-128-gb/p/itm24a2a82cf1782?pid=MOBH2Z9HJYYQBFGD"],"maxReviews": 50,"sortBy": "MOST_RECENT","includeProductSummary": true,"proxyConfiguration": {"useApifyProxy": true},"customProxyUrls": [],"maxConcurrency": 3}
Output
Results are written to the Apify dataset named in the Actor output. The dataset contains all scraped review records and, when enabled, one product_summary record per product. You can read the dataset as JSON, CSV, Excel, HTML, or RSS through the Apify platform.
Output fields
| Field | Type | Meaning | Example |
|---|---|---|---|
recordType | string | review for an individual review, product_summary for the aggregate product record | review |
productKey | string | Flipkart product id (pid) the record belongs to | MOBH2Z9HJYYQBFGD |
productUrl | string | Canonical Flipkart product page URL | https://www.flipkart.com/.../p/... |
reviewsUrl | string | Product-reviews page URL used for scraping | https://www.flipkart.com/.../product-reviews/... |
reviewId | string | Flipkart review id when exposed by the layout | null |
rating | integer | Star rating 1-5 | 5 |
title | string | Review title or sentiment tag | Value-for-money |
body | string | Full review text expanded past the toggle | The phone feels solid and the display is sharp. |
author | string | Reviewer name | Asha |
location | string | Reviewer location when shown | Bengaluru |
isVerifiedPurchase | boolean | Verified purchase marker | true |
reviewDate | string | Flipkart's displayed date | Aug, 2024 |
helpfulCount | integer | Helpful votes | 12 |
unhelpfulCount | integer | Unhelpful votes | 1 |
variant | string | Reviewed variant | Color Thunder Grey, Storage 128 GB |
images | array[string] | Review image URLs | ["https://rukminim2.flixcart.com/image/..."] |
sortOrder | string | Sort mode used for the records | MOST_HELPFUL |
page | integer | Source page number | 1 |
totalRatings | integer | Product summary only | 1842 |
totalReviews | integer | Product summary only | 312 |
averageRating | number | Product summary only | 4.4 |
ratingDistribution | object | Product summary only, star counts from 5 to 1 | {"5":1200,"4":412,"3":104,"2":63,"1":63} |
scrapedAt | string | ISO-8601 UTC capture timestamp | 2026-06-21T00:00:00.000Z |
Illustrative output record
{"recordType": "review","productKey": "MOBH2Z9HJYYQBFGD","productUrl": "https://www.flipkart.com/samsung-galaxy-m35-5g-thunder-grey-128-gb/p/itm24a2a82cf1782?pid=MOBH2Z9HJYYQBFGD","reviewsUrl": "https://www.flipkart.com/samsung-galaxy-m35-5g-thunder-grey-128-gb/product-reviews/itm24a2a82cf1782?pid=MOBH2Z9HJYYQBFGD","reviewId": null,"rating": 5,"title": "Value-for-money","body": "The phone feels solid and the display is sharp. Battery backup is good for daily use.","author": "Asha","location": "Bengaluru","isVerifiedPurchase": true,"reviewDate": "Aug, 2024","helpfulCount": 12,"unhelpfulCount": 1,"variant": "Color Thunder Grey, Storage 128 GB","images": ["https://rukminim2.flixcart.com/image/..."],"sortOrder": "MOST_HELPFUL","page": 1,"scrapedAt": "2026-06-21T00:00:00.000Z"}
How it works
The Actor uses a Chromium browser with PlaywrightCrawler, Apify Residential proxy pinned to India, a fingerprint pool, and a session pool with cookie persistence. It is built to handle Flipkart's rotating obfuscated CSS classes by anchoring extraction on the stable buyer-label text and reading review fields positionally. The same extractor works across the classic web review front-end and the React-Native-Web review front-end.
Reviews are paginated with &page=N, and the Actor de-duplicates across pages. It also expands truncated review bodies before extraction. Image, media, and font bytes are skipped during download so the crawler keeps focus on page content and review image URLs.
Pricing
This Actor uses Pay per event plus Apify platform usage. Open the live Pricing tab for the current event pricing and platform usage details.
- Actor start: charged once per run
- Review scraped: charged for each review written to the dataset
The primary event is Review scraped. The product summary record is included in the dataset and is not charged as a review event.
For example, if you scrape one hundred reviews, you are billed for one hundred review events, plus the run start event. Use maxReviews to shape the number of review events per product.
Use with AI agents (MCP)
This Actor is available as an Apify Actor usable through Apify MCP. It is designed for tools that need structured Flipkart review retrieval from a specific product link.
Tool description: Fetch Flipkart review records and optional product summary data for one or more product URLs, then return a dataset that an agent or downstream automation can read.
Actor identity: khadinakbar/flipkart-reviews-scraper
"Scrape this Flipkart product URL and return the review dataset with rating, title, body, author, location, verified purchase status, review date, helpful votes, images, and product summary when available. Use the canonical product or product-reviews URL only."
Output interpretation for agents
reviewrecords are the individual review factsproduct_summaryrecords provide aggregate rating context for the same productproductUrlandreviewsUrlidentify the source pages usedscrapedAthelps agents distinguish the capture time from the review date shown on Flipkart
Provenance, scope, pagination, and cost guidance
The output is sourced from public Flipkart review pages only. Pagination is handled automatically, with about ten reviews per page. maxReviews is a per-product cap, so agents can use it to bound dataset size and spend. sortBy changes the order in which Flipkart serves reviews, while includeProductSummary controls whether the per-product aggregate record is added.
Example with the Apify API
import { ApifyClient } from 'apify-client';const client = new ApifyClient({token: process.env.APIFY_TOKEN,});const run = await client.actor('khadinakbar/flipkart-reviews-scraper').call({productUrls: ['https://www.flipkart.com/samsung-galaxy-m35-5g-thunder-grey-128-gb/p/itm24a2a82cf1782?pid=MOBH2Z9HJYYQBFGD',],maxReviews: 10,sortBy: 'MOST_HELPFUL',includeProductSummary: true,});const datasetId = run.defaultDatasetId;const { items } = await client.dataset(datasetId).listItems();console.log(items);
Best results and outcome guidance
- Use specific product or product-reviews URLs with both
itm...andpid=present. - Set
maxReviewsper product to keep the dataset focused on the review depth you need. - Use
MOST_RECENTwhen you want the newest public review sequence, andMOST_HELPFULwhen you want high-engagement reviews first. - Keep the summary enabled when you want both review-level detail and a per-product aggregate in the same dataset.
- For multi-product jobs, keep each URL tied to one product so the output remains easy to group by
productKey. - If you are routing outputs into a downstream AI step, read
recordTypefirst so the agent can separate review rows from summary rows.
Design note
I found that the live dataset contract exposes recordType with exactly two values: review and product_summary. That makes the output shape straightforward to route in downstream code because each record clearly signals whether it is a single review or the per-product aggregate.
FAQ
Can I use a search results URL or category page?
This Actor is routed for specific Flipkart product or product-reviews URLs. Search and category discovery belongs in an upstream workflow, then you can pass the selected product links here.
Which Actor pairs well before this one?
Flipkart Product Scraper is the natural upstream step when you want the parent listing context first, then the related review data from this Actor.
What does maxReviews control?
It sets the maximum number of reviews collected per product URL, with pagination handled automatically.
Does sortBy change which reviews exist?
It changes the order Flipkart serves before paging. It is an ordering control, not a filter on the review set.
Can I use this with another Flipkart scraper?
Yes. A common workflow is to use Flipkart Product Scraper for product context, then this Actor for review-level engagement data.
What if I only need the aggregate rating data?
Keep includeProductSummary enabled and read the product_summary record for each product. If you need only individual reviews, you can disable the summary output.
Related Actors
- Flipkart Product Scraper - Use this upstream to collect the parent product context, then pass the product link into this Actor for review-level engagement data.
Responsible use
Use this Actor in ways that respect Flipkart's terms, applicable law, and the privacy of reviewers. The dataset can contain reviewer names, locations, and public review text, so handle it with appropriate care in your own systems.