Amazon Scraper
Pricing
from $2.49 / 1,000 results
Amazon Scraper
Amazon Scraper SD - Amazon Scraper is an e-commerce data tool that extracts Amazon search results by keyword or URL on 21 marketplaces: ASIN, title, price, list price, rating, reviews, badges, sponsored flag and position, page after page - Amazon product research.
Pricing
from $2.49 / 1,000 results
Rating
5.0
(2)
Developer
Neuro Scraper
Maintained by CommunityActor stats
0
Bookmarked
71
Total users
0
Monthly active users
9 days ago
Last modified
Categories
Share
Amazon Scraper — Amazon search results by keyword, page after page
The Amazon Scraper turns any Amazon search into a clean table of products. Type a keyword, pick a marketplace, and it returns every result card with ASIN, title, price, list price, rating, review count, badges and position.
The Amazon Scraper keeps following Amazon's own "Next" link until it reaches your limit or the last page. In our tests one keyword gave 70 products across 5 result pages in 12 seconds.
No Amazon account, no login, no browser. The Amazon Scraper reads the same public search pages any visitor sees, so your product research starts from real search data.
What the Amazon Scraper collects
Every row is one product card from an Amazon search results page. The Amazon Scraper records where it appeared (page and position), how it is priced, how it is rated and whether it is an ad.
That makes it a fit for keyword ranking checks, price monitoring, competitor tracking and catalogue research on 21 Amazon marketplaces.
Who uses the Amazon Scraper
E-commerce sellers who track where their ASIN ranks for a keyword, day after day.
Brands and agencies watching competitor prices, deals and "Amazon's Choice" badges in a category.
Analysts building product research datasets: price bands, rating spread, sponsored share per keyword.
Developers who need Amazon search results as JSON through an API instead of maintaining their own scraping code.
How the Amazon Scraper works
The Amazon Scraper opens the Amazon search page for your keyword exactly as a logged-out desktop Chrome visitor does, then parses each result card.
Amazon hides the price of items that cannot ship to the visitor's location. So before reading results, the Amazon Scraper sets a delivery postcode in the marketplace's own country through Amazon's location widget.
The security tokens that widget needs are read from the live page on every run. Nothing is hardcoded. In our tests this raised priced cards from 5 of 16 to 16 of 16 on amazon.com.
Amazon sometimes answers with an interstitial instead of results. The Amazon Scraper recognises four kinds and handles each one:
- the "Continue shopping" soft CAPTCHA, answered with the form values the page itself contains;
- the Akamai "bm-verify" check, answered with the arithmetic the page prints;
- the AWS WAF JavaScript challenge, answered by switching to a new session and proxy IP;
- an HTTP 503 "something went wrong" page, also answered with a new session.
Image CAPTCHAs are never guessed. Every page gets a bounded number of retries, so the Amazon Scraper never loops forever and one failing keyword never stops the run.
Input fields for the Amazon Scraper
Give at least one search keyword or one Amazon search URL. With neither, the run stops at once and says what is missing.
| Field | Type | Default | Meaning |
|---|---|---|---|
keywords | array | ["wireless earbuds"] (prefill) | Search terms, one per line, exactly as you would type them on Amazon |
startUrls | array | empty | Amazon search or category result URLs from any supported marketplace; a product URL returns that single product |
domain | select | amazon.com | Marketplace for the keywords: 21 choices from amazon.com to amazon.com.au |
maxItems | integer | 20 | Total products to return; pagination continues until this is reached |
maxPagesPerKeyword | integer 1–50 | 20 | Safety limit on result pages per keyword or URL |
includeSponsored | boolean | true | Keep the sponsored products Amazon mixes into results |
setDeliveryLocation | boolean | true | Set a delivery postcode so Amazon shows prices |
deliveryZipCode | string | empty | Your postcode; empty uses 10001 on amazon.com and the capital-city postcode elsewhere |
proxyConfiguration | proxy | Apify RESIDENTIAL | Proxy used for Amazon; residential is recommended |
Older inputs keep working: queries, maxResults, maxSearch and proxy from the previous version of the Amazon Scraper are still read.
Example input for the Amazon Scraper
{"keywords": ["laptop stand", "monitor arm"], "domain": "amazon.com", "maxItems": 100, "deliveryZipCode": "94103"}
Output fields of the Amazon Scraper
Every dataset row has the same keys in the same order, so the export has a stable schema for CSV, JSON or Excel.
| Field | Meaning |
|---|---|
asin | Amazon product ID |
title | Product title as shown on the card (the "Sponsored Ad –" prefix is removed) |
url | Clean product URL https://www.<marketplace>/dp/<ASIN> |
price | Buy-box price as a number, or null when the card shows none |
currency | ISO code: USD, EUR, GBP, CAD, INR, JPY and so on |
listPrice | Struck-through "List", "Typical" or "M.R.P." price when shown |
rating | Average stars, e.g. 4.6 |
reviewsCount | Number of ratings shown on the card |
isPrime | Prime-eligible delivery on amazon.com; null where Amazon shows logged-out visitors no Prime marker |
isSponsored | true for ad placements |
badge | "Amazon's Choice", "Best Seller", deal labels and similar |
thumbnail | Card image URL |
position | Position of the card in the results, counted across pages |
page | Result page number |
keyword | The keyword or URL that produced the row |
domain | Marketplace, e.g. amazon.de |
brand | Brand line, on layouts that print it (apparel) |
boughtInPastMonth | Amazon's "1K+ bought in past month" text |
delivery | Delivery promise text for the postcode set |
image | Full-size version of the card image |
searchUrl | The exact results page the row came from |
scrapedAt | ISO timestamp (UTC) |
Example row from the Amazon Scraper
{"asin": "B08BRCT4JH", "title": "BESIGN LS03 Aluminum Laptop Stand ...", "price": 15.29, "currency": "USD", "listPrice": 16.99, "rating": 4.8, "reviewsCount": 24293, "isPrime": true, "isSponsored": false, "badge": "Amazon's Choice: Overall Pick", "position": 1, "page": 1, "keyword": "laptop stand", "domain": "amazon.com"}
Marketplaces tested with the Amazon Scraper
These results were measured on 2026-10-03 from one residential IP in Bangladesh. Platform runs use Apify residential proxy, so your results can differ, usually for the better.
| Marketplace | What we measured |
|---|---|
| amazon.com | Full runs: 20 rows in 11 s, 70 rows over 5 pages in 12 s, postcode 10001 set |
| amazon.de | Full runs: 16 and 10 rows in EUR, postcode Berlin 10115 set |
| amazon.ca | Full run: 44 rows in CAD from a pasted search URL, postcode M5V 3L9 set |
| amazon.co.jp, amazon.com.au, amazon.in | Search answered, postcode set, 22–60 priced cards per page |
| amazon.com.mx, amazon.com.br, amazon.sa, amazon.com.be | Search answered 48–60 cards on a single probe |
| amazon.it, amazon.es, amazon.nl, amazon.com.tr, amazon.sg, amazon.eg | Akamai interstitial or HTTP 503 on single probes; the interstitial was passed on amazon.it |
| amazon.co.uk, amazon.fr | Search blocked from the test IP by the AWS WAF JavaScript challenge |
Amazon Scraper limits, stated plainly
The Amazon Scraper does not solve the AWS WAF JavaScript challenge. From our test IP every amazon.co.uk and amazon.fr search was challenged; on the platform the Amazon Scraper retries with fresh residential IPs, which we could not measure locally.
Amazon shows 16 to 60 cards per page and a limited number of pages per keyword (the "laptop" search listed 20). The Amazon Scraper cannot read results Amazon does not show, so very broad keywords stop when Amazon stops.
isPrime is only known on amazon.com, where Prime-eligible items carry a "Join Prime" delivery line. On amazon.de and amazon.ca it is null because Amazon shows logged-out visitors no Prime marker.
price is null when a card shows no buy-box price, for example "See options" listings. In the final amazon.com test that was 2 of 20 cards.
The Amazon Scraper reads search cards only. For bullet points, images, variants and seller details use the Amazon Product Scraper linked below.
Export, API and automation with the Amazon Scraper
Download the Amazon Scraper dataset as CSV, JSON, Excel, XML or HTML from the Apify console, or read it with the Apify API in Python, JavaScript or any HTTP client.
Schedule the Amazon Scraper daily to build price history and keyword ranking history. A webhook can notify your system when each run finishes.
Ready integrations push results to Google Sheets, Make, Zapier, n8n, Slack or your own database without code. The fixed schema keeps every integration stable.
A common automation: run the Amazon Scraper every morning for 20 keywords, send the dataset to Google Sheets, and chart your ASIN's position over time.
Amazon Scraper pricing
The Amazon Scraper uses pay-per-event pricing: you pay per product row in the dataset, and the current price per 1,000 results is on the Pricing tab.
Free-plan accounts get up to 30 results per run. Paid plans are limited only by maxItems and by what Amazon shows for the keyword.
Related scrapers
The Amazon Scraper is part of a family of no-login scrapers from the same developer. Combine them for full product research or social media monitoring.
| Actor | What it extracts |
|---|---|
| Amazon Product Scraper | Full product page: price, stock, features, images, variants, seller, Best Sellers Rank |
| Amazon Best Sellers Scraper | Ranked Top 100 Best Sellers and New Releases per category |
| TikTok Profile Scraper | TikTok followers, likes, bio and verification |
| TikTok Video Details Scraper | Plays, likes, comments, hashtags and music of TikTok videos |
| Snapchat Profile Scraper | Snapchat subscribers, bio, Spotlight views |
| Facebook Marketplace Scraper | Facebook Marketplace listings and prices |
| Facebook Ads Library Scraper | Ads from the public Facebook Ad Library |
| Instagram Scraper | Instagram posts, reels and profiles |
| Instagram Hashtag Scraper | Posts for an Instagram hashtag |
| YouTube Scraper | YouTube search results and video data |
| YouTube Comments Scraper | Comments of YouTube videos |
| Facebook Pages Scraper | Public Facebook page details |
Leave a review
If the Amazon Scraper saved you time, please leave a star rating and a short review on the Actor page. Reviews help other buyers judge it and tell us what to improve next.
If something failed, open an issue with the run link instead, and we will look at it.
Frequently asked questions
Does the Amazon Scraper need an Amazon account or login?
No. The Amazon Scraper never logs in and never uses cookies from a browser. It only reads public search pages, plus the anonymous session cookies Amazon itself sets during the run.
How many results can the Amazon Scraper return for one keyword?
As many as Amazon shows: 16 to 60 per page, on as many pages as Amazon lists (20 for "laptop"). Our amazon.com test returned 70 products from 5 pages in 12 seconds, then stopped at the requested limit.
Which Amazon marketplaces does the Amazon Scraper support?
21: amazon.com, .ca, .com.mx, .com.br, .co.uk, .de, .fr, .it, .es, .nl, .com.be, .se, .pl, .com.tr, .ae, .sa, .eg, .in, .co.jp, .sg and .com.au. The table above lists what each one returned in our tests.
Why are some prices empty in the Amazon Scraper output?
Amazon shows no buy-box price on some cards, such as "See options" items or products that cannot ship to the postcode set. Keep setDeliveryLocation on, and use a postcode in the marketplace country.
Can the Amazon Scraper track my product's ranking for a keyword?
Yes. Every row has position and page. Schedule the Amazon Scraper for your keywords and compare the position of your ASIN between runs.
Does the Amazon Scraper include sponsored products?
Yes, by default, and each row says isSponsored. Switch includeSponsored off to keep organic results only.
Can I paste an Amazon category or filtered search URL into the Amazon Scraper?
Yes. Put the URL in startUrls. Filters, sorting and categories in the URL are kept, and the marketplace is taken from the URL itself.
Why does the Amazon Scraper set a delivery postcode?
Because Amazon hides prices for items that cannot ship to the visitor. Our test went from 5 priced cards out of 16 to 16 out of 16 after the postcode was set.
Is it legal to use the Amazon Scraper?
The Amazon Scraper collects publicly visible product data only and never bypasses a login. How you store and use the data is your responsibility, so check Amazon's terms and your local law.
Can I use the Amazon Scraper from Python or my own app?
Yes. Start a run and read the dataset through the Apify API with the Python or JavaScript client, or call the run-sync endpoint and receive JSON directly.