Amazon Product Search Scraper avatar

Amazon Product Search Scraper

Pricing

from $1.10 / 1,000 search items

Go to Apify Store
Amazon Product Search Scraper

Amazon Product Search Scraper

Search Amazon by keyword or paste a search/category URL across 18 marketplaces and get product listings enriched with full detail-page data: feature bullets, description, all images, brand, best-sellers rank, buybox seller, breadcrumbs, variations, rating and reviews.

Pricing

from $1.10 / 1,000 search items

Rating

0.0

(0)

Developer

karamelo

karamelo

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Categories

Share

What is Amazon Product Search Scraper?

Amazon Product Search Scraper extracts products and search rankings from Amazon across 18 international marketplaces without requiring an Amazon account. Search by keyword or paste existing Amazon search or category URLs to collect ASINs, titles, prices, original list prices, ratings, review counts, page positions, organic rankings, and sponsored placement indicators. Enable detail page enrichment to add brand names, Best Sellers Rank (BSR), category paths, feature bullets, high-resolution images, availability, buy-box seller, and technical specifications directly to each dataset item.

E-commerce managers, Amazon sellers, market researchers, and AI agents use this tool to monitor organic search performance, track competitor share of voice, verify buy-box status, and feed structured catalog data into analytical dashboards.

Quick start

  1. Open the Amazon Product Search Scraper on Apify Console.
  2. In the input configuration, enter your keyword in searchQuery (e.g., wireless earbuds).
  3. Select your marketplace in country (defaults to US).
  4. Set a conservative maxResults cap (e.g., 20).
  5. Click Start to run the scraper.
  6. Inspect and download the extracted products as JSON, CSV, or Excel from the Dataset tab.
{
"searchQuery": "wireless earbuds",
"country": "US",
"maxResults": 20,
"enrichDetails": true
}

What data you receive

Each dataset row represents one Amazon product result matching your search criteria. When enrichDetails is enabled, the row is enriched with full detail-page data.

Sample output record

{
"recordType": "product",
"asin": "B0BQPNMXQV",
"title": "JBL Vibe Beam - True Wireless Earbuds - Black",
"url": "https://www.amazon.com/dp/B0BQPNMXQV",
"marketplace": "US",
"searchQuery": "wireless earbuds",
"searchUrl": "https://www.amazon.com/s?k=wireless+earbuds",
"sourceType": "keyword",
"page": 1,
"positionOnPage": 1,
"organicRank": 1,
"globalPosition": 1,
"isSponsored": false,
"price": 29.95,
"listPrice": 49.95,
"currency": "USD",
"discountPercent": 40,
"rating": 4.2,
"reviewCount": 41298,
"boughtInPastMonth": "10K+ bought in past month",
"isPrime": true,
"thumbnail": "https://m.media-amazon.com/images/I/41+1Csr1pSL._AC_UY218_.jpg",
"badgeText": "Overall Pick",
"deliveryText": "FREE delivery Tomorrow",
"couponText": "Save 10% with coupon",
"availabilityText": null,
"detailScraped": true,
"brand": "JBL",
"featureBullets": [
"JBL Deep Bass Sound with 8mm drivers",
"Comfortable stick-closed ergonomic fit",
"Up to 32 hours of battery life with speed charging"
],
"description": "Bring your sound everywhere with rich bass and long battery life.",
"images": [
"https://m.media-amazon.com/images/I/81hSCa-nltL._AC_SL1500_.jpg",
"https://m.media-amazon.com/images/I/41+1Csr1pSL._AC_SL1000_.jpg"
],
"imageCount": 2,
"breadcrumbs": [
"Electronics",
"Headphones & Earbuds",
"Earbud Headphones"
],
"category": "Earbud Headphones",
"bestSellersRank": [
{ "rank": 17, "category": "Electronics" },
{ "rank": 3, "category": "Earbud & In-Ear Headphones" }
],
"availability": "In Stock",
"soldBy": "Amazon.com",
"shipsFrom": "Amazon",
"brandStoreUrl": "https://www.amazon.com/stores/JBL/page/17575AD5",
"hasAplusContent": true,
"variations": [],
"productDetails": {
"Brand Name": "JBL",
"Model Name": "JBL Vibe Beam",
"Connectivity Technology": "Bluetooth 5.2"
},
"scrapedAt": "2026-10-30T12:00:00.000Z"
}

Understanding ranking fields

  • positionOnPage: The absolute position of the product card on the search result page (counting sponsored ad placements and organic products in display order).
  • organicRank: The natural organic ranking position. Sponsored ad placements have null for this field.
  • globalPosition: The order of the product within the total collected dataset across all paginated pages.
  • isSponsored: A boolean indicating whether the placement is a paid sponsored ad placement (true) or an organic search result (false).

Input configuration

ParameterTypeDefaultDescription
searchQueryString"wireless earbuds"Primary search keyword to query on Amazon (e.g. 'wireless earbuds').
searchQueriesArray of strings[]List of search queries to execute in bulk in one job.
startUrlsArray of objects[]Amazon search result or category listing URLs. Regional marketplace is auto-detected.
countryString (enum)"US"Amazon marketplace code for keyword searches (e.g. US, UK, DE, JP).
maxResultsInteger50Maximum number of products to collect across the entire run (1 to 1,000).
enrichDetailsBooleantrueWhen enabled, fetches each product's full page to extract bullets, specs, and BSR.
sortByString (enum)"relevance"Sort order: relevance, priceAsc, priceDesc, avgCustomerReview, or newest.
includeSponsoredBooleantrueInclude sponsored products flagged with isSponsored: true. Set to false for organic only.
maxSearchPagesInteger5Maximum number of search pagination pages to crawl per keyword or URL (1 to 20).

Supported marketplaces

Amazon Product Search Scraper supports 18 Amazon regional marketplaces:

Country CodeMarketplace DomainCurrency
USamazon.comUSD ($)
UKamazon.co.ukGBP (£)
DEamazon.deEUR (€)
FRamazon.frEUR (€)
CAamazon.caCAD ($)
ESamazon.esEUR (€)
ITamazon.itEUR (€)
JPamazon.co.jpJPY (¥)
AUamazon.com.auAUD ($)
INamazon.inINR (₹)
MXamazon.com.mxMXN ($)
BRamazon.com.brBRL (R$)
NLamazon.nlEUR (€)
SEamazon.seSEK (kr)
PLamazon.plPLN (zł)
TRamazon.com.trTRY (₺)
AEamazon.aeAED
SGamazon.sgSGD ($)

Use cases and workflows

Share of search & competitor benchmarking

Brand owners track targeted search queries weekly to monitor how many top 10 positions their listings occupy versus competing brands, identifying when competitor sponsored ads overtake organic placements.

Price tracking and discount analysis

E-commerce analysts crawl category URLs across multiple marketplaces to monitor discounted items, list prices, and coupon availability during seasonal promotional events.

AI agent workflows and MCP integration

AI agents and automated pipelines query product data on demand using the Apify API or MCP server to provide shoppers with real-time price comparisons, Best Sellers Rank analysis, and brand discovery.

Programmatic integration

You can run this Actor programmatically through the Apify API using the official client libraries.

Node.js (JavaScript / TypeScript)

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({
token: process.env.APIFY_TOKEN,
});
const run = await client.actor('karamelo/amazon-product-search-scraper').call({
searchQuery: 'wireless earbuds',
country: 'US',
maxResults: 20,
enrichDetails: false,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(`Extracted ${items.length} products:`);
for (const item of items) {
console.log(`[#${item.organicRank ?? 'Ad'}] ${item.title} - $${item.price}`);
}

Python

from apify_client import ApifyClient
client = ApifyClient(token="YOUR_APIFY_TOKEN")
run_input = {
"searchQuery": "wireless earbuds",
"country": "US",
"maxResults": 20,
"enrichDetails": False,
}
run = client.actor("karamelo/amazon-product-search-scraper").call(run_input=run_input)
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(f"[{item.get('asin')}] {item.get('title')} - {item.get('price')}")

Troubleshooting and tips

Observable issuePotential causeRecommended adjustment
Zero products returnedStrict query filter or keyword not matching itemsVerify the search term directly on Amazon and check spelling.
Missing detail page fieldsenrichDetails was set to falseEnable enrichDetails: true in your run configuration.
Specific product URL skippedSingle /dp/ product URLs provided in startUrlsUse search or category URLs; this Actor is designed for search results.
Country currency mismatchKeyword searched on different marketplace domainSet the country parameter to your target marketplace code.

FAQ

What is the difference between positionOnPage and organicRank?

positionOnPage reflects the overall visual order of items on the search page, including sponsored advertisements. organicRank counts natural organic listings only, ignoring sponsored ads.

Can I scrape multiple search queries in a single job?

Yes. Provide an array of strings in searchQueries (e.g. ["gaming mouse", "mechanical keyboard"]). Results from all queries are stored in the same output dataset.

Do I need to be logged into an Amazon account?

No. The scraper reads public Amazon search result listings and detail pages without requiring customer credentials.

Does the scraper support international Amazon sites?

Yes, 18 regional marketplaces are supported. Specify the two-letter country code in the country parameter or pass a regional Amazon URL into startUrls.