Dataspryva

Amazon Review Aggregates & Extended History Scraper

Collect Amazon customer reviews and rating summaries by product URL, ASIN, or keyword across 19 marketplaces, with star-rating and sort filters, reviewer images, and an optional session for deeper review history.

Input schema

Input fields, types, required flags, descriptions, defaults, and prefills come from the published definition. Prefill examples are distinct from defaults.

FieldTypeRequiredDescription
productUrlsarrayoptionalList of Amazon product URLs to scrape reviews from. Supports /dp/, /gp/product/, /gp/aw/d/ and /product/ URL formats across 19+ Amazon domains. A bare 10-character ASIN (e.g. "B09X7MPX8L", no URL) is also accepted -- it is expanded into a full URL using the `country` domain below. Leave empty and use `keywords`/`categoryUrls` instead to discover products automatically.
keywordsarrayoptionalSearch keywords used to auto-discover products when `productUrls` is empty (e.g. "wireless earbuds"). Fetches Amazon's public `/s?k=` search results page for each keyword and reviews up to `maxProductsToDiscover` resulting products.
categoryUrlsarrayoptionalAdvanced mode: supply your own Amazon `/s?...` or `/b?node=...` category/search URL(s) directly (used only when `productUrls` is empty). Products are discovered the same way as `keywords`.
Show all input fields
FieldTypeRequiredDescription
productUrlsarrayoptionalList of Amazon product URLs to scrape reviews from. Supports /dp/, /gp/product/, /gp/aw/d/ and /product/ URL formats across 19+ Amazon domains. A bare 10-character ASIN (e.g. "B09X7MPX8L", no URL) is also accepted -- it is expanded into a full URL using the `country` domain below. Leave empty and use `keywords`/`categoryUrls` instead to discover products automatically.
keywordsarrayoptionalSearch keywords used to auto-discover products when `productUrls` is empty (e.g. "wireless earbuds"). Fetches Amazon's public `/s?k=` search results page for each keyword and reviews up to `maxProductsToDiscover` resulting products.
categoryUrlsarrayoptionalAdvanced mode: supply your own Amazon `/s?...` or `/b?node=...` category/search URL(s) directly (used only when `productUrls` is empty). Products are discovered the same way as `keywords`.
maxProductsToDiscoverintegeroptionalMaximum number of products to discover per run from `keywords`/`categoryUrls`. Ignored when `productUrls` is supplied directly.
extendedHistorybooleanoptionalMerge Amazon's public extended review feed for each ASIN (no login, no cookie): up to 100 reviews per star/sort bucket, and walking every bucket yields 100-850+ unique reviews for popular US products, deduplicated against the product-page sample. Coverage varies by ASIN (some products expose few or no rows) and the feed carries Amazon.com reviews only; when off, only the ~8-13 product-page top reviews are returned.
mergeMarketplacesarrayoptionalAdditional Amazon marketplaces whose product page is fetched for the same ASIN and whose reviews are merged (deduplicated by review ID and content). Each marketplace typically adds a handful of locally-written reviews. Empty = only the product's own marketplace.
includeAggregatesbooleanoptionalEmit one additional `amazon_review_aggregate` record per product with the product title, average rating, global ratings count, star histogram (plus derived per-star counts), and "Customers say" AI summary with aspects -- parsed from the same page HTML already fetched. These widgets render server-side even when individual review cards are gated, so this record is available more reliably than the reviews themselves.
countrystringoptionalAmazon country domain to scrape from. URLs from a different domain are honored automatically.
maxReviewsintegeroptionalHard cap on the number of reviews returned per product AFTER merging and deduplication (1-2000). The product-page sample alone yields ~8-13; the extended review feed can add 100-850+ for popular US products.
sortBystringoptionalHow to sort the returned reviews: most helpful first, or most recent first.
filterByStarstringoptionalKeep only reviews with this rating. `positive` keeps 4-5 star reviews; `critical` keeps 1-2 star reviews. Applied to the merged set, so narrow filters can legitimately return few or no rows.
verifiedPurchasesOnlybooleanoptionalKeep only reviews carrying Amazon's Verified Purchase badge. Applied server-side for the extended feed and client-side for product-page rows.
filterKeywordsarrayoptionalKeep only reviews whose title or text contains at least one of these keywords (case-insensitive). Empty = no keyword filter.
reviewsNewerThanstringoptionalKeep only reviews dated on or after this date (e.g. 2026-01-15 or any ISO date). Reviews whose localized date cannot be parsed are kept. Empty = no date filter.
mediaReviewsOnlybooleanoptionalKeep only reviews that include at least one reviewer-uploaded image or video.
includeImagesbooleanoptionalExtract images and videos uploaded by reviewers (full-resolution URLs).
includeGdprSensitivebooleanoptionalInclude reviewer names, profile links, and avatars. Set to false for GDPR compliance.

Download the published input schema

View complete JSON
{
  "description": "Collect Amazon customer reviews and rating summaries with no login and no proxy setup. The actor reads the product page's inline review block (~8-13 top reviews, retried across desktop and mobile because the wall is probabilistic) and, when `extendedHistory` is on, merges Amazon's public extended review feed for the same ASIN (typically 100-850+ unique US reviews). `mergeMarketplaces` adds the product page from other Amazon marketplaces and unions the deduplicated reviews.",
  "properties": {
    "categoryUrls": {
      "default": [],
      "description": "Advanced mode: supply your own Amazon `/s?...` or `/b?node=...` category/search URL(s) directly (used only when `productUrls` is empty). Products are discovered the same way as `keywords`.",
      "editor": "stringList",
      "items": {
        "type": "string"
      },
      "prefill": [],
      "title": "Category / Search URLs (auto-discover products)",
      "type": "array"
    },
    "country": {
      "default": "amazon.com",
      "description": "Amazon country domain to scrape from. URLs from a different domain are honored automatically.",
      "editor": "select",
      "enum": [
        "amazon.com",
        "amazon.co.uk",
        "amazon.de",
        "amazon.fr",
        "amazon.it",
        "amazon.es",
        "amazon.ca",
        "amazon.com.au",
        "amazon.co.jp",
        "amazon.in",
        "amazon.com.br",
        "amazon.com.mx",
        "amazon.nl",
        "amazon.sg",
        "amazon.ae",
        "amazon.sa",
        "amazon.pl",
        "amazon.se",
        "amazon.com.tr"
      ],
      "enumTitles": [
        "United States (amazon.com)",
        "United Kingdom (amazon.co.uk)",
        "Germany (amazon.de)",
        "France (amazon.fr)",
        "Italy (amazon.it)",
        "Spain (amazon.es)",
        "Canada (amazon.ca)",
        "Australia (amazon.com.au)",
        "Japan (amazon.co.jp)",
        "India (amazon.in)",
        "Brazil (amazon.com.br)",
        "Mexico (amazon.com.mx)",
        "Netherlands (amazon.nl)",
        "Singapore (amazon.sg)",
        "UAE (amazon.ae)",
        "Saudi Arabia (amazon.sa)",
        "Poland (amazon.pl)",
        "Sweden (amazon.se)",
        "Turkey (amazon.com.tr)"
      ],
      "prefill": "amazon.com",
      "title": "Amazon Domain",
      "type": "string"
    },
    "extendedHistory": {
      "default": true,
      "description": "Merge Amazon's public extended review feed for each ASIN (no login, no cookie): up to 100 reviews per star/sort bucket, and walking every bucket yields 100-850+ unique reviews for popular US products, deduplicated against the product-page sample. Coverage varies by ASIN (some products expose few or no rows) and the feed carries Amazon.com reviews only; when off, only the ~8-13 product-page top reviews are returned.",
      "prefill": true,
      "title": "Extended Review History",
      "type": "boolean"
    },
    "filterByStar": {
      "default": "",
      "description": "Keep only reviews with this rating. `positive` keeps 4-5 star reviews; `critical` keeps 1-2 star reviews. Applied to the merged set, so narrow filters can legitimately return few or no rows.",
      "editor": "select",
      "enum": [
        "",
        "1",
        "2",
        "3",
        "4",
        "5",
        "positive",
        "critical"
      ],
      "enumTitles": [
        "All Stars",
        "1 Star",
        "2 Stars",
        "3 Stars",
        "4 Stars",
        "5 Stars",
        "Positive (4-5 stars)",
        "Critical (1-2 stars)"
      ],
      "title": "Filter by Star Rating",
      "type": "string"
    },
    "filterKeywords": {
      "default": [],
      "description": "Keep only reviews whose title or text contains at least one of these keywords (case-insensitive). Empty = no keyword filter.",
      "editor": "stringList",
      "items": {
        "type": "string"
      },
      "prefill": [],
      "title": "Filter by Keywords",
      "type": "array"
    },
    "includeAggregates": {
      "default": true,
      "description": "Emit one additional `amazon_review_aggregate` record per product with the product title, average rating, global ratings count, star histogram (plus derived per-star counts), and \"Customers say\" AI summary with aspects -- parsed from the same page HTML already fetched. These widgets render server-side even when individual review cards are gated, so this record is available more reliably than the reviews themselves.",
      "prefill": true,
      "title": "Include Review Aggregates",
      "type": "boolean"
    },
    "includeGdprSensitive": {
      "default": false,
      "description": "Include reviewer names, profile links, and avatars. Set to false for GDPR compliance.",
      "prefill": false,
      "title": "Include GDPR Sensitive Data",
      "type": "boolean"
    },
    "includeImages": {
      "default": true,
      "description": "Extract images and videos uploaded by reviewers (full-resolution URLs).",
      "prefill": true,
      "sectionCaption": "Output Options",
      "sectionDescription": "Toggle which fields are emitted. GDPR-sensitive fields are off by default.",
      "title": "Include Review Images",
      "type": "boolean"
    },
    "keywords": {
      "default": [],
      "description": "Search keywords used to auto-discover products when `productUrls` is empty (e.g. \"wireless earbuds\"). Fetches Amazon's public `/s?k=` search results page for each keyword and reviews up to `maxProductsToDiscover` resulting products.",
      "editor": "stringList",
      "items": {
        "type": "string"
      },
      "prefill": [],
      "title": "Keywords (auto-discover products)",
      "type": "array"
    },
    "maxProductsToDiscover": {
      "default": 10,
      "description": "Maximum number of products to discover per run from `keywords`/`categoryUrls`. Ignored when `productUrls` is supplied directly.",
      "editor": "number",
      "maximum": 50,
      "minimum": 1,
      "prefill": 10,
      "title": "Max Products to Discover",
      "type": "integer"
    },
    "maxReviews": {
      "default": 100,
      "description": "Hard cap on the number of reviews returned per product AFTER merging and deduplication (1-2000). The product-page sample alone yields ~8-13; the extended review feed can add 100-850+ for popular US products.",
      "editor": "number",
      "maximum": 2000,
      "minimum": 1,
      "prefill": 15,
      "sectionCaption": "Filters & Sorting",
      "sectionDescription": "Limit and shape the merged review set returned per product. All filters below are applied after merging and deduplication.",
      "title": "Max Reviews per Product",
      "type": "integer"
    },
    "mediaReviewsOnly": {
      "default": false,
      "description": "Keep only reviews that include at least one reviewer-uploaded image or video.",
      "prefill": false,
      "title": "Media Reviews Only",
      "type": "boolean"
    },
    "mergeMarketplaces": {
      "default": [],
      "description": "Additional Amazon marketplaces whose product page is fetched for the same ASIN and whose reviews are merged (deduplicated by review ID and content). Each marketplace typically adds a handful of locally-written reviews. Empty = only the product's own marketplace.",
      "editor": "select",
      "items": {
        "enum": [
          "amazon.com",
          "amazon.co.uk",
          "amazon.de",
          "amazon.fr",
          "amazon.it",
          "amazon.es",
          "amazon.ca",
          "amazon.com.au",
          "amazon.co.jp",
          "amazon.in",
          "amazon.com.br",
          "amazon.com.mx",
          "amazon.nl",
          "amazon.sg",
          "amazon.ae",
          "amazon.sa",
          "amazon.pl",
          "amazon.se",
          "amazon.com.tr"
        ],
        "enumTitles": [
          "United States (amazon.com)",
          "United Kingdom (amazon.co.uk)",
          "Germany (amazon.de)",
          "France (amazon.fr)",
          "Italy (amazon.it)",
          "Spain (amazon.es)",
          "Canada (amazon.ca)",
          "Australia (amazon.com.au)",
          "Japan (amazon.co.jp)",
          "India (amazon.in)",
          "Brazil (amazon.com.br)",
          "Mexico (amazon.com.mx)",
          "Netherlands (amazon.nl)",
          "Singapore (amazon.sg)",
          "UAE (amazon.ae)",
          "Saudi Arabia (amazon.sa)",
          "Poland (amazon.pl)",
          "Sweden (amazon.se)",
          "Turkey (amazon.com.tr)"
        ],
        "type": "string"
      },
      "prefill": [],
      "title": "Merge Extra Marketplaces",
      "type": "array"
    },
    "productUrls": {
      "description": "List of Amazon product URLs to scrape reviews from. Supports /dp/, /gp/product/, /gp/aw/d/ and /product/ URL formats across 19+ Amazon domains. A bare 10-character ASIN (e.g. \"B09X7MPX8L\", no URL) is also accepted -- it is expanded into a full URL using the `country` domain below. Leave empty and use `keywords`/`categoryUrls` instead to discover products automatically.",
      "editor": "stringList",
      "items": {
        "type": "string"
      },
      "prefill": [
        "https://www.amazon.com/dp/B09X7MPX8L"
      ],
      "sectionCaption": "Inputs",
      "sectionDescription": "Product URLs whose reviews should be scraped. Any of the supported Amazon country domains is accepted.",
      "title": "Product URLs",
      "type": "array"
    },
    "reviewsNewerThan": {
      "description": "Keep only reviews dated on or after this date (e.g. 2026-01-15 or any ISO date). Reviews whose localized date cannot be parsed are kept. Empty = no date filter.",
      "editor": "datepicker",
      "prefill": "",
      "title": "Reviews Newer Than",
      "type": "string"
    },
    "sortBy": {
      "default": "helpful",
      "description": "How to sort the returned reviews: most helpful first, or most recent first.",
      "editor": "select",
      "enum": [
        "helpful",
        "recent"
      ],
      "enumTitles": [
        "Most Helpful",
        "Most Recent"
      ],
      "prefill": "helpful",
      "title": "Sort Reviews By",
      "type": "string"
    },
    "verifiedPurchasesOnly": {
      "default": false,
      "description": "Keep only reviews carrying Amazon's Verified Purchase badge. Applied server-side for the extended feed and client-side for product-page rows.",
      "prefill": false,
      "title": "Verified Purchases Only",
      "type": "boolean"
    }
  },
  "schemaVersion": 1,
  "title": "Amazon Reviews Scraper Input",
  "type": "object"
}

Output schema

Published result links and storage locations. This schema is not an exhaustive contract for every field in a dataset record.

FieldTypeRequiredDescription
reviewsstringoptionalDataset containing all collected Amazon customer reviews and per-product review aggregates.

Download the published output schema

View complete JSON
{
  "actorOutputSchemaVersion": 1,
  "description": "One record per collected Amazon customer review — rating, title, body, verified-purchase/Vine flags, helpful-votes count, reviewer location, sentiment hint, images/videos, the pipeline that produced the row (`source`: productPage / extendedHistory / cookieMode), its marketplace, a stable dedup fingerprint, and product/source metadata. One additional `amazon_review_aggregate` record per product carries the product title, average rating, global ratings count, star histogram with derived per-star counts, and Amazon's \"Customers say\" summary with aspects. Empty / null fields are dropped at push time, so any field documented below may be absent if the source did not populate it. Records may carry `collectionCompleteness: \"INLINE_SAMPLE\"` when `sourceMode=FULL_PAGE` was requested without a valid `cookieString` and `onAuthRequired=RETURN_PARTIAL` fell back to the cookie-free product-page sample instead of the full paginated set.",
  "properties": {
    "reviews": {
      "description": "Dataset containing all collected Amazon customer reviews and per-product review aggregates.",
      "template": "{{links.apiDefaultDatasetUrl}}/items",
      "title": "Amazon reviews",
      "type": "string"
    }
  },
  "title": "Amazon Review Aggregates & Extended History Scraper Output"
}

Dataset schema

Published dataset views and any declared field definitions. A view can select only a subset of the returned record fields.

Download the published dataset schema

View complete JSON
{
  "actorSpecification": 1,
  "title": "Amazon Reviews",
  "views": {
    "reviews": {
      "display": {
        "component": "table",
        "properties": {
          "hasImages": {
            "format": "boolean",
            "label": "Has Images"
          },
          "helpfulCount": {
            "format": "number",
            "label": "Helpful"
          },
          "isVerified": {
            "format": "boolean",
            "label": "Verified"
          },
          "productAsin": {
            "format": "text",
            "label": "ASIN"
          },
          "ratingScore": {
            "format": "number",
            "label": "Rating"
          },
          "reviewDate": {
            "format": "text",
            "label": "Date"
          },
          "reviewId": {
            "format": "text",
            "label": "Review ID"
          },
          "reviewLocation": {
            "format": "text",
            "label": "Location"
          },
          "reviewTitle": {
            "format": "text",
            "label": "Title"
          },
          "sentimentHint": {
            "format": "text",
            "label": "Sentiment"
          },
          "source": {
            "format": "text",
            "label": "Source"
          },
          "sourceMarketplace": {
            "format": "text",
            "label": "Marketplace"
          },
          "wordCount": {
            "format": "number",
            "label": "Words"
          }
        }
      },
      "title": "Reviews",
      "transformation": {
        "fields": [
          "productAsin",
          "reviewedProductAsin",
          "ratingScore",
          "reviewTitle",
          "reviewDescription",
          "isVerified",
          "isVineVoice",
          "reviewedIn",
          "reviewReaction",
          "variant",
          "reviewImages",
          "position",
          "reviewId",
          "reviewUrl",
          "helpfulCount",
          "reviewDate",
          "reviewLocation",
          "sentimentHint",
          "wordCount",
          "hasImages",
          "imageCount",
          "hasVideos",
          "videoCount",
          "reviewHash",
          "source",
          "sourceMarketplace",
          "scrapedAt",
          "sourceUrl"
        ]
      }
    }
  }
}

Key-value schema

Published key-value store definitions, when provided by this build.

This definition is not present in the default published build. See the published README for available documentation.

Published README

Read the full published documentation

Amazon Review Aggregates & Extended History Scraper

Collect Amazon customer reviews and rating summaries without a login and without any proxy setup. Point it at product URLs, bare ASINs, or search keywords and it merges three public sources — the product page's own review block (desktop and mobile), Amazon's public extended review feed for the same ASIN, and optionally the same product's pages on other Amazon marketplaces — then deduplicates everything and returns one clean review dataset plus a per-product rating summary.

What this actor does

  • Extended review history — the product page alone shows only ~8–13 "top reviews"; the public extended feed adds up to 100 reviews per star/sort bucket, and walking every bucket yields 100–850+ unique reviews for popular US products (measured maxima: 856), merged and deduplicated by review ID and content fingerprint.
  • Multi-marketplace merge — collect the product page on additional Amazon marketplaces and union the deduplicated reviews, since each storefront carries a different (partially overlapping) set.
  • Rating aggregates — product title, average rating, global ratings count, the full star histogram with derived per-star counts, and Amazon's AI-generated "Customers say" summary with per-aspect sentiment.
  • Filters that actually narrow the data — star (including positive/critical), verified purchases, keywords, date, media-only, plus sort by most helpful or most recent.
  • Resilient by design — the review wall is probabilistic, so every product page is retried across fresh sessions and both desktop/mobile paths; blocked pages escalate to a residential connection automatically.
  • Fields a review or product page doesn't provide (no reviewer images, no Vine badge, no helpful votes) are simply left out of that record — empty fields are omitted, never sent as null.

Output per review

Field Description
productAsin Amazon ASIN of the requested product.
reviewedProductAsin Variant ASIN the review was written for, when the page exposes it.
ratingScore Star rating, 1–5.
reviewTitle / reviewDescription Review headline and full text.
reviewUrl Direct link to the individual review, when the source exposes one.
reviewReaction Raw "N people found this helpful" text, when present.
reviewedIn Raw "Reviewed in <country> on <date>" text.
isVerified Verified Purchase flag.
isVineVoice Amazon Vine reviewer flag, when evidenced.
variant Product variant reviewed (e.g. size/color), when shown.
reviewImages Reviewer-uploaded image URLs, when includeImages is on.
reviewVideos Reviewer-uploaded videos (url, thumbnailUrl), when present.
position Rank of this review within its product's returned set.
reviewId Amazon's own review identifier, when the source exposes one.
helpfulCount Parsed numeric helpful-vote count.
reviewDate Parsed ISO date.
reviewLocation Parsed reviewer country/region.
sentimentHint Derived positive / neutral / negative label.
wordCount Review length (character count for CJK scripts).
hasImages / imageCount / hasVideos / videoCount Derived media counts.
reviewHash Stable content fingerprint used for cross-source deduplication.
source Which pipeline produced the row: productPage or extendedHistory.
sourceMarketplace Amazon domain the row came from.
reviewerName / reviewerProfile / reviewerAvatar Reviewer identity fields, only present when includeGdprSensitive is true.
scrapedAt UTC timestamp of the scrape.
sourceUrl The product URL that was scraped.

Output per product (rating aggregate)

When includeAggregates is on (default), one additional record per product carries:

Field Description
type Always "amazon_review_aggregate".
productAsin Amazon ASIN.
productTitle Product title from the same page.
averageRating Overall star rating shown on the product page.
globalRatingsCount Total number of ratings, not just the reviews collected.
starsBreakdown Percentage per star, 5 through 1.
ratingCountByStar Derived count per star (percentage × globalRatingsCount, rounded).
customersSay Amazon's AI-generated "Customers say" summary, when Amazon shows one.
customersSayAspects Per-aspect sentiment breakdown (label, sentiment, mentionCount, summary).
productUrl Canonical /dp/{ASIN} product URL.
scrapedAt / sourceUrl Scrape timestamp and source URL.

Status records

If a run can't return real reviews for a product, the dataset gets one typed status record instead of being left empty, identified by its type value: amazon_reviews_walled_us, amazon_reviews_no_star_match, amazon_reviews_blocked, or amazon_reviews_no_products_discovered. A blocked/checkpointed page is always reported in the run's status message — the actor never fails silently.

Input

Field Type Default Description
productUrls Array of strings – Amazon product URLs, or bare ASINs expanded using country. Leave empty to use keywords/categoryUrls instead.
keywords Array of strings [] Search keywords to auto-discover products, used only when productUrls is empty.
categoryUrls Array of strings [] Amazon search/category URLs to auto-discover products from, used only when productUrls is empty.
maxProductsToDiscover Integer 10 Maximum products to discover from keywords/categoryUrls (1–50).
extendedHistory Boolean true Merge Amazon's public extended review feed (typically 100–600+ unique reviews for popular US products) with the product-page sample.
mergeMarketplaces Array of domains [] Extra Amazon marketplaces to fetch the product page from and merge deduplicated reviews.
includeAggregates Boolean true Emit one rating-aggregate record per product.
country String (select) "amazon.com" Amazon marketplace domain (19 supported).
maxReviews Integer 100 Hard cap per product after merging and deduplication (1–2000).
sortBy String (select) "helpful" helpful or recent.
filterByStar String (select) "" (all) Restrict to one star rating ("1"–"5"), positive (4–5), or critical (1–2).
verifiedPurchasesOnly Boolean false Only return Verified Purchase reviews.
filterKeywords Array of strings [] Keep only reviews whose title or text contains at least one keyword.
reviewsNewerThan String (date) – Keep only reviews dated on or after this date.
mediaReviewsOnly Boolean false Keep only reviews with at least one image or video.
includeImages Boolean true Extract reviewer-uploaded images and videos.
includeGdprSensitive Boolean false Include reviewer name, profile link, and avatar.

Example: extended history for one product

{
    "productUrls": ["https://www.amazon.com/dp/B09X7MPX8L"],
    "extendedHistory": true,
    "maxReviews": 300,
    "sortBy": "recent"
}

Example: only critical reviews with images

{
    "productUrls": ["B09X7MPX8L"],
    "filterByStar": "critical",
    "mediaReviewsOnly": true,
    "verifiedPurchasesOnly": true,
    "maxReviews": 100
}

Example: merge several marketplaces

{
    "productUrls": ["https://www.amazon.de/dp/B09X7MPX8L"],
    "country": "amazon.de",
    "mergeMarketplaces": ["amazon.co.uk", "amazon.fr", "amazon.it"],
    "maxReviews": 200
}

Example: keyword discovery with a date window

{
    "keywords": ["wireless earbuds"],
    "maxProductsToDiscover": 5,
    "reviewsNewerThan": "2026-01-01",
    "filterKeywords": ["battery", "sound"],
    "sortBy": "recent"
}

Use cases

  • Voice-of-customer analysis — pull hundreds of review texts per product line for sentiment, topic, or keyword analysis.
  • Competitive benchmarking — compare averageRating, starsBreakdown, and "Customers say" summaries across competing ASINs.
  • Review monitoring — schedule runs on a watch-list to track new reviews, ratings, and helpful-vote counts over time.
  • Trust and quality signals — surface isVerified/isVineVoice flags and reviewer-uploaded media for product-quality dashboards.
  • Localization research — merge reviews for the same product across marketplaces to compare region-specific feedback.
  • Critical-review triage — filter to critical reviews with media to jump straight to the problems customers photograph.

FAQ

How many reviews can I get per product? The product-page block alone shows ~8–13 top reviews. With extendedHistory on (default), the public extended feed adds up to 100 reviews per star/sort bucket; walking all buckets measured 100–856 unique reviews across a 35-ASIN survey (17 ASINs had feed data; the rest fall back to the product-page sample). Set maxReviews high enough (e.g. 500–1000) to receive the full depth, or keep it lower for a fast, cheap run.

Is a proxy or login required? No. The actor works without any credentials and without any proxy setup; it chooses a working connection automatically and only escalates to a residential connection for a request that Amazon actually blocks. It never uses your Amazon account or cookies.

Why did one product return only a handful of reviews? The extended feed does not cover every ASIN — in a 35-ASIN survey, 17 had feed data and 18 exposed few or no rows (the feed carries Amazon.com reviews only). When that happens the actor still returns the product-page sample plus the rating aggregates, and the run's status message reports what was collected.

Why are some fields missing on some reviews? Every source exposes a different subset: the extended feed has no review permalink or review ID (rows are deduplicated by a content fingerprint), some marketplace pages hide reviewer profiles for cross-posted reviews, and Amazon only renders the AI "Customers say" summary on some products and mostly on amazon.com. Missing fields are omitted, never filled with placeholders.

What does source mean? It tells you which pipeline produced the row: productPage (the product page's inline block) or extendedHistory (the public extended feed). sourceMarketplace tells you which Amazon storefront it came from.

Is ratingCountByStar exact? It is derived: Amazon publishes the histogram as percentages plus one global ratings count, so the per-star counts are that percentage applied to the total and rounded (validated on 61 live pages: percentages always sum to 100 and the derived counts are within ±1 of the global total). starsBreakdown holds the exact percentages.

Can I get the complete review history? The actor returns everything Amazon publishes to anonymous visitors: the product page's sample plus the public extended feed (and any merged marketplaces). Amazon keeps the fully paginated list behind a sign-in wall, and this actor never asks for an account, cookie, or password — so it does not read it.

Do reviewer name, profile, and avatar always appear? No — only when includeGdprSensitive is true. Make sure you have a lawful basis before enabling it.

Is this affiliated with Amazon? No. This is an independent, third-party actor that reads publicly available Amazon product and review pages and is not operated, endorsed, or sponsored by Amazon.com, Inc.

Python quickstart

Use a schema-derived input and the Python standard library to start a run. An Apify account and token are required for execution.

Open the step-by-step Python guide →

Source build 3eBuV9sO4ltC6gYLd. Documentation is regenerated from the default published build; private drafts are not included.