Amazon Reviews Scraper avatar

Amazon Reviews Scraper

Pricing

from $5.00 / 1,000 results

Go to Apify Store
Amazon Reviews Scraper

Amazon Reviews Scraper

Extract customer reviews from any Amazon product with filtering by star rating, verified purchases, and sorting options. Returns structured data including review text, ratings, helpful counts, dates, sentiment hints, images, and more across 19+ Amazon domains.

Pricing

from $5.00 / 1,000 results

Rating

1.2

(3)

Developer

Crawler Bros

Crawler Bros

Maintained by Community

Actor stats

0

Bookmarked

165

Total users

11

Monthly active users

an hour ago

Last modified

Share

Scrape Amazon customer reviews from any product page across 19+ Amazon domains (amazon.com, .co.uk, .de, .fr, .it, .es, .ca, .com.au, .co.jp, .in, .com.br, .com.mx, .nl, .sg, .ae, .sa, .pl, .se, .com.tr, plus .ie/.com.be/.co.za/.eg). Give it product URLs — or keywords / category URLs to auto-discover products — and get back structured review data: rating, title, full text, verified-purchase flag, helpful-vote count, date, reviewer location, images, and a product-level rating summary. Cookie-free by default (no login required); supply your own Amazon session cookie to unlock full paginated review history.

What this actor does

  • Two input modes: supply productUrls directly, or discover products via keywords / categoryUrls on a chosen Amazon domain
  • Cookie-free by default: reads the public inline review block on each product page, with automatic multi-marketplace fallback (amazon.ca / amazon.com.br) when a marketplace walls that block
  • Optional cookie mode: provide your own Amazon session cookie for up to 2,000 reviews per product, including the verified-purchase filter
  • Filters & sorting: star rating (1–5), most-helpful or most-recent order, verified-purchase-only (cookie mode)
  • Product rating aggregates: average rating, total ratings count, star breakdown, and an AI-generated "customers say" summary per product
  • Empty fields are omitted — a field is only present on a record when the source page actually rendered it, never returned as null

Output per review

  • productAsin — Amazon product ID (ASIN)
  • ratingScore — star rating, 1–5
  • reviewTitle — review headline
  • reviewDescription — full review text
  • reviewUrl — permalink to the review
  • reviewId — Amazon's review identifier
  • isVerified — verified-purchase flag
  • isVineVoice — Amazon Vine Voice (free-product review) flag
  • variant — product variant the reviewer purchased (e.g. "Size: Large, Color: Blue")
  • reviewedIn — raw "Reviewed in <location> on <date>" string
  • reviewDate — parsed ISO review date
  • reviewLocation — parsed reviewer location
  • reviewReaction — raw helpful-votes text
  • helpfulCount — parsed helpful-votes count
  • reviewImages[] — reviewer-uploaded image URLs (when includeImages=true)
  • reviewVideos[] — reviewer-uploaded video metadata
  • hasImages, imageCount, hasVideos, videoCount
  • sentimentHintpositive / neutral / negative, derived from ratingScore
  • wordCount — locale-aware length (character count for CJK/Hangul scripts, word count otherwise)
  • position — position of the review on the source page
  • reviewerName, reviewerProfile, reviewerAvatar — only when includeGdprSensitive=true
  • sourceUrl — the product URL this review was scraped from
  • scrapedAt — ISO timestamp of the scrape

Output per product rating summary (when includeAggregates=true)

One additional record per product (type: "amazon_review_aggregate"), parsed from the same page as the reviews — no extra request:

  • productAsin — Amazon product ID (ASIN)
  • averageRating — average star rating (e.g. 4.7)
  • globalRatingsCount — total number of ratings
  • starsBreakdown — percentage share per star level (1–5)
  • customersSay — AI-generated summary of common review themes
  • customersSayAspects[] — individual sentiment aspects behind that summary
  • sourceUrl, scrapedAt

This record is still pushed even when individual reviews are unavailable for a product (e.g. the marketplace's review block is walled), so a run never finishes with an empty dataset without an explanation.

Input

FieldTypeDefaultDescription
productUrlsarrayAmazon product URLs to scrape reviews from (/dp/, /gp/product/, /product/)
keywordsarraySearch terms; discovers matching products on country and scrapes their reviews too
categoryUrlsarrayAmazon category/browse URLs to discover products from
maxProductsFromDiscoveryinteger5Max products to discover per keywords/categoryUrls entry (1–20)
countrystringamazon.comAmazon domain to scrape (19+ supported)
maxReviewsinteger15Max reviews per product (1–15; cookie-free mode is capped by Amazon's inline review block)
sortBystringhelpfulhelpful (most helpful) or recent (most recent)
filterByStarstring"" (all)Filter reviews by star rating: "", 15
verifiedPurchasesOnlybooleanfalseCookie mode only — restrict to verified-purchase reviews
reviewerTypestring""Cookie mode only — Amazon's own reviewer-type filter (all_reviews / avp_only_reviews)
includeImagesbooleantrueExtract reviewer-uploaded images
includeGdprSensitivebooleanfalseInclude reviewer name / profile link / avatar
includeAggregatesbooleantruePush a product-level rating-summary record per product
sourceModestringAUTOAUTO (fallback + auto-escalate to residential proxy on a block) or INLINE_ONLY (strict, cheapest, single marketplace)
proxyConfigurationobject{ "useApifyProxy": true }Apify proxy (required). Datacenter is tried first; the actor escalates to residential automatically only if a block is detected
countryFallbackbooleantrueAuto-retry via amazon.ca / amazon.com.br when country is walled (cookie-free mode only)
cookieStringstring"" (cookie-free)Optional Amazon session cookie — switches to authenticated paginated mode when set
cookieModeMaxReviewsinteger500Max reviews per product in cookie mode (1–2000)
maxConcurrencyinteger1Concurrent browser pages (1–5)
requestTimeoutinteger60Per-page timeout in seconds (30–180)
retryCountinteger3Fresh-session retries on transient blocks (1–10)

Example: default single-product run

{
"productUrls": ["https://www.amazon.com/dp/B09X7MPX8L"],
"maxReviews": 15,
"sortBy": "helpful",
"includeImages": true,
"proxyConfiguration": { "useApifyProxy": true }
}

Example: filter by 5-star reviews on a UK listing

{
"productUrls": ["https://www.amazon.co.uk/dp/B08N5WRWNW"],
"country": "amazon.co.uk",
"filterByStar": "5",
"sortBy": "recent",
"proxyConfiguration": { "useApifyProxy": true }
}

Example: discover products by keyword

{
"productUrls": [],
"keywords": ["wireless earbuds"],
"maxProductsFromDiscovery": 5,
"country": "amazon.com",
"proxyConfiguration": { "useApifyProxy": true }
}
{
"productUrls": ["https://www.amazon.com/dp/B09X7MPX8L"],
"cookieString": "session-id=123-456...; ubid-main=...; at-main=...",
"cookieModeMaxReviews": 500,
"verifiedPurchasesOnly": true,
"proxyConfiguration": { "useApifyProxy": true }
}

Use cases

  • Product research — gauge sentiment and common complaints before sourcing or listing a product
  • Competitor monitoring — track how competing listings are rated over time
  • Voice-of-customer analysis — feed review text into NLP/sentiment pipelines
  • Reputation management — spot a sudden drop in average rating or a spike in negative reviews
  • Market discovery — use keywords/categoryUrls to find and evaluate products in a niche
  • Academic / market research — bulk-export review datasets across countries for cross-market comparison

FAQ

How many reviews can I get per product? Cookie-free mode returns Amazon's inline "Top reviews" block — typically ~8-13 reviews per ASIN, since Amazon does not paginate this block for anonymous visitors. For more, supply cookieString (your own logged-in session), which unlocks up to cookieModeMaxReviews (max 2,000) via paginated review pages.

Why is my run returning 0 reviews for a product? The most common causes: (1) the country marketplace currently walls its review block behind a sign-in prompt — countryFallback (on by default) automatically retries amazon.ca then amazon.com.br for the same product; (2) filterByStar is set to a rating that has no matching reviews on the page; (3) the product ASIN is discontinued or the URL is invalid.

Do I need to log in to Amazon? No. The default mode never uses your Amazon account. cookieString is optional and only needed if you want full paginated history beyond the inline review block.

Is my Amazon password ever needed? No — never paste your password anywhere in this actor. cookieString accepts only the session cookie value copied from your browser's DevTools, and the actor rejects any input containing the word "password".

Why does this actor require an Apify proxy? Amazon blocks anonymous datacenter traffic aggressively. This actor tries the cheaper datacenter/AUTO proxy first and automatically escalates to a residential proxy only when a block is actually detected, so most runs stay low-cost. proxyConfiguration is a required input.

Can I get reviews in other languages? Yes — set country to the corresponding domain (e.g. amazon.de for German). Reviews are returned in the language of that storefront.

Do you support the verified-purchases-only filter? Only in cookie mode (verifiedPurchasesOnly / reviewerType), since it requires an authenticated session. In cookie-free mode, isVerified is still populated on every review so you can filter downstream yourself.

Is this affiliated with Amazon? No. This is an independent third-party actor that reads publicly available product pages (and, optionally, your own authenticated session). It is not affiliated with or endorsed by Amazon.

More Amazon Actors

Part of a full Amazon scraper suite — also check out: