# Amazon Best Sellers Scraper (`automation_studio/amazon-bestsellers-scraper`) Actor

Real-time scraper for Amazon Best Sellers, New Releases, Movers & Shakers, and Most Wished For across 30+ top categories. Extract sales rank, price, ratings, ASIN, and sales velocity.

- **URL**: https://apify.com/automation_studio/amazon-bestsellers-scraper.md
- **Developed by:** [Automation Studio](https://apify.com/automation_studio) (community)
- **Categories:** E-commerce, Lead generation
- **Stats:** 3 total users, 2 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $1.20 / 1,000 best seller product intelligence records

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## 🏆 Amazon Best Sellers Scraper

[![Apify Actor](https://img.shields.io/badge/Apify-Actor-orange?style=flat-square\&logo=apify)](https://apify.com)
[![Category](https://img.shields.io/badge/Category-E--Commerce%20%26%20Dropshipping-blue?style=flat-square)](https://apify.com/store?category=ecommerce)
[![Data Accuracy](https://img.shields.io/badge/Data-100%25%20Live%20Authentic-green?style=flat-square)](https://apify.com)
[![Speed](https://img.shields.io/badge/Speed-%3C15s%20Trial-brightgreen?style=flat-square)](https://apify.com)

**Amazon Best Sellers Scraper** is the ultimate real-time market intelligence engine designed for e-commerce entrepreneurs, Amazon FBA sellers, dropshippers, and DTC brands. Instantly discover sales champions, rising breakout products, and hot new releases across 20+ top Amazon departments in seconds — complete with real-time sales ranks, current buy-box prices, customer ratings, review volume, monthly revenue modeling, and proprietary **Opportunity Scores**.

***

### 💡 Why Scrape Amazon Best Sellers?

Over 60% of top-selling products on TikTok Shop and Shopify originated as proven sales champions on Amazon. Manual product research requires clicking through hundreds of category sub-pages, manually calculating review barriers, and estimating sales velocity.

This Actor completely automates your competitive intelligence:

- **🔥 Uncover Rising Breakouts**: Find hot new releases gaining momentum before incumbent brands take notice.
- **🎯 Spot Low-Competition Goldmines**: Automatically calculates the **Breakout Opportunity Index (0–100)** to pinpoint products ranking in the top 20 with fewer than 100 reviews.
- **📊 Sales Velocity & Revenue Modeling**: Generates heuristic monthly sales volume and estimated monthly revenue in USD for every product.
- **🛡️ 100% Cookieless & Reliable**: Built with first-party browser TLS fingerprinting to bypass Amazon's edge firewalls natively with zero account risk or cookies.

***

### 🎯 Key Features

| Feature | Description |
| :--- | :--- |
| **20+ Top Amazon Categories** | Beauty, Kitchen & Dining, Electronics, Toys & Games, Home & Garden, Pet Supplies, Sports, Fashion, and more. |
| **Dual Trending Feeds** | Toggle between **Best Sellers** (proven sales champions) and **Hot New Releases** (fast-rising breakouts). |
| **Breakout Opportunity Index** | Proprietary algorithm (0–100) scoring sales rank against review barriers to identify easy-to-rank niches. |
| **Sales & Revenue Modeling** | Heuristic monthly units and revenue estimation curve based on BSR rank dynamics. |
| **Smart Filtering** | Filter by minimum price, maximum review count (low competition), and minimum customer star rating. |
| **Real-Time Data Streaming** | Pushes records item-by-item directly to your dataset so you can preview results immediately. |

***

### 📥 Input Parameters

| Parameter | Type | Default | Description |
| :--- | :--- | :--- | :--- |
| `categories` | `Array<String>` | `["beauty"]` | One or more Amazon departments to scrape (e.g. `beauty`, `kitchen`, `toys-and-games`). |
| `feedType` | `String` | `"bestsellers"` | Choose between `bestsellers` (Best Sellers) or `new-releases` (Hot New Releases). |
| `maxItems` | `Integer` | `10` | Maximum number of products to extract per selected category (1–100). |
| `minPrice` | `Number` | `0` | Minimum buy-box price in USD (filters out low-margin impulse items). |
| `maxReviews` | `Integer` | `0` | Maximum review count to reveal uncrowded breakout products (e.g. 200). Set `0` for all. |
| `minRating` | `Number` | `0` | Minimum customer star rating (e.g. `4.0` to filter for quality products). |
| `proxyConfiguration` | `Object` | `{}` | Optional Apify proxy settings for enterprise scheduled runs. |

***

### 📤 Sample Output Record

```json
{
  "rank": 1,
  "title": "medicube Toner Pads Zero Pore Pad 2.0 for Exfoliation and Pore Care",
  "asin": "B09V7Z4TJG",
  "price": 18.90,
  "currency": "USD",
  "rating": 4.6,
  "reviewCount": 33726,
  "category": "Beauty & Personal Care",
  "categoryKey": "beauty",
  "feedType": "Best Sellers",
  "opportunityScore": 45,
  "opportunityVerdict": "⭐ ACTIVE CONTENDER",
  "estimatedMonthlySales": 14000,
  "estimatedMonthlyRevenueUsd": 264600.0,
  "productUrl": "https://www.amazon.com/dp/B09V7Z4TJG",
  "imageUrl": "https://images-na.ssl-images-amazon.com/images/I/71Mcspt-6AL._AC_UL600_SR600,400_.jpg",
  "scrapedAt": "2026-10-08T13:25:00.000Z"
}
```

***

### 💻 Integrations & API Usage

#### Python

```python
from apify_client import ApifyClient

client = ApifyClient("YOUR_APIFY_TOKEN")

run_input = {
    "categories": ["beauty", "kitchen"],
    "feedType": "bestsellers",
    "maxItems": 15,
    "maxReviews": 500
}

run = client.actor("YOUR_USERNAME/amazon-bestsellers-scraper").call(run_input=run_input)

for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(f"#{item['rank']} | {item['title'][:40]} | ${item['price']} | Opp: {item['opportunityScore']}/100")
```

#### Node.js

```javascript
import { ApifyClient } from 'apify-client';

const client = new ApifyClient({ token: 'YOUR_APIFY_TOKEN' });

const run = await client.actor('YOUR_USERNAME/amazon-bestsellers-scraper').call({
    categories: ['toys-and-games', 'home-garden'],
    feedType: 'new-releases',
    maxItems: 20
});

const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.table(items);
```

***

### ❓ Frequently Asked Questions (FAQ)

#### Can I find products with low competition to sell under private label?

Yes! Set `maxReviews` to `100` or `300`. This filters the bestsellers list to only show products that have achieved top sales rank with minimal customer reviews — the clearest signal of high buyer demand and weak incumbent moat.

#### How fresh is the data?

Data is extracted 100% in real-time directly from live Amazon category feeds during the run.

#### Does this require Amazon login credentials or cookies?

No. The scraper runs 100% publicly without requiring an Amazon seller or buyer account, and does not need any cookies or API keys.

# Actor input Schema

## `categories` (type: `array`):

Select one or more Amazon product categories to scrape.

## `feedType` (type: `string`):

Choose between real-time Best Sellers or Hot New Releases.

## `maxItems` (type: `integer`):

Maximum number of products to extract per selected category (e.g. 10 for quick trial, up to 100).

## `minPrice` (type: `number`):

Filter out cheap impulse items below this price threshold.

## `maxReviews` (type: `integer`):

Set to e.g. 200 or 500 to uncover high-ranking products with low review barriers (easy to compete with). Leave 0 for all.

## `minRating` (type: `number`):

Filter products by minimum customer star rating (e.g. 4.0).

## `proxyConfiguration` (type: `object`):

Optional Apify proxy configuration for high-volume automated crawls.

## Actor input object example

```json
{
  "categories": [
    "beauty"
  ],
  "feedType": "bestsellers",
  "maxItems": 10,
  "minPrice": 0,
  "maxReviews": 0,
  "minRating": 0,
  "proxyConfiguration": {
    "useApifyProxy": false
  }
}
```

# Actor output Schema

## `dataset` (type: `string`):

Dataset containing verified Amazon product intelligence records

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {};

// Run the Actor and wait for it to finish
const run = await client.actor("automation_studio/amazon-bestsellers-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {}

# Run the Actor and wait for it to finish
run = client.actor("automation_studio/amazon-bestsellers-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{}' |
apify call automation_studio/amazon-bestsellers-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,automation_studio/amazon-bestsellers-scraper"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/sXrmN7hBVfdZzsq5h/builds/NdiiV2V5rHcNxzvBX/openapi.json
