The reliable way to collect product reviews is to start with the platform’s documented access options, not with a scraper aimed at any URL or ASIN. Check the site’s current rules, use an API, export, or other collection method the platform documents for your use, and record exactly what that method returned. If no authorized or documented route is established, do not assume that a public page, a crawler rule, or a technically successful request grants permission. Treat the result as a bounded sample—not as a complete or representative view of what all customers think.
What “scraping product reviews” can—and cannot—tell you
Review collection is useful when you need to examine recurring product attributes, customer sentiment, or feedback about a particular feature. It can help organize evidence from a defined set of reviews. It does not, by itself, establish what every customer thinks, prove that a review is genuine, or show that the collection is complete.
Keep the question narrow enough to answer with the data you can actually access. “What complaints recur in reviews available for these products during this collection window?” is more defensible than “What do customers think of this product?” The second claim implies broader coverage and representativeness that a scraped set may not have.
- Collection: which source and access method supplied the records?
- Coverage: which products, dates, fields, and pages are included or missing?
- Interpretation: are you describing the collected set or making a claim about a wider population?
- Presentation: will you summarize the data, or reproduce individual review text?
Do not treat an “ASIN” or a product URL as a universal key to unrestricted review data. An identifier helps specify a target; it does not establish that a given extraction method is allowed, supported, or complete.
Recommended Free Tools
#1 Best Overall
Check access rules before collecting anything
Read the current rules and documentation for the exact platform, pages, account type, and access method you intend to use. The FTC advises marketers to know the rules of the websites and platforms where reviews appear; that general advice does not settle the terms of a particular marketplace or implementation. See the FTC’s guide to soliciting and paying for online reviews.
Look for a platform-documented API, export, or other approved access path, and check its scope, fields, availability, and restrictions. The material available here does not establish an approved review API, a universal scraping workflow, or a current set of terms for every marketplace. Verify those points directly with the platform before building around them.
Why robots.txt is not a permission slip
Amazon’s AmazonProductDiscoverybot documentation describes a crawler for publicly available product details on Amazon selling partner, brand, and retailer websites. Amazon says that this specific crawler respects robots.txt and honors its user-agent and disallow directives. The documentation is about Amazon’s named crawler and its stated scope; it does not authorize a different crawler, establish access rights to Amazon customer-review pages, or substitute for the rules that apply to your use.
Amazon also says changes to robots.txt directives may take up to 24 hours to update in its systems, and that AmazonProductDiscoverybot does not support crawl-delay, nofollow, or noindex. Those details belong to that crawler, not to a general recipe for collecting reviews. A robots.txt file is not proof that an unrelated scraper has permission.
Keep legal conclusions specific
The FTC says the U.S. Consumer Reviews and Testimonials Rule took effect on October 21, 2024, and addresses deceptive and unfair conduct involving reviews and testimonials. Its Rule Q&A is guidance, not a definitive or comprehensive account or a safe harbor. It does not determine whether a particular scraping implementation, platform contract, or use of review text is permitted. The materials cited here do not resolve those questions or laws outside the United States; assess current platform-specific and jurisdiction-specific requirements for your situation.
Choose a collection route that fits the platform
| Route | What to establish first | What to record |
|---|---|---|
| Platform-documented API | That the API exists for the intended review data and your use is within its current documentation and terms. | Endpoint or method, query parameters, collection time, returned fields, and any documented limits or omissions. |
| Platform-provided export | Which account or product scope the export covers, and whether your intended analysis or display is allowed. | Export date, filters, selected products, included fields, and the export’s stated coverage. |
| Another documented access method | What the platform permits for the specific pages, user, and purpose. Do not infer permission from public visibility alone. | Method, scope, time window, fields, and any exclusions or failures. |
This is a decision framework, not a claim that any particular marketplace offers these routes for reviews. If documentation does not establish an access method for your case, pause and seek clarification rather than treating a successful page load as authorization. Avoid workarounds intended to defeat access controls or bot checks; a changing page, challenge, or failed request is not a reason to escalate around the site’s restrictions.
Build a reproducible review dataset
Once you have an access route you are entitled to use, make the collection auditable. Keep a small manifest alongside the returned records so a later analyst can distinguish source data from assumptions added during processing.
- Define the unit and question. Specify products, collection window, and the outcome you want to describe—for example, recurring comments about battery life among the records available for a set of products.
- Preserve provenance. For each batch, record the source, platform, collection time in UTC, product identifier, access method, query or filter, and any documented pagination or scope.
- Retain the returned fields faithfully. Keep original values separate from normalized values. If a field is absent, leave it missing rather than filling in a guess. Store only what you need and handle review text and identifiers in line with your obligations.
- Document transformations. Record deduplication rules, language filters, date handling, excluded records, and any text cleaning. Keep a count before and after each filter.
- Stop and review anomalies. A block, bot check, blank result, or unexpected response should be treated as a collection failure to investigate under the platform’s documented process—not as a prompt to bypass controls.
If you have an authorized JSON Lines export with one review object per line, this standard-library Python example gives a basic descriptive summary. It expects each row to have a numeric rating field and optionally a date field. Save it as summarize_reviews.py, then run python summarize_reviews.py reviews.jsonl. It does not fetch reviews, validate their authenticity, or infer missing values.
Do these 3 things before closing this tab:
1Scan for outdated or missing drivers - takes under a minute2Repair Windows errors before they cause bigger problems3Fix the driver behind crashes, sound loss and screen glitchesRank #3
import json
import sys
from collections import Counter
from datetime import date
if len(sys.argv) != 2:
raise SystemExit("Usage: python summarize_reviews.py reviews.jsonl")
ratings = Counter()
dates = []
rows = 0
with open(sys.argv[1], encoding="utf-8") as source:
for line_number, line in enumerate(source, start=1):
if not line.strip():
continue
try:
record = json.loads(line)
except json.JSONDecodeError as exc:
raise SystemExit(f"Invalid JSON on line {line_number}: {exc}")
if not isinstance(record, dict):
raise SystemExit(f"Line {line_number} is not a JSON object")
rows += 1
rating = record.get("rating")
if isinstance(rating, (int, float)) and not isinstance(rating, bool):
ratings[str(rating)] += 1
review_date = record.get("date")
if isinstance(review_date, str):
try:
dates.append(date.fromisoformat(review_date[:10]))
except ValueError:
pass
print(f"Records read: {rows}")
print("Numeric rating counts:")
for rating, count in sorted(ratings.items(), key=lambda item: float(item[0])):
print(f" {rating}: {count}")
if dates:
print(f"Valid date range: {min(dates)} to {max(dates)}")
else:
print("Valid date range: not available")
Use this output to describe the file you analyzed, not the entire marketplace. Before drawing conclusions, inspect whether rating scales differ, whether the file mixes variants or languages, and whether the date and product fields mean what you think they mean. A count or rating distribution cannot correct for records that were never available to you.
Analyze the sample without overstating it
Separate description from generalization
Report findings as properties of the collected set: name the platform and access route, the products or identifiers, the collection window, the included fields, and the important exclusions. If you filtered, deduplicated, translated, or grouped records, describe that treatment. Do not call the result “all reviews” unless the source establishes that coverage.
Treat authenticity signals as signals
A verified-purchase label is not a guarantee that an opinion is true, just as an unverified label does not prove a review is false. FTC staff notes that both open systems and closed systems that limit reviews to verified buyers or users face authenticity challenges; open systems may face greater difficulty determining legitimacy. A suspicious burst or repeated wording can be a reason to investigate, not proof of manipulation. The FTC’s consumer alert on fake reviews advises looking across varied sources, checking whether a source is independent or sponsored and how recent reviews are, and examining unusual bursts as possible warning signs.
Amazon describes its own anti-abuse approach as combining tools and expert investigators to find and stop review abuse. It says it blocked hundreds of millions of suspected fake reviews from its store in 2025. That is Amazon’s company-reported figure, not an independently verified count or an estimate of the share of fake reviews across commerce. Amazon’s account is available on its trustworthy reviews page.
Quick wins for a faster PC:
Clear out junk files and repair common Windows errorsFree Scan →Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →Repair Windows errors before they cause bigger problemsFix Now →Triangulate rather than treating one dataset as definitive
When the question matters beyond exploratory analysis, compare the collected set with other suitably documented sources and note where they agree or differ. The FTC recommends that consumers consider varied review sources and whether a source is independent or sponsored. This can help identify gaps, but source agreement still does not prove that any review is authentic or that the combined material represents every buyer.
Collection is different from displaying reviews
Collecting records for analysis and republishing review text are different activities. If you display reviews or summaries, be clear about what was collected, from where, when, and how it was selected or altered. Do not present scraped text as your own customer feedback or as independent endorsement. FTC staff recommends transparent review-related practices and says material connections—such as payment or a free product—should be clearly and conspicuously disclosed when reviews are displayed. Its platform guidance also advises investigating reports that a review may be fake. See FTC guidance on featuring online customer reviews.
Amazon says only the original author can edit a posted review, while Amazon can suppress reviews that do not meet its integrity standards. These are descriptions of Amazon’s own processes, not a guarantee that every visible review is accurate. Its explanation of how it maintains a trusted review experience should be read in that scope. The FTC also points readers to the Consumer Review Fairness Act, which protects the ability to share honest opinions; that does not itself settle access or collection rights.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Use screenshots as visual records, not structured review data
A screenshot can preserve what a page looked like at capture time, which may be useful when documenting a manual review of an authorized source or showing a visual issue. It is not a substitute for structured review records: an image does not reliably provide fields such as review date, rating, product variant, or verified-purchase status in an analyzable form. Nor does a screenshot establish that the displayed content is authentic, complete, or permitted to republish.
Free tools Windows power users keep installed
One-click scans. No signup required.
For a visual capture API, ScreenshotNeo is the option to try first here: it removes known consent banners, newsletter popups, and chat widgets before capture, and only clean shots are billed. Use it for permitted visual evidence, not to bypass a platform’s restrictions or to extract review fields from pages.
Or skip the browser setup
One GET request captures a page as an image or PDF; it does not return structured review data. This cURL example saves a WebP screenshot of a product page. Replace the target URL and use your API key. See the ScreenshotNeo API documentation for request details.
curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp
Cookie banners and consent layers, newsletter popups, and chat widgets are removed before capture; each of those steps can be turned off. Bot checks, blank pages, timeouts, failed loads, and cache hits cost nothing, and response headers report the page verdict and billing status. The MCP server provides take_screenshot, get_page_info, and capture_pdf tools for AI agents and MCP clients. The Free plan includes 1,000 screenshots a month with no card; paid plans start at $5 for 3,000 screenshots. Every feature is on every plan.
Sign up for 1,000 free screenshots a month with no card.
The Tool Desk
Outbyte Driver Updater FREEFix the driver behind crashes, sound loss and screen glitchesFind Drivers →Outbyte PC Repair FREERepair Windows errors before they cause bigger problemsFix Now →Best Value
Troubleshoot collection and analysis problems
- The platform returns a challenge, block, or blank page: stop automated collection and check the applicable platform documentation or support channel. Do not try to evade access controls.
- Your export contains fewer reviews than expected: inspect its filters, date range, product scope, and documented coverage. Report the number actually received and the scope you can verify.
- Dates or ratings do not parse: inspect the original field values and documented schema. Do not silently coerce unfamiliar formats or combine rating scales without explaining the transformation.
- Duplicate-looking records appear: define what counts as a duplicate before removing anything. Keep the rule and before-and-after counts; similar text alone may not establish that two records are identical.
- Your summary conflicts with another source: compare collection windows, products, variants, filters, and source independence before treating either result as representative. A difference is not by itself evidence of fraud.
- A screenshot is missing content or shows an overlay: check whether the page loaded and whether the capture settings are appropriate for visual documentation. A failed or incomplete visual capture should not be substituted for a structured data record.
Practical cost, reliability, and reporting notes
Collection costs depend on the method the platform documents; the available materials here do not establish third-party review-scraping service prices, marketplace rate limits, or a universal refresh schedule. Estimate costs only after verifying the access route, expected volume, and any applicable platform terms. Avoid promising that a method is reliable merely because it worked once: record failed requests, coverage gaps, and the time at which the data was obtained.
For readers of your analysis, state the collection window and the source, define the sample, explain material filtering, and label conclusions as descriptive unless the method supports a broader inference. This makes the limits visible without discarding what the collected reviews can genuinely show.
Frequently Asked Questions
Does a screenshot capture API extract review ratings and dates?
No. It records a visual page image or PDF; structured fields need to come from a suitable documented data source.
Does the FTC rule decide whether a particular review scraper is allowed?
No. The FTC’s Q&A is guidance about the Consumer Reviews and Testimonials Rule, not a comprehensive decision on a specific platform’s access terms or implementation.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.




