Amazon Product Research Scraper — BSR, Reviews & Seller avatar

Amazon Product Research Scraper — BSR, Reviews & Seller

Pricing

from $5.00 / 1,000 product scrapeds

Go to Apify Store
Amazon Product Research Scraper — BSR, Reviews & Seller

Amazon Product Research Scraper — BSR, Reviews & Seller

Research Amazon products by ASIN or keyword: price, Best Sellers Rank, ratings, seller, Prime status, bullet points, images and optional review snippets across 10 marketplaces (US, UK, DE, FR, CA, ES, IT, JP, AU, IN), one analysis-ready row per product.

Pricing

from $5.00 / 1,000 product scrapeds

Rating

0.0

(0)

Developer

Khadin Akbar

Khadin Akbar

Maintained by Community

Actor stats

0

Bookmarked

22

Total users

3

Monthly active users

9 hours ago

Last modified

Share

What is Amazon Product Research Scraper?

Amazon Product Research Scraper (khadinakbar/amazon-product-intelligence) builds an analysis-ready record per Amazon product for sourcing and product research, with optional customer review snippets in the same row. It works through the Apify Console, the API and Apify MCP. It accepts a keyword, a list of ASINs, or direct Amazon product or search URLs, and returns one record per scraped product. Each record can include ASIN, title, brand, price, original price, discount percent, rating, review count, BSR rank and category, Prime eligibility, seller details, fulfillment by Amazon, availability, images, description, bullet points, marketplace, scrape timestamp, and source URL.

Best fit and connected workflows

This Actor fits workflows that begin with Amazon product discovery and end with a structured product record. Common routing patterns include:

  • Keyword-led research: start from a product idea or category term and collect matching Amazon listings.
  • ASIN refreshes: monitor known products by passing exact ASIN codes.
  • URL-led extraction: process a known product page or search results page directly.
  • Marketplace comparison: run the same input across a chosen Amazon marketplace to compare local price, BSR, Prime, and seller fields.
  • Review follow-up: use this Actor first for product-level context, then connect the returned record to a review-focused workflow for deeper sentiment analysis.

Practical scenario

A sourcing team screens 20 supplier ASINs before placing an order. One run with includeReviews on and maxReviews at 5 returns each product's price, bsr_rank, rating, review_count, seller_name and fulfilled_by_amazon, plus five recent reviews. Products with a strong rank but recurring complaints in the review snippets are dropped from the order list before any samples are bought.

Input

Choose one input method or combine them.

FieldTypePurpose
searchQuerystringKeyword search for Amazon, such as a product type or topic.
asinsarray of stringsSpecific Amazon Standard Identification Numbers to scrape.
startUrlsarray of request objectsDirect Amazon product pages or Amazon search result pages.
countrystringAmazon marketplace to scrape: US, UK, DE, FR, CA, ES, IT, JP, AU, or IN.
maxResultsintegerMaximum number of products to extract. Each product counts as one billable event.
includeReviewsbooleanLoads customer review pages for each scraped product.
maxReviewsintegerMaximum number of reviews per product when reviews are enabled.
proxyConfigurationobjectProxy settings for the browser route. The native page route uses the Apify datacenter pool first and Apify Residential proxies on block; supply your own proxy URLs to use only those.

Focused input example

{
"searchQuery": "wireless earbuds",
"country": "US",
"maxResults": 3,
"includeReviews": true,
"maxReviews": 5
}

Output

The default dataset stores one record per scraped product.

FieldTypePurpose
asinstring or nullAmazon Standard Identification Number.
titlestring or nullFull product title.
brandstring or nullProduct brand name.
pricenumber or nullCurrent selling price.
currencystring or nullCurrency code or symbol.
original_pricenumber or nullOriginal price before discount.
discount_percentnumber or nullDiscount percentage off original price.
ratingnumber or nullAverage customer rating.
review_countnumber or nullTotal number of customer reviews.
bsr_ranknumber or nullsuitable Sellers Rank number.
bsr_categorystring or nullsuitable Sellers Rank category name.
prime_eligibleboolean or nullWhether the product has a Prime badge.
seller_namestring or nullSeller name.
seller_idstring or nullSeller identifier on Amazon.
fulfilled_by_amazonboolean or nullWhether the item is fulfilled by Amazon.
availabilitystring or nullStock availability text.
imagesarray or nullProduct image URLs.
descriptionstring or nullFull product description text.
bullet_pointsarray or nullFeature bullet points from the product page.
marketplacestring or nullAmazon marketplace domain.
scraped_atstring or nullISO 8601 scrape timestamp.
source_urlstring or nullSource Amazon URL.

Sample output record

A product row (array fields shortened). Fields the product page did not show are null.

{
"asin": "B07DF46NW9",
"title": "DEWALT 9-in-1 Painter's Tool | Straight Scraper, Curved Scraper, Gouger, Roller Cleaner, Can Opener, Bottle Opener, Nail Puller, Screwdriver, Hammer | Carbon Steel w/Soft Grip Handle | DXTT-2-200",
"brand": null,
"price": 14.39,
"currency": "$",
"original_price": null,
"discount_percent": null,
"rating": 4.8,
"review_count": 2410,
"bsr_rank": null,
"bsr_category": null,
"prime_eligible": false,
"seller_name": "LEVEL5 Tools",
"seller_id": null,
"fulfilled_by_amazon": true,
"availability": null,
"images": [
"https://m.media-amazon.com/images/I/61y7JLUgQPL._AC_SL1500_.jpg"
],
"description": "This DEWALT 9-in-1 painter's tool has been built to the highest standard using nearly 20 years of input from professional finishers. Premium, hardened carbon st",
"bullet_points": [
"PLEASE NOTE: This professional finish tool features a hardened, high-carbon steel blade. It requires proper care and storage or it will corrode/rust (see care instructions in description below).steel blade for added durability.",
"Curved scrapers, straight scraper, gauger, screwdriver, roller cleaner, nail puller, can opener, bottle opener, and alloy metal hammer end."
],
"marketplace": "www.amazon.com",
"reviews": [],
"scraped_at": "2026-10-04T15:20:39.206Z",
"source_url": "https://www.amazon.com/dp/B07DF46NW9"
}

How it works

The Actor accepts keyword, ASIN, or URL input and runs against the selected Amazon marketplace: US, UK, DE, FR, CA, ES, IT, JP, AU, or IN.

  1. Native page route (primary). Search pages and product pages are requested as plain HTML and parsed by the Actor itself. Requests go through the Apify datacenter pool first; a blocked page, or a page Amazon shows for another region (prices converted to another currency, or not deliverable), is retried through Apify Residential proxies pinned to the marketplace country, so prices stay in the marketplace's own currency.
  2. Browser route (native fallback). Only when the first route saves no product at all, the same input is opened in a headless browser.
  3. External fallback route (last resort). Only when both native routes save nothing, a managed external data route is tried before the run ends.

Every saved row comes from a confirmed product page with a title; a blank or blocked page is retried and never saved or charged. RUN_SUMMARY reports routeServed and per-route counts so you can see which route produced the rows. When includeReviews is enabled, the Actor returns up to maxReviews review snippets that Amazon shows on the product page. If a page arrives without its review snippets, it is fetched once more before the row is saved. The dataset schema is product-centric, so each row represents one scraped product. The output contract also exposes results, runOutput, and runSummary for automation and monitoring.

If a supplied ASIN does not exist, the run reports it and continues. Start URLs must be Amazon product or search pages; a run with only other URLs ends with an INVALID_INPUT outcome and no product charges. If every route is blocked and no product is saved, the run fails with an UPSTREAM_FAILED outcome rather than reporting an empty success.

Pricing

This Actor uses Pay per event pricing. Each scraped product counts as one Product Scraped event, and Apify platform usage is included in the event price.

For example, a run that returns ten products creates ten billable product events. Open the live Pricing tab on the Actor page for the current event pricing and the platform usage that applies to your run.

Use with AI agents (MCP)

This Actor is usable through Apify MCP. It accepts structured product discovery input and returns dataset records that AI agents can read directly.

Precise tool description: retrieve Amazon product intelligence from a keyword, ASIN list, or direct Amazon URL, then read the resulting dataset items for product fields such as price, BSR, ratings, seller information, Prime status, bullet points, and images.

Exact Actor identity: khadinakbar/amazon-product-intelligence

Find Amazon product intelligence for the US marketplace from this ASIN list, return the dataset items, and summarize price, BSR, rating, review count, seller, Prime status, and availability for each product.

Output interpretation: each dataset row represents one scraped product. source_url provides provenance, scraped_at shows when the record was collected, and fields such as price, bsr_rank, rating, review_count, seller_name, seller_id, prime_eligible, and fulfilled_by_amazon are useful for downstream reasoning.

Scope and pagination guidance: use searchQuery for topic-led discovery, asins for exact product IDs, and startUrls for known Amazon pages. maxResults sets the product count for a run, and each product is charged as one Product Scraped event.

API example

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({
token: process.env.APIFY_TOKEN,
});
const run = await client.actor('khadinakbar/amazon-product-intelligence').call({
searchQuery: 'wireless earbuds',
country: 'US',
maxResults: 3,
includeReviews: false,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

Best results and outcome guidance

Start with a small maxResults value when testing a new keyword, ASIN list, or URL set. Use asins when you already have exact product identifiers, searchQuery when you want Amazon-discovered listings for a topic, and startUrls when the source page is already known.

If you need marketplace-specific data, match country to the Amazon domain you are studying. When reviews matter, enable includeReviews and choose a focused maxReviews value that matches the depth you need for downstream analysis.

Continue the workflow

Design note

I found that the live dataset contract includes seller_id, fulfilled_by_amazon, and source_url, which makes each record useful for routing, fulfillment checks, and provenance tracking.

FAQ

When should I use searchQuery instead of asins?

Use searchQuery when you are starting from a keyword or category idea. Use asins when you already have exact Amazon product identifiers.

When should I use startUrls?

Use startUrls when you already have Amazon product pages or Amazon search result pages and want those exact pages processed.

How do I connect this Actor to review workflows?

Use this Actor to capture the product record first, then route the returned product into a review-focused Actor when you want deeper review and sentiment analysis.

Which marketplace should I choose?

Pick the Amazon marketplace that matches the region you want to inspect, such as US, UK, DE, FR, CA, ES, IT, JP, AU, or IN.

What should I look at first in the output?

For product screening, price, bsr_rank, rating, review_count, prime_eligible, seller_name, and fulfilled_by_amazon are often the first fields to review.

Responsible use

Use this Actor for publicly available Amazon product information and handle the resulting data in line with Amazon's terms, local law, and any applicable data protection requirements. Keep runs focused on the records you need, store the data responsibly, and respect platform and marketplace policies when automating collection.