eBay Scraper: Search, Sold Prices, Products, Reviews & Sellers
Pricing
from $4.00 / 1,000 results
eBay Scraper: Search, Sold Prices, Products, Reviews & Sellers
Scrape eBay across 8 marketplaces: US, UK, Germany, France, Italy, Spain, Canada, Australia. Keyword search, real sold prices with sale dates, catalog product data (brand, MPN, UPC, specs), buyer reviews, and seller stores. No API key, login, or proxy setup.
Pricing
from $4.00 / 1,000 results
Rating
0.0
(0)
Developer
Sourabh Kumar
Maintained by CommunityActor stats
0
Bookmarked
8
Total users
2
Monthly active users
16 hours ago
Last modified
Categories
Share
eBay scraper: sold prices, search listings, sellers, reviews and more
Get eBay data five ways: live listings, sold prices with sale dates, a seller's listings, product reviews and product catalog details. Type a keyword or paste an eBay link, press Start, and download a clean spreadsheet.
$4 per 1,000 results. No proxy setup, no eBay account, no API key.
Works on 8 eBay sites: United States, United Kingdom, Germany, France, Italy, Spain, Canada and Australia, each in its own currency and language.
Top use cases
- Price your stock off real completed sales with eBay Sold Prices.
- Find what used items actually sell for with eBay Used Price Research.
- Watch competitors' prices, discounts and stock with eBay Competitor Price Monitoring.
- Source products for resale inside a price range with eBay Product Sourcing.
- Follow live auctions with bids and time left with eBay Auction Tracker.
- Research a seller's store, feedback and listings with eBay Seller and Store Research.
- Read every buyer review of a product with eBay Product Reviews.
- Fill a catalog with MPN, UPC and specifications with eBay Product Catalog Data.
- Get UK sold prices in pounds with eBay UK Sold Prices, or German listings in euros with eBay Germany Listings.
Pick a mode
Set What to scrape (mode), then fill the section the mode needs. The other sections are ignored.
| You want | mode | Paste into |
|---|---|---|
| Live listings for a keyword, with price, condition, shipping and seller | search | queries (keywords) or startUrls (eBay search links) |
| Completed sales with the final price and sale date | sold | queries or startUrls |
| One seller's listings for a keyword, plus their store profile | seller | sellerOrStore (store name) + queries |
| Every buyer review of a product | reviews | itemUrls (eBay product links) |
| A product's catalog record: brand, MPN, UPC, specs, offer prices | product | itemUrls (eBay product links) |
Every mode can be scheduled. Run sold or search daily and you have a price tracker.
Input fields
| Option | Field | Used by | Default | What it does |
|---|---|---|---|---|
| What to scrape | mode | all | Search | Picks one of the five modes |
| Search terms | queries | search, sold, seller | none | Keywords, one search per term. Seller mode needs at least one |
| eBay search links | startUrls | search, sold | none | eBay search result links, with any filters you set on eBay. Overrides Search terms |
| Condition | condition | search, sold | Any | any, new or used |
| Minimum price | minPrice | search, sold | none | In the marketplace's own currency |
| Maximum price | maxPrice | search, sold | none | In the marketplace's own currency |
| Seller or store | sellerOrStore | seller | none | The store name from a store link (ebay.com/str/ankerdirect gives ankerdirect) or a seller username |
| Product links or IDs | itemUrls | reviews, product | none | eBay product links (ebay.com/p/...) or the bare product ID. Not item links (/itm/) |
| Marketplace | marketplace | all | ebay.com | One of the 8 eBay sites |
| Maximum results | maxResults | all | 50 | Most rows for the whole run, up to 10,000 |
Why this eBay scraper?
- 💰 Real sold prices: the final price and the sale date of completed sales, not asking prices.
- 🌍 8 eBay sites: US, UK, Germany, France, Italy, Spain, Canada and Australia, each in its own currency.
- 🔨 Auctions too: bid count and time left on auction listings, next to Buy It Now prices.
- 🏷️ Product identifiers: brand, MPN, UPC/GTIN, model and the full specifications table.
- ⭐ Seller reputation on every listing: feedback percent and the exact feedback count.
- 📅 Built for schedules: run it daily and you have a price or stock tracker.
- ✅ Pay only for results: a search with no matches, a mistyped store or a bad link charges no results.
1. Search listings: what is for sale now
Paste one or more keywords, or an eBay search link with the filters you set on eBay.
Get one row per listing: title, price, original price and discount, condition, Buy It Now or auction (with bids and time left), shipping, units sold, stock, the seller's name and feedback, item location and the eBay product ID.
| Option | Field | Default | What it does |
|---|---|---|---|
| Search terms | queries | none | One search per keyword |
| eBay search links | startUrls | none | Use eBay's own filters (category, auction only, location); overrides Search terms |
| Condition | condition | Any | any, new or used |
| Minimum / Maximum price | minPrice / maxPrice | none | In the marketplace's currency |
| Marketplace | marketplace | ebay.com | One of the 8 eBay sites |
Input
{"mode": "search","queries": ["wireless earbuds"],"marketplace": "ebay.com","maxResults": 100}
Output (one real row, selected fields)
{"title": "Skullcandy SESH ANC Wireless In-ear Bluetooth Earbuds (Certified Refurb)-BLACK","price": 16.34,"priceText": "$16.34","currency": "USD","originalPrice": 59.99,"discount": "73% off","condition": "Certified - Refurbished","listingType": "buy_it_now","shippingText": "Free delivery","soldCount": "10,000+ sold","quantityAvailable": "3,596 remaining","sellerName": "greatvaluesite","sellerFeedbackPercent": 99.7,"sellerFeedbackCount": 100794,"itemLocation": "United States","epid": "17054784938","itemUrl": "https://www.ebay.com/itm/265983500898"}
A listing priced as a range ("$0.99 to $69.99") has the low end in price and the high end in priceMax. soldCount is how many units that listing has sold so far.
2. Sold prices: what things actually sold for
Paste the same keywords or search links as Search. Every row is a completed sale.
Get one row per sale: the final price, the sale date, condition, Buy It Now, Best Offer or auction, shipping, the seller and their feedback.
Search's options all work here too: Condition, Minimum and Maximum price, Marketplace.
Input
{"mode": "sold","queries": ["iphone 12"],"condition": "used","maxResults": 200}
Output (one real row, selected fields)
{"title": "Apple iPhone 12 (5G) A2172 - XFINITY MOBILE - 256GB Red - *81% Batt - A-Grade","price": 119,"priceText": "$119.00","currency": "USD","condition": "Pre-Owned","listingType": "best_offer","shippingText": "Free delivery","isSold": true,"soldDate": "Sold Apr 16, 2026","sellerName": "macalegin_electronics","sellerFeedbackPercent": 99.8,"sellerFeedbackCount": 13035,"itemLocation": "United States","itemUrl": "https://www.ebay.com/itm/147124834495"}
3. Seller's listings: one store, your keywords
Paste the store name from a store link (ebay.com/str/ankerdirect gives ankerdirect) or a seller username, plus at least one keyword. eBay only filters by seller together with a keyword.
Get one store profile row (store name, feedback, followers, items sold), then one row per matching listing with the same fields as Search.
Input
{"mode": "seller","sellerOrStore": "ankerdirect","queries": ["charger"],"maxResults": 60}
Output: the store profile row (real, complete)
{"recordType": "store","store": "ankerdirect","storeName": "Anker Official Store","feedbackPercent": 99.8,"followers": "34K","itemsSold": "1.0M"}
Output: a listing row (real, selected fields)
{"recordType": "listing","store": "ankerdirect","title": "2x Anker 60W PD Charger Cable USB C to USB C Fast Charging for MAC/Galaxy/Switch","price": 9.99,"currency": "USD","originalPrice": 18.99,"discount": "47% off","condition": "Brand New","soldCount": "3,009 sold","quantityAvailable": "500 remaining","sellerName": "ankerdirect","sellerFeedbackCount": 284258,"itemUrl": "https://www.ebay.com/itm/334008474412"}
4. Product reviews: every buyer review
Paste eBay product links (ebay.com/p/...) or the product ID. Search and sold rows carry it as epid.
Get one row per review, every page of them: author, date, title, text, star rating, verified purchase, who sold it and helpful votes.
Input
{"mode": "reviews","itemUrls": ["https://www.ebay.com/p/25056255340"],"maxResults": 200}
Output (one real row)
{"epid": "25056255340","author": "hathogm_0","date": "Dec 11, 2025","title": "Good quality. Great condition. The appea...","body": "Good quality. Great condition. The appearance was brand new. The charger cord didn’t work but everything else did. Just be sure to charge them before you try to pair them with your device.","rating": 4,"verifiedPurchase": true,"soldBy": "ki_27491510","helpfulCount": 1}
5. Product details: brand, MPN, UPC, specs and offer prices
Paste eBay product links or product IDs, the same as Reviews.
Get one row per product: brand, model, MPN, UPC/GTIN, colour, the specifications table, the category path, the average rating with its count, image links, how many live offers there are with the lowest and highest price, and a sample of reviews.
Input
{"mode": "product","itemUrls": ["https://www.ebay.com/p/25056255340"]}
Output (one real row, selected fields)
{"epid": "25056255340","title": "Apple AirPods Pro 2nd Generation with MagSafe Wireless Charging Case - White","brand": "Apple","model": "Apple AirPods Pro (2nd generation)","mpn": "MQD83AM/A","gtin13": "0194253397168","color": "White","categoryPath": "eBay > Electronics > Cell Phones & Accessories > Cell Phone Accessories > Headsets","aggregateRating": {"ratingValue": 4.3,"ratingCount": 560},"offerCount": 58,"lowestOfferPrice": 1.99,"highestOfferPrice": 33.99,"currency": "USD","itemSpecifics": {"Brand": "Apple","MPN": "MQD83AM/A","UPC": "0194253397168","Model": "Apple AirPods Pro (2nd generation)","eBay Product ID (ePID)": "25056255340","Color": "White"},"itemUrl": "https://www.ebay.com/p/25056255340"}
This is eBay's product record, not one seller's listing: price is the lowest live offer, which can be an accessory or a part. offerCount with lowestOfferPrice and highestOfferPrice show the whole spread.
Use it from an AI agent (Claude, ChatGPT, MCP)
Connect Claude, ChatGPT, Cursor or any MCP client to Apify's MCP server with this scraper as a tool:
https://mcp.apify.com?tools=sourabhbgp/ebay-scraper
Then ask in plain words. The agent fills in the input, and you pay the same per result. For example:
- "What did a used Nintendo Switch OLED sell for on eBay recently? Give me the last 50 sales."
- "List new AirPods Pro 2 listings on ebay.co.uk under 150 pounds."
- "Show me what ankerdirect sells on eBay under the keyword charger."
- "Pull the buyer reviews for this eBay product: https://www.ebay.com/p/25056255340"
Notes for the agent:
| Question | Mode | Minimum input |
|---|---|---|
| What is this selling for now? | search | queries |
| What did it actually sell for? | sold | queries |
| What does this seller list? | seller | sellerOrStore + queries |
| What do buyers say about this product? | reviews | itemUrls |
| Brand, MPN, UPC, specs of a product | product | itemUrls |
- Keep the cost small: $4 per 1,000 rows, so set
maxResultsto what the question needs (20 to 100 for a question; the default is 50). - Product links, not item links:
itemUrlstakesebay.com/p/<number>links or the bare number. Item links (/itm/) are refused with[U_CONFIG]. Every search and sold row carries anepidfield (when eBay has a catalog product for it) that works here. - Search links:
startUrlstakes objects,[{"url": "https://www.ebay.com/sch/i.html?_nkw=..."}], and keeps every filter in the link (sort order, auction only, category). - Seller mode needs a keyword:
sellerOrStorealone returns only the store profile row, with a note. Addqueries. - Prices:
priceis in the row'scurrency, set bymarketplace.minPriceandmaxPriceuse that currency too. A listing priced as a range has its low end inpriceand its high end inpriceMax. - Sold rows:
isSoldis true and the sale date is insoldDate.soldCounton a live listing is how many units that listing has sold, not a sale. - Reading the result: the status message starts with a code when a run ends short:
[U_...]means the input (for example[U_NO_RESULTS],[U_NOT_FOUND]),[E_...]means our side. TheRUN_SUMMARYrecord in the run's key-value store lists every search term, store or product with its own row count and outcome. - Time: 50 rows take about a minute, most of it start-up; 1,000 rows take about 2 minutes.
How much does it cost?
You pay per row, and each row is charged once. The price is the same in every mode and on every plan.
| What you get | Per 1,000 |
|---|---|
| Listings, sold listings, seller listings, reviews or products | $4.00 |
Each run also costs $0.00005 to start.
- Free plan: your $5 monthly credit covers about 1,250 rows.
- Starter plan ($29): about 7,250 rows a month.
Limitations
- Product details are catalog-level. eBay blocks individual item pages to scrapers, so product mode returns eBay's product record (brand, specs, offer prices), not one seller's listing, and it needs an
ebay.com/p/link. - Seller mode needs a keyword. eBay only filters by seller together with a search term, so you get a seller's items for your keywords, not their whole catalogue.
- Sold history is recent. Most completed sales eBay shows are from about the last three months, with a thin tail further back. For a longer history, schedule runs and keep the results.
- About 10,000 results per search. eBay stops serving deeper pages, whatever the match count says. Split a broad search into narrower terms to go further.
- Reviews need a catalog product. A listing with no eBay product page has no reviews to return.
- Some fields are listing-dependent.
soldCount,watchCountanddiscountare empty when eBay does not show them, and auction fields only appear on auctions.
FAQ
How do I scrape eBay without coding?
Pick a mode, type a keyword or paste an eBay link, and press Start. Download the results as Excel, CSV or JSON.
How do I get eBay sold prices?
Set What to scrape to Sold prices and type the product. Each row is a completed sale with the final price, the sale date, condition and seller.
Can I track prices over time?
Yes. Save your input as a task and schedule it daily or weekly. Each run adds a dated snapshot you can compare.
Which eBay countries does it support?
Eight: ebay.com, ebay.co.uk, ebay.de, ebay.fr, ebay.it, ebay.es, ebay.ca and ebay.com.au. Set Marketplace; prices come back in that site's currency.
Where do I find a product link for reviews or product details?
Every search and sold row has an epid field when eBay has a catalog product for it: paste that number. You can also copy the ebay.com/p/ link from an eBay product page.
Do I need a proxy or an eBay account?
No. It works out of the box and doesn't log in.
Will a bad input charge me?
No results are charged. A search with no matches, a store that doesn't exist or a broken product link ends with a message that says what to fix.
Can I use it from code or an AI agent?
Yes. Call it through the Apify API, or connect it to an AI agent through Apify's MCP server (see above).
Is scraping eBay legal?
It collects only what eBay shows any visitor, with no login. How you use the data is your responsibility, especially personal data such as seller and reviewer names. This scraper is not affiliated with eBay.
Your feedback
Something missing or wrong? Open an issue.