Amazon Search Results Scraper: Full Product Records avatar

Amazon Search Results Scraper: Full Product Records

Pricing

from $4.00 / 1,000 products with a prices

Go to Apify Store
Amazon Search Results Scraper: Full Product Records

Amazon Search Results Scraper: Full Product Records

Search Amazon and get the complete product record behind every result, not the thin summary the search page shows. 64 fields per product including units bought last month, every bestseller rank, specifications and variants. 19 marketplaces.

Pricing

from $4.00 / 1,000 products with a prices

Rating

0.0

(0)

Developer

Amazon Scrapers

Amazon Scrapers

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

Amazon search results scraper: 64 fields per result, not search snippets

Type what a shopper would type. Get back every result with the complete product record behind it, not the thin summary Amazon prints on the search page.

Amazon's search results carry a name, a price and a star rating. That is enough to render a list and not enough to decide anything. This Actor walks the results, then opens each product and reads it properly: sixty-four fields, including the ones that only exist one level down.

What only exists one level down

These are the fields a search-page scraper structurally cannot give you, because they are not on the search page at any price.

Units, not just rank. boughtInPastMonth is Amazon's own figure, printed on the product page and nowhere on the search page.

Every bestseller rank. bestsellerRanks, one per category level, with the category names.

The physical product. weight, dimensions, gtin, modelNumber, material, and the full specifications table merged from all eight of Amazon's detail tables.

The family. variantAsins, variantAttributes, variantCount. A search result that looks like one product is often fourteen.

The real price picture. listPrice, savingsAmount, discountPercent, coupon, dealBadge, pricePerUnit. The search page shows one number; the product page shows what that number means.

Delivery and terms. deliveryInfo, returnPolicy, isPrime, otherSellersCount.

The media. images, imageCount, videoCount, hasAPlusContent, description, features. What the listing actually looks like, which is the thing you are competing against.

Every field it returns

All sixty-four, with the third column marking which ones Amazon already puts on the search page and which ones only exist on the product page. Fifty-one of the sixty-four are in that second group, and they are the reason this Actor opens every result instead of scraping the list.

Price and offer

FieldWhat it holdsWhere it lives
priceCurrent price from Amazon's own buy box data (this is what you are charged for)search page too
listPriceThe struck-through price, when Amazon shows oneproduct page only
savingsAmountHow much is off in moneyproduct page only
discountPercentHow much is off as a percentageproduct page only
currencyThree-letter code, from the page itselfsearch page too
pricePerUnitPrice per count, ounce, litre, whatever Amazon usesproduct page only
priceSourceWhere the price came from, so you can audit itproduct page only
isDiscountedWhether it is currently below list priceproduct page only
couponThe clip-coupon text, when there is oneproduct page only
dealBadgeLightning deal, limited time deal, and similarsearch page too
hasSubscribeAndSaveWhether a subscription price existsproduct page only
hasUsedOfferWhether a used copy is offeredproduct page only
isRefurbishedRenewed and refurbished listingsproduct page only
otherSellersCountHow many other sellers offer itproduct page only

Demand and rank

FieldWhat it holdsWhere it lives
boughtInPastMonthUnits bought last month as a numberproduct page only
boughtInPastMonthTextAmazon's own wording, such as 10K+ bought in past monthsearch page too
estimatedMonthlySalesUnits, derived from the line aboveproduct page only
estimatedMonthlyRevenueUnits times priceproduct page only
bestsellerRanksEvery rank with its category, not just the firstproduct page only
isBestSellerThe orange best seller badgeproduct page only
isAmazonChoiceThe Amazon's Choice badgeproduct page only
ratingAverage stars, read in every shop languagesearch page too
reviewCountHow many ratings, as a numbersearch page too

Stock and delivery

FieldWhat it holdsWhere it lives
inStockTrue, false, or null when Amazon does not sayproduct page only
availabilityAmazon's own availability sentenceproduct page only
stockLeftOnly three left in stock, when shownproduct page only
deliveryInfoThe delivery date Amazon promisesproduct page only
returnPolicyThe return terms in fullproduct page only
isPrimePrime delivery on this offersearch page too

Identity and catalogue

FieldWhat it holdsWhere it lives
asinThe product idsearch page too
parentAsinThe parent listing, for variant familiesproduct page only
titleFull product title, shortened only past 1000 characterssearch page too
brandBrand nameproduct page only
manufacturerManufacturer, when different from brandproduct page only
modelNumberModel numberproduct page only
partNumberManufacturer part numberproduct page only
gtinGTIN, EAN or UPCproduct page only
marketplaceWhich shop this row came fromsearch page too
urlThe page this was read fromsearch page too
scrapedAtTimestamp of the readsearch page too

Description, media and variants

FieldWhat it holdsWhere it lives
descriptionThe product description under the fold, as plain textproduct page only
featuresThe bullet points at the topproduct page only
imageMain image at the largest size Amazon offerssearch page too
imagesEvery gallery image, largest version firstproduct page only
imageCountHow many images there areproduct page only
videoCountHow many videos are on the pageproduct page only
hasAPlusContentWhether the brand added enhanced contentproduct page only
variantAsinsSibling products in the variant familyproduct page only
variantCountHow many variants there areproduct page only
variantAttributesWhat varies, such as size and colourproduct page only
categoryThe most specific categoryproduct page only
categoriesThe full breadcrumb pathproduct page only

Specifications, pulled apart

FieldWhat it holdsWhere it lives
specificationsEvery row of every detail table, mergedproduct page only
productFactsAmazon's newer facts panelproduct page only
weightWeight with its unitproduct page only
dimensionsPackage or product dimensionsproduct page only
colourColourproduct page only
materialMaterialproduct page only
unitCountHow many units in the packproduct page only
firstAvailableDate first available on Amazonproduct page only
countryOfOriginCountry of originproduct page only
warrantyWarranty descriptionproduct page only
importantInformationSafety and legal text, when presentproduct page only
isClimatePledgeFriendlyThe Climate Pledge Friendly badgeproduct page only

A real row

asin B0BZYCJK89
title Owala FreeSip Stainless Steel Water Bottle 24 oz
brand Owala
price 27.99
currency USD
priceSource buybox-data
listPrice 34.99
discountPercent 20
otherSellersCount 3
boughtInPastMonth 30000
estimatedMonthlyRevenue 839700
bestsellerRanks #1 in Water Bottles, #12 in Sports Water Bottles
rating 4.7
reviewCount 89412
weight 1.02 pounds
dimensions 3.5 x 3.5 x 10 inches
material Stainless Steel
variantCount 34
variantAttributes ["size", "color"]
imageCount 7
hasAPlusContent true
inStock true
deliveryInfo Tomorrow, August 27
scrapedAt 2026-08-26T09:14:22.031Z

Everything below rating in that list is invisible on the search page. That is the whole difference between this Actor and a search scraper.

What to put in

A search term such as standing desk converter. Several at once is fine, and each row carries the marketplace it came from so you can keep them apart.

A filtered search URL. Build the search in your own browser with the filters you want, paste the address, and this Actor continues from there. That is usually easier than reproducing Amazon's filter syntax by hand, and Amazon's own filters are better than anything this Actor could reimplement.

Category and bestseller links work as well, and so do plain ASINs.

Search rank and what it is worth

Rows from the results grid carry searchPosition, which is where the product sat on that grid, counting from one. Rows also come back in the order Amazon returned them, so the dataset reads the way the page did.

Not every row has one. A search page also shows products outside the grid, in carousels and in strips like "products related to this search", and this Actor delivers those too. They have no position on the grid, so they carry no searchPosition and no isSponsored. Measured on a real run of 30 August 2026: six of ten rows came from the grid and carried both fields, four did not. Check whether the field is there before you rank on it.

Worth knowing: that order is personalised and varies by exit address and by time of day. Two runs an hour apart can differ. If search position is the thing you care about, run it repeatedly and treat the pattern as the signal rather than any single run. Every row carries scrapedAt so you can.

Advertisements are marked. Grid rows also carry isSponsored. This page used to say that sponsored placements could not be told apart reliably, and that was wrong: measured on real search pages from amazon.com and amazon.de on 30 August 2026, Amazon marks them in three ways that do not depend on language, and those are what this Actor reads.

That matters more than it sounds for keyword research. On one real page measured that day, four of the first five results were advertisements. Treating that as organic ranking would have been badly misleading, and until this change it was exactly what you would have got.

Sponsored placements are still included rather than dropped, because for most questions you want the page as a shopper saw it. Filter on isSponsored when you want organic ranking on its own.

If placements themselves are what you are after rather than full product rows, the Amazon Sponsored Products Tracker does that job at a tenth of the price, because it never opens a product page.

It will not guess a price

Amazon puts up to nine price-shaped numbers on a product page. Measured on this engine: prices read from the markup were correct zero times out of six, prices from the buy box data Amazon itself uses were correct nine out of nine.

So the price comes from that data and nowhere else. When it is absent you get no price rather than a wrong one, and the row still arrives with everything else. priceSource records where each price came from.

You are not charged for a row without a price. On a broad search that matters: searches return plenty of subscription pages, apps and listings Amazon does not price, and you should not pay for those.

Settings worth knowing about

SettingWhat it does
marketplaceOne of nineteen, from com to co.jp.
proxyCountryLeave empty and it follows the marketplace. On a search Actor this also changes which results you get, since Amazon personalises by location.
maxItemsHard ceiling across the whole run. Worth setting on a broad search.
maxItemsPerListHow many results to take per search term. Prefilled at ten so your first click is quick.
maxListPagesHow deep to walk each search. Amazon caps its own search at roughly seven pages.
lanesHow many products are read at once. Eight by default. Sixteen roughly halves the run time and costs a few prices.
maxAttemptsAttempts per product, each from a different address. Twelve by default.
residentialFallbackOff by default. On product pages it buys almost nothing: measured 2026-08-26, it cost roughly six times as much and returned two more products out of sixty. On the search and category pages this Actor starts from, it is a different story. Measured 2026-08-30, during hours when Amazon refused every listing page with a two kilobyte stub, twenty datacenter retries returned nothing and residential returned a full page in eight attempts. Turn it on if a run comes back empty.
economicalOff by default. On a sixty-four field read it costs you the fields that sit late in the page.

How it works, in plain terms

Two jobs in one run. First it walks the search pages and collects the ASINs. Then it opens every product and reads it properly.

Amazon refuses roughly six requests in ten to an address it has not seen before, and it refuses search pages as readily as product pages. So every page and every product gets up to twelve attempts, each from a different exit address, and the same address is never used twice in a row. Addresses that work are remembered for the run and tried first. When refusals climb the runner slows down instead of pushing harder. Anything still refused goes into a second pass at half speed using the addresses that proved themselves.

The search page needs that protection most: a refused search page costs you every product behind it. On 26 August 2026 a run came back with zero products because Amazon answered a listing link with four kilobytes and no error code, which the engine read as an empty result set. It now recognises a refusal without an error code and retries it.

Reading the run log

Done: 17 charged (+3 delivered without a price, free), 0 refused by Amazon, 0 other. 1709 KB per charged result, 198 attempts in total.
Exit addresses: 166 used, 2 proven good, 12 burned.
Attempts by outcome: {"refused by Amazon":126,"page did not carry the field this Actor needs":51,"network error":4,"ok":17}

charged is what you pay for. The bracketed number arrived with all its other fields and cost you nothing.

If a run ever delivers rows and charges for none of them, the log says so in capitals at the bottom.

Reliability, measured

Three consecutive runs of twelve products on 26 August 2026, at the default settings:

run 1 12 of 12 delivered, 9 with a price
run 2 12 of 12 delivered, 12 with a price
run 3 12 of 12 delivered, 8 with a price

And one run of sixty products the same day: 58 delivered, 50 with a price, in 12.6 minutes.

One thing is worth reading out of that, and it is not the one you would expect. The sixty product run delivered 58, which sounds worse than the 36 of 36 above until you notice what it was asked for: a category page, and Amazon only offered 58 products on it that day. A list Actor is bounded by what the list holds, so "delivered" here means "everything that was there", not "everything we wanted".

The second is the residential switch, and the honest version is less dramatic than it sounds. Measured 26 August on the same sixty products, twice: with the switch off, fifty-one came back with the field this Actor charges on, for $0.0205 of platform usage. With it on, fifty-three came back, for $0.1192. Two more products for roughly six times the cost.

That is why it is off by default. It is in your input form, so if a marketplace is refusing almost everything you can turn it on and pay for the difference.

What you can build with it

A map of who owns a keyword. One run per keyword you care about, then compare who ranks, what they charge and how many reviews they have. That is a competitive brief rather than a list.

A listing benchmark. imageCount, videoCount, hasAPlusContent and the length of features across the top twenty for your keyword tell you what a listing has to look like to rank there.

A price band study. The spread of price and pricePerUnit across a search tells you where customer expectation sits before you set yours.

A share-of-search tracker. Run the same keyword daily into one dataset and count how many of the top twenty belong to each brand.

A product discovery pass. Search a problem rather than a product, then sort by estimatedMonthlyRevenue to see what people are actually buying to solve it.

Working it into your stack

Every run writes to a dataset you can download as CSV, JSON, Excel or XML, or pull through the API. Sixty-four fields is a wide table; most people pick a subset in the dataset view and export that.

Schedules take a cron expression. For a share-of-search tracker, a daily schedule into one named dataset is the whole implementation.

Marketplaces

Nineteen, from amazon.com to amazon.co.jp, read in their own language. A German rating saying "4,5 von 5 Sternen" and a Japanese one putting the number last both come back as 4.5.

Prices do not travel everywhere. Measured on 2026-08-24:

MarketplaceProducts priced
amazon.com57 of 60
amazon.ca5 of 5
amazon.co.uk5 of 6
amazon.fr4 of 5
amazon.it1 of 5
amazon.es1 of 5
amazon.de0 of 8
amazon.com.au0 of 5

Everything else arrives on all of them, and rows without a price are free.

Pricing

Four dollars per thousand products with a price, plus three cents to start a run.

A search of two hundred results costs about eighty-three cents. You are not charged for rows without a price or for products that never arrived, and platform usage is included.

The rest of this family

Eleven Actors on one engine. If sixty-four fields is more than you need for a search, the focused ones cost the same four dollars and return less noise. The full product scraper is the one exception at eight dollars, because it does the same sixty-four field read without the search step:

  • Amazon Bestsellers Scraper for the same depth on a category instead of a search term.
  • Amazon Niche Research when the question is whether a market is worth entering.
  • Amazon Price Tracker on the ASINs a search turns up.
  • Amazon Product Scraper when you already have the ASINs and do not need the search step.

Questions people ask

How many results per search. Amazon caps its own search at roughly seven pages. Set the maximum per search to what you want and the page limit to how deep to walk.

Why do two runs return a different order. Because Amazon personalises search results by location and time. The set is usually stable; the order is not.

Can I use my own filtered search. Yes, paste the URL. Building the filter in a browser is easier than encoding it by hand.

Are sponsored results included. Yes. Amazon does not mark them reliably enough to filter without guessing, and dropping a real product by mistake is worse.

Can I search several keywords in one run. Yes. Every row carries the search it came from, so they stay separable.

How long does it take. Sixty products take about 13 minutes, including walking the search pages.

What it does not collect

No review text, no reviewer names, no customer questions, no seller names. You get the aggregate rating and the count, which are facts about a product rather than about a person.

This Actor reads public pages and takes product facts. Business information about items, not information about people.

You are responsible for what you do with the output. Check Amazon's terms for your own use case.