Amazon Reviews Scraper (Pay-Per-Event)
Pricing
from $3.00 / 1,000 reviews
Amazon Reviews Scraper (Pay-Per-Event)
Scrape written Amazon.com product reviews without a login or browser. Returns numeric ratings, exact ISO dates, review text, helpful votes, images, videos, verified/Vine flags, local rating and keyword filters, and run-level deduplication. Reviewer names are redacted unless explicitly enabled.
Pricing
from $3.00 / 1,000 reviews
Rating
0.0
(0)
Developer
Arnas
Maintained by CommunityActor stats
0
Bookmarked
7
Total users
4
Monthly active users
12 days ago
Last modified
Categories
Share
Amazon Reviews Scraper
Scrape written Amazon.com product reviews without an Amazon login, browser automation, or residential proxy. The Actor returns analysis-ready review text, numeric ratings, exact ISO dates, helpful votes, images, videos, verified-purchase and Vine flags, and transparent source metadata.
Results stream to an Apify dataset and can be downloaded as JSON, CSV, Excel, or consumed through the API.
Why use this Actor?
- Hundreds of written reviews over plain HTTP. The Actor uses Woot's public Amazon review JSON feed. Unlimited runs combine rating and sort passes, then deduplicate overlaps.
- Correct dates and ratings.
ratingScoreis numeric.dateis normalized to ISO 8601 whilereviewedInpreserves Amazon's original date/location text. - No silent incomplete success. Invalid inputs, products with no matching reviews, and partial transport failures receive structured, non-billable diagnostic rows.
- No duplicate billing. A stable SHA-256
reviewFingerprintprevents the same written review from being written or charged twice across overlapping passes. - Dataset and billing commit together. Review rows use Apify's event-aware dataset write; filtering and deduplication happen before billing admission.
- Privacy-safe defaults. Reviewer names are
nullunlessincludeGdprSensitiveis explicitly enabled. The source does not expose profile IDs, profile links, or avatars, so those fields remainnull. - Local filters. Rating groups, keyword OR matching, and absolute or relative date cutoffs are applied before a row is written.
Quick start
- Add one or more Amazon.com product URLs.
- Choose a review limit and optional filters.
- Click Start.
Example input:
{"productUrls": [{ "url": "https://www.amazon.com/dp/B0CWXNS552" }],"maxReviews": 100,"sort": "recent","filterByRatings": ["critical"],"reviewsFilterByKeywords": ["battery", "quality"],"reviewsCutoffDate": "6 months","includeGdprSensitive": false}
Direct 10-character ASIN strings are also accepted when starting the Actor through the API.
Input reference
| Field | Default | Description |
|---|---|---|
productUrls | required | Amazon.com product or product-review URLs. |
maxReviews | 100 | Unique written reviews per product. 0 scans every available source pass. |
includeGdprSensitive | false | Include reviewer display names. |
sort | helpful | Primary source order: helpful or recent. |
reviewsCutoffDate | — | UTC cutoff as YYYY-MM-DD, ISO timestamp, or relative time such as 2 weeks. |
filterByRatings | allStars | One or more of allStars, fiveStar, fourStar, threeStar, twoStar, oneStar, positive, critical. |
reviewsFilterByKeywords | — | Case-insensitive OR match against title and body. |
maxRequestRetries | 3 | Retries per transient or malformed upstream response (1–10). |
maxConcurrency | 5 | Concurrent HTTP requests (1–20); the run is also capped at 120 requests/minute. |
proxyConfiguration | — | Optional escape hatch; normally unnecessary. |
The hidden compatibility inputs reviewsUseProductVariantFilter,
scrapeProductDetails, reviewsAlwaysSaveCategoryData, and
deduplicateRedirectedAsins are accepted. See Current limitations for
their exact behavior.
Output example
{"productAsin": "B0CWXNS552","productOriginalAsin": "B0CWXNS552","variantAsin": "B0CWXNS552","ratingScore": 4,"reviewTitle": "Works and lasts","reviewDescription": "Accurate tracking and good battery life.","date": "2026-08-13T00:00:00.000Z","reviewedIn": "Reviewed in the United States on August 13, 2026","country": "United States","countryCode": "US","isVerified": true,"isAmazonVine": false,"reviewId": null,"reviewFingerprint": "f0b5...64-character-sha256...","reviewUrl": null,"reviewReaction": "2 people found this helpful","reviewImages": [],"reviewVideos": [],"username": null,"userId": null,"userProfileLink": null,"avatar": null,"position": 1,"filterByRating": "allStars","filterByKeyword": "battery","foundNoReviews": false,"input": "https://www.amazon.com/dp/B0CWXNS552","source": "woot-amazon-reviews","scrapedAt": "2026-08-23T12:00:00.000Z"}
Structured diagnostic rows
Diagnostics are written without a review billing event:
{"error": "no_relevant_reviews_found","errorDescription": "No written reviews matched the selected rating, keyword, and date filters.","input": "https://www.amazon.com/dp/B0CWXNS552","url": "https://www.amazon.com/dp/B0CWXNS552","productAsin": "B0CWXNS552","foundNoReviews": true,"partialResults": false,"reviewsSaved": 0,"failedRequests": 0,"scrapedAt": "2026-08-23T12:00:00.000Z"}
When some requests exhaust their retries after reviews have already been saved, the Actor adds a status row such as:
{"error": "partial_results","errorDescription": "Saved 42 reviews, but 1 review-feed request failed after all configured retries. Results may be incomplete.","productAsin": "B0CWXNS552","foundNoReviews": false,"partialResults": true,"reviewsSaved": 42,"failedRequests": 1}
Possible codes are invalid_url, no_relevant_reviews_found,
no_results_found, partial_results, and request_failed.
Coverage and current limitations
- Amazon.com only. A non-US Amazon URL is rejected instead of returning US reviews under the wrong marketplace label.
- Written reviews only. Amazon's total rating count includes star-only ratings; those are not review rows and are not available through this feed.
- The public feed caps each
(rating, sort)pass at 100 reviews. Unlimited or keyword runs combine up to five rating groups and four sort orders. The number of unique rows depends on overlap and upstream availability. - The source usually does not expose Amazon's real review ID.
reviewIdandreviewUrltherefore remainnull; use the stablereviewFingerprintas the row key. - Variant labels and variant filtering are not exposed by the source.
reviewsUseProductVariantFilter: trueis accepted for compatibility but logs a warning and does not narrow results. scrapeProductDetails: trueadds only canonical{ asin, url }metadata. Use the separate Amazon Product Scraper for full product detail pages.- Sort selects the primary retrieval order. Exhaustive scans may add alternate sort passes to improve coverage, so the final deduplicated dataset is not a guaranteed global sort order.
Pricing
Pay per event:
- Actor start: $0.001 for a run with at least one valid product.
- Review: $0.003 per unique written review admitted to the dataset.
One thousand unique reviews cost $3.001. Invalid inputs, filtered rows, duplicate rows, and structured diagnostic rows do not trigger the review event. Apify run charge limits are honored immediately.
Responsible use
The Actor processes publicly available review content. You are responsible for complying with applicable law, Amazon and Woot terms, and your own contractual obligations. Leave personal-information collection disabled unless you have a lawful purpose, minimize retention, and do not use review data to harass or profile individuals.
Support
Open an issue from the Actor's Issues tab with the ASIN, sanitized input, run ID, and expected behavior. Do not post private customer data or API tokens.