Amazon Bestsellers Scraper
Pricing
from $5.00 / 1,000 product scrapeds
Amazon Bestsellers Scraper
Scrape Amazon Best Sellers, New Releases, Movers & Shakers, Most Wished For and Gift Ideas rankings by category across 10 marketplaces. Returns ranked products with rank, ASIN, title, price, rating, review count, Prime status and image. HTTP-only, MCP-ready, no auth required.
Pricing
from $5.00 / 1,000 product scrapeds
Rating
5.0
(1)
Developer
Khadin Akbar
Maintained by CommunityActor stats
0
Bookmarked
93
Total users
47
Monthly active users
6 days ago
Last modified
Categories
Share
Amazon Bestsellers Scraper — Rankings, BSR & Trends
Amazon Bestsellers Scraper is an Apify Actor for analysts, merchandisers, builders, and AI agents that need Amazon chart data from suitable Sellers, New Releases, Most Wished For, and Gift Ideas pages across 10 marketplaces. It accepts either explicit chart URLs or chart settings, and it returns one record per ranked product. Each record includes rank, ASIN, title, brand when shown, price, priceString, currency, rating, reviews count, Prime status, badges, image URL, product URL, category context, chart type, marketplace, and scraped timestamp. The output is a flat dataset built for spreadsheets, dashboards, and Apify MCP workflows.
Best fit and connected workflows
This Actor fits workflows that begin with an Amazon ranking chart and end with structured product records. It routes well for:
- chart URL to dataset runs for a specific Amazon category page
- chart type plus marketplace runs when you want the Actor to build the chart URL
- category-specific ranking review with rank, price, and review signals
- immediate subcategory expansion when you want a broader view of the category tree
- AI agent calls through Apify MCP where a concise, flat output is helpful
Because the output is one record per ranked product, it can feed follow-up steps such as enrichment, comparison, reporting, or manual review without extra reshaping.
Focused standalone workflow
This Actor is designed as a focused standalone workflow.
Practical scenario
A category manager is reviewing the US Electronics suitable Sellers chart before planning a weekly assortment check. They start with a chart URL and ask for the top 20 items. The dataset returns rank, ASIN, title, price, rating, reviews count, Prime status, image URL, product URL, chart type, marketplace, and scraped timestamp. The manager uses rank, price, and reviews count to shortlist products for a deeper internal review, then opens the product URLs for confirmation.
Input
Use explicit chart URLs or chart settings. When you provide startUrls, the chart type and marketplace are detected from each URL.
| Field | Type | Purpose |
|---|---|---|
startUrls | array | Amazon ranking-chart URLs for suitable Sellers, New Releases, Most Wished For, or Gift Ideas pages |
chartType | string | Chart to scrape when you are not providing explicit URLs |
marketplace | string | Marketplace country when using chart settings instead of URLs |
categorySlug | string | Optional category slug appended to the chart when using chart settings |
maxItemsPerCategory | integer | Maximum ranked products to return per chart |
includeSubcategories | boolean | Also scrape immediate subcategory charts linked from the start page |
proxyConfiguration | object | Proxy settings, with Apify residential proxies as the default |
Valid focused input example
{"chartType": "bestsellers","marketplace": "US","categorySlug": "electronics","maxItemsPerCategory": 20,"includeSubcategories": false}
Output
The Actor returns one record per ranked product.
| Field | Type | Purpose |
|---|---|---|
rank | integer | Position in the chart |
asin | string | Amazon Standard Identification Number |
title | string | Product title shown on the chart |
brand | string or null | Brand or byline when shown |
price | number or null | Price as a number |
priceString | string or null | Price exactly as displayed |
currency | string or null | Marketplace currency code |
rating | number or null | Average star rating |
reviewsCount | integer or null | Number of ratings |
isPrime | boolean | Whether the Prime badge is shown |
badges | string[] | Badges shown on the card |
imageUrl | string | Product thumbnail URL |
productUrl | string | Product detail page URL |
categoryName | string or null | Human-readable category name |
categoryUrl | string | Chart page URL |
chartType | string | Chart source type |
marketplace | string | Marketplace country code |
scrapedAt | string | ISO 8601 scrape timestamp |
Illustrative output record
{"rank": 1,"asin": "B0CHX1W1XY","title": "Apple AirPods Pro (2nd Generation) Wireless Earbuds","brand": "Apple","price": 189.99,"priceString": "$189.99","currency": "USD","rating": 4.7,"reviewsCount": 24531,"isPrime": true,"badges": ["suitable Seller"],"imageUrl": "https://m.media-amazon.com/images/I/61SUj2aKoEL._AC_UL300_.jpg","productUrl": "https://www.amazon.com/dp/B0CHX1W1XY","categoryName": "Electronics","categoryUrl": "https://www.amazon.com/gp/bestsellers/electronics","chartType": "bestsellers","marketplace": "US","scrapedAt": "2026-06-01T12:00:00Z"}
How it works
This Actor uses a Playwright-based HTTP workflow and Apify residential proxies that are geo-matched to the selected marketplace. It supports 10 marketplaces: US, UK, DE, FR, IT, ES, CA, JP, IN, and AU.
If you pass chart URLs, the Actor reads the chart type and marketplace from each URL. If you use chart settings, it builds the chart URL from the selected chart type, marketplace, and optional category slug. It can also crawl one level of immediate subcategories from the left-hand navigation when that option is enabled. The dataset is shaped for agent consumption with flat fields and one record per ranked product.
Evergreen pricing
This Actor uses Pay per event pricing plus Apify platform usage.
- Primary event:
Product scraped - Each returned ranked product is charged as one product event
- Actor start is charged separately, with the number of start events depending on Actor memory
- Current pricing details are available in the live Pricing tab on the Apify Store page
A simple event-count example in words: if a run returns one hundred ranked products, the execution includes one hundred product events, plus the Actor start event.
Use with AI agents (MCP)
This Actor is usable through Apify MCP as a structured Amazon chart-ranking tool. The exact Actor identity is khadinakbar/amazon-bestsellers-scraper.
Tool description: fetch ranked Amazon chart products from supported marketplaces and return structured records with rank, ASIN, title, pricing, ratings, Prime status, badges, image, and chart context.
Please scrape the US Amazon Electronics suitable Sellers chart and return the top 20 ranked products with rank, ASIN, title, price, rating, review count, Prime status, image URL, product URL, category name, chart type, marketplace, and scraped timestamp.
Output interpretation:
rankshows chart position, with1as the top itemasinandproductUrlidentify the product for follow-up enrichmentprice,rating, andreviewsCountare useful for comparisoncategoryUrl,chartType, andmarketplaceprovide provenance for the chart sourcescrapedAtshows when the record was captured
Scope, pagination, and cost guidance:
- Use chart URLs when you want exact chart provenance
- Use chart settings when you want the Actor to construct the chart page
- Set
maxItemsPerCategoryto the number of ranked items you need, up to the chart maximum - Enable subcategory crawling when you want immediate child charts as well
- Each returned product contributes to Pay per event usage, so lower
maxItemsPerCategorywhen you only need the top of a chart
Apify API example
import { ApifyClient } from 'apify-client';const client = new ApifyClient({token: process.env.APIFY_TOKEN,});const run = await client.actor('khadinakbar/amazon-bestsellers-scraper').call({chartType: 'bestsellers',marketplace: 'US',categorySlug: 'electronics',maxItemsPerCategory: 10,includeSubcategories: false,});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items);
Best results and outcome guidance
Choose the input style that matches your workflow:
- use
startUrlswhen you already have a specific Amazon chart page - use
chartTypeandmarketplacewhen you want the Actor to build the chart URL - add
categorySlugfor a category-specific chart - reduce
maxItemsPerCategorywhen you only need the top part of a chart - enable
includeSubcategorieswhen you want a broader category tree view - keep the default residential proxy configuration for marketplace-matched requests
Design note
I found that the live contract returns one record per ranked product and that the dataset is centered on flat fields such as rank, asin, title, productUrl, categoryUrl, chartType, marketplace, and scrapedAt. That makes the Actor straightforward to use in MCP and in downstream tables.
FAQ
When should I use a chart URL instead of chart settings?
Use a chart URL when you already know the exact Amazon page you want. Use chart settings when you want the Actor to construct the chart page from a chart type, marketplace, and optional category slug.
How does this Actor help with marketplace-specific research?
You can select one of 10 marketplaces or pass a marketplace-specific chart URL. The output includes the marketplace code and chart URL, which makes it straightforward to compare chart data across countries.
Can I use this Actor for one category or for multiple categories?
You can run it against one chart, multiple chart URLs, or a chart plus immediate subcategories. The output stays in the same one-record-per-product format.
What does the productUrl field give me?
It gives you the marketplace product detail page URL for each ranked item, which is useful for enrichment, review, or manual inspection.
Is this Actor usable through MCP?
Yes. It is an Apify Actor that is MCP-ready and designed for AI-agent workflows through Apify MCP.
Responsible use
Use this Actor in line with applicable laws, Amazon's terms, and your own data handling policies. Keep request volumes aligned with the chart data you need, and review the live Pricing tab before running workloads at scale.