eBay Scraper - Listings, Sold Prices & Seller Leads avatar

eBay Scraper - Listings, Sold Prices & Seller Leads

Pricing

from $3.00 / 1,000 listing / sold item scrapeds

Go to Apify Store
eBay Scraper - Listings, Sold Prices & Seller Leads

eBay Scraper - Listings, Sold Prices & Seller Leads

Scrape eBay active listings AND real sold/completed prices (comps): condition, price, shipping, bids, sold count, seller & feedback. Item detail adds brand, MPN, GTIN, ratings & photos; seller leads add feedback & location. Sold-price analytics, 10 marketplaces, monitoring mode.

Pricing

from $3.00 / 1,000 listing / sold item scrapeds

Rating

0.0

(0)

Developer

Scrape Sage

Scrape Sage

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

eBay Scraper — Listings, Sold Prices & Seller Leads

Extract active listings, real sold/completed prices (comps), full item details, and seller leads from eBay — the world's largest auction & marketplace. Get title, condition, price, shipping, bids, sold counts, location, the seller and feedback straight off search results, plus sold-price comps (what items actually sold for, with the sold date), deep item detail (brand, MPN, GTIN/UPC, model, product rating, high-resolution photos, payment methods) and B2B seller-lead profiles with positive-feedback %, items sold, location and a lead score.

No login and no API key — eBay's own pages, parsed into clean, structured JSON. Works across 10 marketplaces (US, UK, DE, AU, CA, FR, IT, ES, NL, IE).

Why this eBay scraper?

Typical scrapersThis actor
Active listings onlyActive and sold/completed prices — real comps with sold dates
Title + price only50+ fields: condition, shipping, bids, sold count, seller + feedback, brand, MPN, GTIN, model, rating, photos, payment methods
No market analyticsSold-price analytics — min/max/average/median, sold-per-day & a recommended list price, per query
No contact/seller dataSeller leads — positive-feedback %, feedback score, items sold, location, member-since, Top Rated + a 0–100 lead score
One marketplace10 eBay marketplaces with localized currency
Re-scrapes everythingMonitoring mode — only new listings / newly sold / new sellers since the last run
Hidden caps & start feesNo start fee, transparent pay-per-result

Use cases

  • Reselling & arbitrage — pull sold comps for any product to know exactly what it sells for, the sell-through rate, and the price you should list at. The single most-requested eBay data set.
  • Price & repricing intelligence — track active and sold prices across conditions and marketplaces to drive dynamic pricing and competitor monitoring.
  • Deal sniping — monitor a saved search (e.g. "vintage Omega Seamaster under $1,500") and get only newly listed items each run.
  • B2B lead generation — turn active eBay sellers into leads with feedback %, volume, location and a lead score (power sellers, stores, refurbishers, liquidators).
  • Catalog & demand research — aggregate brand/model, condition mix, watcher and sold counts to model demand and supply for a category.

How to use

  1. Sign up for Apify — the free plan is enough to try this actor.
  2. Open the eBay Scraper, choose a mode, enter keywords (or an eBay URL), set filters, and click Start.
  3. Watch results stream into the dataset as each page is parsed.
  4. Export as JSON, CSV, Excel, XML, or RSS — or pull results via the Apify API.

eBay blocks datacenter IPs, so this actor uses Apify Residential proxy by default (already pre-filled). Keep it on for reliable results.

Input

{
"mode": "sold",
"searchQueries": ["nintendo switch oled", "iphone 15 pro 256gb"],
"marketplace": "US",
"condition": "used",
"priceMin": 50,
"priceMax": 400,
"sort": "newest",
"computeAnalytics": true,
"enrichItemDetails": false,
"emitSellerLeads": false,
"maxItems": 500,
"monitorMode": false,
"proxyConfiguration": { "useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"] }
}
  • modesearch (active listings), sold (real sold/completed prices), itemDetail (full data for item URLs), or seller (a seller's inventory + lead profile).
  • searchQueries — keywords like pokemon booster box, vintage rolex, dyson v15. Combined with the filters below.
  • startUrls — paste eBay URLs directly: search (ebay.com/sch/i.html?_nkw=...), item (ebay.com/itm/123...), or seller (ebay.com/usr/<name>).
  • marketplace / categoryId / condition / listingType / priceMin / priceMax / freeShippingOnly / sort — narrow the results.
  • enrichItemDetails — open each item page to add brand, MPN, GTIN, model, rating, all photos, payment methods, the seller and quantity sold/watchers.
  • emitSellerLeads — also output one deduplicated seller-lead record per unique seller.
  • computeAnalytics — in Sold mode, add a sold-price comps summary per query.

Output

An active listing (type: "listing") — sold items use type: "sold" and add soldDate:

{
"type": "listing",
"marketplace": "US",
"itemId": "326374503310",
"epid": "8048191202",
"url": "https://www.ebay.com/itm/326374503310",
"title": "NEW Nintendo Switch OLED 64GB Neon Red Blue Joy-Con",
"subtitle": "Nintendo Switch · Nintendo Switch (OLED Model)",
"condition": "Brand New",
"price": { "raw": "$319.99", "value": 319.99, "currency": "USD" },
"buyItNow": true,
"auction": false,
"bestOffer": false,
"bids": null,
"shipping": { "raw": "Free delivery", "free": true, "cost": 0, "currency": "USD" },
"soldQuantity": 199,
"soldDate": null,
"returns": "Free returns",
"seller": { "username": "bestsellerssince1977", "url": "https://www.ebay.com/usr/bestsellerssince1977", "positiveFeedbackPercent": 99.3, "feedbackScore": 3700 },
"image": "https://i.ebayimg.com/images/g/.../s-l500.webp",
"listingType": "fixed_price",
"searchQuery": "nintendo switch oled",
"scrapedAt": "2026-06-17T06:44:56Z"
}

An itemDetail record (type: "itemDetail") adds brand, model, mpn, gtin13, color, availability, rating ({ value, count }), images (hi-res), paymentMethods, shippingDetails, itemSpecifics, the seller and soldQuantity/watchers. A seller record (type: "seller") carries storeName, positiveFeedbackPercent, feedbackScore, itemsSold, followers, location, memberSince, topRatedSeller and a 0–100 leadScore. A priceInsights record (type: "priceInsights", Sold mode) carries sampleSize, soldPrice ({ min, max, average, median }), soldDateRange, estimatedSoldPerDay and recommendedListPrice.

Notes: enrichment fields populate only when enrichItemDetails is on (or in itemDetail mode). Empty results are reported as a successful run. The actor scrapes public marketplace data only.

Monitoring — get only new listings

Turn on monitorMode and the actor remembers every id it has emitted (in a named key-value store keyed by monitorKey). On the next run with the same inputs it returns only records it hasn't seen before — new listings, newly sold items, or new sellers.

  • Use a distinct monitorKey per saved search so different watches keep separate memory.
  • It pairs with Apify Schedules: the schedule starts the run on a cron; monitoring mode dedupes against prior runs — so a daily watch only ever surfaces fresh listings or sales.

Automate & schedule

Run this actor on autopilot and pull results into your own stack:

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'MY_APIFY_TOKEN' });
const run = await client.actor('scrapesage/ebay-scraper').call({
mode: 'sold',
searchQueries: ['nintendo switch oled'],
condition: 'used',
computeAnalytics: true,
monitorMode: true,
monitorKey: 'switch-oled-comps',
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(`Got ${items.length} records`);

Integrate with any app

Connect the dataset to 5,000+ apps — no code required:

  • Make — multi-step automation scenarios.
  • Zapier — push new records into your CRM, sheet, or repricer.
  • Slack — get notified when a run finds something new.
  • Google Drive / Sheets — auto-export every run to a spreadsheet.
  • Airbyte — pipe results into your data warehouse.
  • GitHub — trigger runs from commits or releases.

Use with AI assistants (MCP)

The output is clean, LLM-ready JSON. Call this actor from Claude, ChatGPT, or any agent framework through the Apify MCP server — ask your assistant to "find sold prices for a sealed Nintendo Switch OLED on eBay and tell me the median and a good list price" and let it run this scraper for you.

More scrapers from scrapesage

Pair eBay with other marketplace, price and lead-gen scrapers:

Tips

  • For resale comps, use mode = sold with computeAnalytics on — you get every recent sale and a min/max/average/median summary with a recommended list price.
  • Keep Residential proxy on (the default). eBay blocks datacenter IPs, so datacenter runs will return little or nothing.
  • Narrow with condition, priceMin/Max, listingType and categoryId to get cleaner comps and avoid unrelated items.
  • Turn on enrichItemDetails only when you need brand/MPN/GTIN/ratings/photos/seller — it adds one request per item.
  • Use a distinct monitorKey per saved search so each watch keeps its own memory.

FAQ

  • Does it need my eBay login or an API key? No. It reads eBay's public pages — no account, cookies or developer key.
  • Can I get sold prices? Yes — that's the headline feature. Use Sold mode for real completed-listing prices with the sold date, plus optional analytics.
  • Why residential proxy? eBay returns HTTP 403 to datacenter IPs. Residential proxy (the default) is required for reliable results.
  • Which marketplaces? US, UK, DE, AU, CA, FR, IT, ES, NL and IE — set with the marketplace input; prices use the local currency.
  • How do I get seller contact details? Use Seller mode or emitSellerLeads — eBay masks email/phone, so leads carry the seller's username, feedback, items sold, location and a lead score.
  • Are there exports? Yes — JSON, CSV, Excel, XML and RSS, plus the API and 5,000+ integrations.
  • Is this legal? It collects publicly available marketplace and business listings only — no private personal data.

Need help?

Open an issue on the actor's Issues tab, or visit the Apify help center. Feature requests are welcome — this actor is actively maintained.