Amazon Best Sellers Scraper: Rankings, Prices & Ratings
Under maintenancePricing
from $3.00 / 1,000 results
Amazon Best Sellers Scraper: Rankings, Prices & Ratings
Under maintenanceScrapes ranked products from Amazon best-seller lists (top 100) with position, price, rating and images. Multi-marketplace (US, UK). Public data, no login.
Pricing
from $3.00 / 1,000 results
Rating
0.0
(0)
Developer
Johnatan Pereira
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Amazon Best Sellers Scraper (US, UK)
Extract the ranked products from any Amazon Best Sellers list — rank position, ASIN, title, price, rating, review count, and image — across marketplaces, using only public data, no login.
What it does
You give it Amazon Best Sellers categories (by name) and/or best-seller list URLs. It returns a clean, ranked list of the products on those lists — up to the top 100 per list — each with its position and the fields you see on the list. It renders each page like a real browser over a residential proxy in the marketplace's country, scrolls to load every item, and reads both pages of the list, so you get the complete top 100.
Use cases
- Best-seller rank monitoring — track which products lead a category over time, and how ranks shift.
- FBA / product research — pull the top 100 of a category with prices, ratings, and review counts to size demand.
- Trend discovery — spot products climbing the rankings before they are obvious.
- Ranking feeds — feed ranked category data into dashboards, sheets, or your own tools.
Inputs
| Field | Type | Default | Required | Example |
|---|---|---|---|---|
marketplace | select (US, UK) | US | optional | "UK" |
categories | array of strings | [] | one of the two | ["Electronics", "Video Games"] |
categoryUrls | array of URLs | [] | one of the two | ["https://www.amazon.com/Best-Sellers-Electronics-Headphones/zgbs/electronics/172541"] |
maxItemsPerList | integer | 100 | optional | 50 |
Provide at least one categories entry or one categoryUrls entry. maxItemsPerList is capped at 100 (an Amazon Best Sellers list holds 100 products, 50 per page).
How category resolution works
- Department names resolve by name. Entries in
categoriesare matched (case-insensitive, partial) against the marketplace's Best Sellers department sidebar. For example,"Electronics"resolves on both US and UK;"Video Games"resolves to"PC & Video Games"on UK. Node IDs also work. - Deep sub-categories go through
categoryUrls. Nested lists like Headphones (inside Electronics) are not in the top-level department sidebar, so they cannot be resolved by name. Open the list on Amazon and pass its URL (the…/zgbs/…or…/gp/bestsellers/…link) incategoryUrls. Any category that does not resolve by name is reported underunresolvedCategoriesin the run'sSTATS, and the run continues with the ones that did.
Output
One record per product, in rank order. Here is a real record — the US Electronics #1 from a run:
{"rankPosition": 1,"asin": "B08JHCVHTY","title": "blink plus plan with monthly auto-renewal","url": "https://www.amazon.com/dp/B08JHCVHTY","priceCurrent": 11.99,"currency": "USD","rating": 4.4,"reviewCount": 277639,"imageUrl": "https://images-na.ssl-images-amazon.com/images/I/31YHGbJsldL._AC_UL300_SR300,200_.png","categoryName": "Electronics","categoryUrl": "https://www.amazon.com/Best-Sellers-Electronics/zgbs/electronics/ref=zg_bs_nav_electronics_0","marketplace": "US","scrapedAt": "2026-07-07T17:37:54.837Z"}
| Field | Description |
|---|---|
rankPosition | Position in the list (1 = top seller). |
asin | Amazon product ID. |
title | Product title as shown on the list. |
url | Clean canonical product URL (/dp/<asin>), no tracking. |
priceCurrent | Current price shown, as a number (e.g. 11.99). null if no price is shown on the list. |
currency | Currency code ("USD" for US, "GBP" for UK). |
rating | Star rating, e.g. 4.4. null if not shown. |
reviewCount | Number of ratings, e.g. 277639. null if not shown. |
imageUrl | Product thumbnail image URL. |
categoryName | The resolved category / list name. |
categoryUrl | The Best Sellers list URL the record came from. |
marketplace | "US" or "UK". |
scrapedAt | ISO timestamp of when the record was collected. |
Supported marketplaces
| Marketplace | Domain | Currency |
|---|---|---|
| US | amazon.com | USD |
| UK | amazon.co.uk | GBP |
More marketplaces (DE, CA, FR, …) are planned — the extractor is already marketplace-agnostic; each new one is a small addition.
Cost
This actor is billed per product (Pay Per Event). You pay for the ranked products you get, not for time or attempts.
As an example, at $4 per 1,000 products, a full top-100 list costs about $0.40, and 1,000 products cost about $4. (See the actor's pricing on its Store page for the current rate.)
Reliability & scheduling
Amazon runs aggressive anti-bot protection. From time to time it serves an empty page instead of the real list — this affects every Amazon scraper, not just this one. To handle it, the actor automatically retries with a fresh proxy session when a list page comes back without the product grid, instead of silently returning nothing. It also scrolls each page until all 50 items load and reads both pages of the list, so a complete run returns the full top 100.
For continuous monitoring, the recommended setup is to schedule your runs (Apify Schedules) — for example, once a day. Because Amazon's empty responses are intermittent, repeated scheduled runs give you reliable coverage over time.
Known limitations
- Top 100 per list — an Amazon Best Sellers list holds 100 products (50 per page).
maxItemsPerListcannot exceed 100. - Deep sub-categories need a URL — department names resolve automatically; nested lists (e.g. Headphones) must be passed via
categoryUrls(see above). - US and UK — this version covers the US and UK marketplaces; more are planned.
- List data only — the fields are those shown on the Best Sellers list. Product-page-only data (BSR history, full specs, seller) is out of scope for this version.
- Intermittent empty pages — Amazon's anti-bot may serve empty pages; mitigated by automatic retry and by scheduling repeated runs (see above).
- Missing values are
null— if a card does not show a price or rating, the field isnull; values are never estimated or invented.
FAQ
Is this legal? It collects only public data that any visitor can see, without logging in. You are responsible for how you use the data.
Do I need an Amazon account or API key? No. No account, no login, no API key.
How do I scrape a category that isn't a top-level department? Open its Best Sellers list on Amazon and pass the URL in categoryUrls. Names in categories only resolve top-level departments.
Why do I sometimes get fewer products? Amazon serves empty pages intermittently (anti-bot). Re-run the actor, or schedule it to run repeatedly for steady coverage.
Changelog
1.0
- First release. Ranked top-100 products from Amazon Best Sellers lists on US and UK — rank position, ASIN, title, price, rating, review count, and image. Category resolution by department name, deep sub-categories via URL, full-page lazy-load scrolling, and automatic retry with session rotation on empty pages.
PT-BR (resumo)
O que faz: extrai os produtos ranqueados de listas de Mais Vendidos da Amazon — posição no ranking, ASIN, título, preço, avaliação, número de reviews e imagem — em múltiplos marketplaces, apenas com dados públicos, sem login. Renderiza cada página como um navegador real sobre proxy residencial do país, rola para carregar todos os itens e lê as duas páginas da lista, entregando o top 100 completo.
Casos de uso: monitorar rankings de mais-vendidos, pesquisa de produto para FBA, descobrir produtos em alta, feeds de ranking para dashboards.
Inputs: marketplace (US ou UK, padrão US); categories (nomes de departamento e/ou node IDs) e/ou categoryUrls (URLs de listas de Mais Vendidos); maxItemsPerList (padrão 100, máx. 100). Informe ao menos uma categoria ou uma URL.
Resolução de categorias: departamentos resolvem pelo nome a partir do menu de Mais Vendidos do marketplace (ex.: "Electronics" no US e UK; "Video Games" vira "PC & Video Games" no UK). Sub-categorias profundas (ex.: Headphones dentro de Electronics) não estão no menu de departamentos — passe a URL da lista em categoryUrls. Categorias não resolvidas aparecem em unresolvedCategories no STATS e o run continua com as demais.
Saída: um registro por produto, em ordem de ranking (veja o exemplo em JSON acima) — rankPosition, asin, title, url (/dp/<asin>), priceCurrent, currency (USD/GBP), rating, reviewCount, imageUrl, categoryName, categoryUrl, marketplace, scrapedAt. Campos ausentes ficam null, nunca estimados.
Marketplaces: US (amazon.com, USD) e UK (amazon.co.uk, GBP). Outros (DE, CA, FR…) previstos — o extractor já é agnóstico de marketplace.
Custo: cobrado por produto (Pay Per Event). Exemplo: a $4 por 1.000 produtos, uma lista top-100 custa cerca de $0.40; 1.000 produtos, cerca de $4.
Confiabilidade: a Amazon tem anti-bot agressivo e às vezes serve páginas vazias (afeta todos os scrapers). O actor retenta automaticamente com sessão nova quando a página vem sem os produtos, e rola/pagina para entregar o top 100 completo. Para monitoramento contínuo, agende runs (Apify Schedules).
Limitações: top 100 por lista (máx. 100); sub-categorias profundas via categoryUrls; US e UK nesta versão; apenas dados da lista (sem dados exclusivos da página do produto); blocos intermitentes mitigados por retry/agendamento; valores ausentes ficam null.