eBay Sold Items Scraper: Sold Prices, Comps & Sell-Through avatar

eBay Sold Items Scraper: Sold Prices, Comps & Sell-Through

Pricing

from $2.25 / 1,000 sold listings

Go to Apify Store
eBay Sold Items Scraper: Sold Prices, Comps & Sell-Through

eBay Sold Items Scraper: Sold Prices, Comps & Sell-Through

⚡🔥 BLAZING-FAST eBay sold-price scraper — every real sold price for any keyword in seconds. See what items really sell for, not asking prices, and price every flip right. Median & avg · sneakers, cards, electronics, any category · 8 marketplaces · newest-first.

Pricing

from $2.25 / 1,000 sold listings

Rating

0.0

(0)

Developer

Yakugusa Yumitori

Yakugusa Yumitori

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

1

Monthly active users

3 days ago

Last modified

Share

The fastest eBay sold-price scraper on the market. Pull the entire sold history — eBay sold & completed listings, the real prices items actually closed at, not asking prices — for any keyword, with built-in median / average / percentile stats, across 8 eBay marketplaces. No API key, no browser, no captcha. Paste keywords, get the whole market back in seconds.

Proof: eBay Sold Items Scraper pulled 247,798 sold listings in 1 minute 3 seconds — the Apify run detail showing "Succeeded, 247,798 results" and a 1m3s runtime, with the clean sold-listings table below (photo, title, sold price, shipping, sold date, keyword, item ID, eBay link)

247,798 sold listings in 1 minute 3 seconds. A real run — that's the whole market for one term, pulled faster and deeper than any other eBay scraper. Most stop at 12,000; this didn't slow down.

A full-market example (copy-paste to try it):

{
"queries": ["playstation 5"],
"categories": ["139973", "139971", "54968"],
"maxComps": 250000,
"marketplace": "US",
"days": 90
}

🚨 🆓 Free plan: runs are capped at 500 sold listings per keyword and 3 keywords per run — plenty to try it out. Any paid Apify plan unlocks the full market (up to 250,000 per keyword) and lower per-result pricing. 🚨


Why it's the fastest — and why that matters

  • 🏆 Real SOLD prices, not asking prices. eBay completed listings — what buyers actually paid — the only number that matters for pricing, flipping, or valuation.
  • 🌊 The whole market, not a 12k sample. Other scrapers hit eBay's ~12,000 web cap and stop. This pulls the entire sold history for a term — tens of thousands of comps, up to 250,000+ across categories.
  • Seconds, not minutes. ~4,000 sold listings per second. A full-market pull that takes competitors ages finishes here in about a minute.
  • 📊 Stats done for you. Every run saves a price summary (median, average, min/max and p25/p75 per keyword) to the run's storage — best-offer-accepted sales excluded so your comps aren't skewed. No spreadsheet math.
  • 🎯 On-topic by default. Each keyword auto-scopes to its real eBay category, so "playstation 5" returns actual PS5 consoles — not $5 games that skew the median.
  • 🕒 Newest-sold first, any window. Filter to the last 7 days, 30 days, 90 days… results always come freshest-first.
  • 🌍 8 marketplaces — US · UK · DE · FR · IT · ES · CA · AU.
  • 🔓 Zero friction — no eBay API key, no login, no browser, no captcha. Just structured data.

Just ask — no fields to fill

Not sure which keyword, marketplace, or date range to set? Don't. Type your question the way you'd say it in the "Ask in plain English" box and the actor works out the rest — the item, the eBay site, the time window and the condition — then pulls the sold prices.

You ask…It runs…
"how much do used AirPods Pro 2 sell for in the UK last 30 days"airpods pro 2 · used · UK · 30 days
"sealed pokemon booster box prices this year"pokemon booster box · new · 90-day+ window
"compare iphone 15 pro on US vs UK"iphone 15 pro on both US and UK — side-by-side, each row tagged by marketplace
"iphone 15 vs samsung s24 sold prices"both items in one run
"charizard ex 201/165 psa 10"the card plus its per-grade Price Guide (see below)

It handles comparisons across sites, multiple items at once, and condition/timeframe — all from one sentence. Prefer the classic way? Leave the box empty and use the keyword fields as normal.

🃏 Graded cards — per-grade Price Guide, automatically

Search a graded trading card and you get more than raw comps: the run also returns eBay's per-grade Price Guide — the value at each grade (PSA 10 / 9 / 8, BGS, CGC) with how many have sold — so a PSA 10 isn't blended into the same median as a raw copy. It's auto-detected: search a normal product (a phone, a pair of sneakers) and none of this appears — it only shows up for cards that actually have a grade guide. Examples that trigger it: charizard ex 201/165, 2020 pokemon pikachu vmax psa 10, michael jordan psa 9.

What you get

Every sold listing comes back as a clean row:

FieldDescription
titleListing title
priceFinal sold price (what it actually closed at)
shippingShipping shown (Free / $14.95)
sold_dateDate sold (newest first)
image_urlItem photo
item_ideBay item / listing ID
item_urlDirect eBay link
queryThe keyword that returned it

Want richer per-listing detail? Turn on Enrich with item details ("enrichDetails": true) to attach condition, item specifics (size · storage · brand · model) and seller + feedback score to the newest listings. It runs on the same fast endpoint (no browser, no proxy) and lands in a separate "🔎 With details" output tab, so your main results stay clean.

The "With details" output tab — each sold iPhone 15 Pro row now shows condition (Very Good – Refurbished, Excellent – Refurbished…), the seller and their feedback score (evalueexpo · 99.6), and a full item-specifics list per listing: Storage, Battery Capacity 3274 mAh, Display Technology OLED, Pixel Density 461 ppi, Release Date, Camera Resolution and more

⏱️ Heads-up on speed: enrichment makes a few extra lookups per listing, so a run with this toggle on won't be as fast as the core sold-only pull (which stays blazing). Leave it off for maximum speed; turn it on only when you need condition, specifics and seller detail.

Sample row:

{
"query": "jordan 1 chicago",
"title": "Nike Air Jordan 1 Retro High OG Chicago Lost & Found Size 10",
"price": 194.99,
"shipping": "$14.95",
"sold_date": "2026-08-27",
"item_id": "206518842971",
"item_url": "https://www.ebay.com/itm/206518842971"
}

With Enrich on, each row also carries condition, seller + feedback score, and an item_specifics list (brand, model, storage, size…). Output lands in a native sortable table with one-click CSV / JSON export.

Use cases

🔔 Power a real-time deal-alert bot (Discord / Slack / Telegram)

Feed sold-comp data into a bot that doesn't just alert — it tells members if it's a deal. Pair every new listing with what the item actually sells for: the sold median, how many comps back it, and the profit / ROI after shipping. That's the difference between spam and a bot people pay for.

eBay deal-alert Discord bot powered by this actor — MarketBot posts a listing at $18.18 + $3.50 shipping with a verdict line "Usually sells $214 median (30 comps) · 58% sell-through · seller 99.7% (530)" and a green "~$96 profit / 88% ROI" bar, plus a View on eBay button, in a #listing-alerts channel for a reseller community

A "new listing" ping is noise. "$18.18 — usually sells $214 median (30 comps) · ~$96 profit / 88% ROI" is a reason to buy. Only real sold-price data produces that verdict — and you get all of it here: the full sold history per keyword, with the built-in median and the individual comps behind it, so your bot can compute the profit/ROI on any incoming listing.

💰 Price a listing before you post it

Pull the full sold history for your exact item, read the built-in median / p25 / p75, and list at a price that actually moves.

📈 eBay market research before you buy inventory

See how many really sold, the price trend, and how fast it's turning over — so you buy what sells, not what sits.

🃏 Trading-card & collectible valuation

Sold comps for any card by set, grade or player — turn raw prices into a real, defensible valuation.

🗄️ Feed repricers, dashboards & pricing models

Export clean JSON/CSV (with item_id, links, dates) into your own repricer, inventory system, or BI dashboard via the Apify API.

Input

FieldWhat it does
Ask in plain English (ask)Optional. Type a question — "how much do used AirPods Pro 2 sell for in the UK" — and it fills in the keyword, marketplace, recency and condition for you. Leave empty to use the fields below.
Keywords (queries)1–50 search terms, one per line. You get every sold listing for each.
Marketplace (marketplace)US · GB · DE · FR · IT · ES · CA · AU.
Categories (categories)Optional. Leave empty to auto-scope per keyword. Pick one or more to control or broaden the scope.
Custom category IDs (categoryIdsCustom)Paste any eBay category IDs from the lookup tool (below).
Max sold listings (maxComps)Per keyword — up to 250,000 for the full history.
Recency (days)Only items sold in the last 7 / 30 / 90 days … (default 90). Newest-first.
{
"queries": ["jordan 1 chicago", "pokemon booster box"],
"marketplace": "US",
"maxComps": 5000,
"days": 30
}

🕒 Filter to recent sales. The "Only items sold in the last…" dropdown pulls just the last 7 / 14 / 30 / 60 / 90 days (up to 12 months) — perfect for "what's it selling for right now?" vs. a longer trend. Every run comes back newest-sold first, so the freshest comps are always on top.

Category scoping — and a free lookup tool

By default the actor auto-scopes each keyword to its most-relevant eBay category, so your comps stay on-topic and your median stays accurate. To take control — or to broaden a search across related categories for maximum volume — add category IDs.

🔎 Find any eBay category ID here: ebay-categories.pages.dev — search all 20,000+ eBay categories by product or brand (lego, pokemon, iphone…), select multiple, copy, and paste straight into Custom category IDs.

Example: leave categories empty → "playstation 5" returns real PS5 consoles (~$145 median). Add Consoles + Video Games + Accessories → the entire 250k-listing PS5 market (median blends in cheaper games — your call).

Integrations & automation

  • Apify API — trigger runs and pull the dataset as JSON/CSV from anywhere.
  • Schedule it hourly/daily to keep a rolling price history or feed alert bots.
  • Webhooks — fire your own pipeline the moment a run finishes.

Pricing

Pay-per-result — you only pay for the sold listings you actually get, and full-market pulls finish in about a minute. No monthly eBay-research subscription, no per-seat fees.

FAQ

Does this return sold prices or asking prices? Real sold prices — completed transactions with sold dates.

Is this the same as eBay's completed / sold listings filter? It's the full version of it. eBay's own completed listings view is capped and login-gated; this pulls the entire sold history for a keyword — tens of thousands of completed listings with prices and dates — no account needed.

How do I see what something sold for on eBay? Enter the item as a keyword and run it — you get every recent sold listing with the exact price it closed at, plus the median across all comps. That's the answer to "how much did it actually sell for?" in seconds.

Can I get eBay price history for an item? Yes — set the recency window (7 / 30 / 90 days, up to 12 months) and you get a full price history of closing prices over that period, newest-sold first, with the median and range.

How many sold listings can I get per keyword? Up to 250,000 — far past eBay's own ~12,000 web cap. For most keywords that's the entire sold history.

How fast is a run? Very. A typical keyword returns in 2–8 seconds; a full-market pull of ~250,000 listings finishes in about a minute (247,798 in 1m3s in the screenshot above — roughly 4,000 sold listings per second).

Which eBay sites are supported? US, UK, Germany, France, Italy, Spain, Canada and Australia.

Do I need an eBay API key or account? No. No API key, no login, no browser, no captcha — just enter keywords and run.

Is this a cheaper alternative to eBay's paid research tools? Yes — you get the same sold-market research (volume, average price, trend) plus the individual sold listings behind it, pay-as-you-go, with no eBay account.

How do I stop a broad keyword returning junk? It auto-scopes to the right category by default. To force a specific one, look up the category ID at ebay-categories.pages.dev and add it.

Does it work for trading cards, sneakers, electronics…? Any category. Search by product or brand; the actor scopes to the correct eBay category automatically.

Can I get richer detail per listing? Yes — turn on Enrich with item details ("enrichDetails": true) to add condition, item specifics (size/storage/brand) and seller + feedback to the newest listings, shown in a separate "🔎 With details" tab. Same fast endpoint, no browser or proxy.

This actor collects publicly available eBay listing data for price research and market analysis. Use it responsibly and in line with eBay's terms and applicable law. Not affiliated with or endorsed by eBay Inc.