# eBay Sold Price Intelligence — Market Value & Demand Analyzer (`crawloop/ebay-sold-price-intelligence`) Actor

Analyze real eBay sold prices, recommended listing price, demand level, sales activity, and condition-based price insights across 20+ marketplaces. CSV and Markdown report included.

- **URL**: https://apify.com/crawloop/ebay-sold-price-intelligence.md
- **Developed by:** [Andrej Kiva](https://apify.com/crawloop) (community)
- **Categories:** E-commerce, Automation, Developer tools
- **Stats:** 2 total users, 1 monthly users, 0.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $4.00 / 1,000 analyzed sold listings

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

## eBay Sold Price Intelligence — Market Value & Demand Analyzer

> **Disclaimer:** Unofficial integration for publicly accessible eBay completed (sold) listings. **eBay** and related names are trademarks of eBay Inc. Not affiliated with, sponsored by, or endorsed by eBay Inc.

Get **eBay pricing intelligence** from real completed sales — not active asking prices. Enter a product keyword and receive **recommended listing price**, **median sold price**, **demand level**, **sales activity**, **confidence score**, condition breakdown, auction vs Buy It Now comparison, plus **CSV** and **Markdown report** exports.

Built for **eBay resellers**, **collectors**, **estate sale sellers**, **consignment shops**, **arbitrage sellers**, and **pricing analysts** who need **market value** and **sold price comps** across **20+ eBay marketplaces**.

> **Crawloop eBay E-commerce & Resale Suite** — live active listings, completed sold comps, and pricing intelligence.

| Active listings | Sold listings | Pricing intelligence |
| :--- | :--- | :--- |
| [eBay Active Listings Scraper](https://apify.com/crawloop/ebay-active-listings-scraper) | [eBay Sold Listings Scraper](https://apify.com/crawloop/ebay-sold-listings-scraper) | **eBay Sold Price Intelligence** ◄── you are here |
| Live listings, BIN/auction, watchers, competition | Completed sales, raw sold rows, sold dates | Recommended price, demand score, CSV/report |

### Who this Actor is for

- **eBay resellers** — set list prices from real sold comps before you publish
- **Collectors** — verify fair market value for cards, watches, sneakers, and vintage goods
- **Estate sale & consignment sellers** — batch-price inventory with one keyword list
- **Arbitrage & sourcing** — compare sold prices before buying inventory to flip
- **Small ecommerce sellers** — competitive pricing backed by completed transactions
- **Market researchers** — demand signals, price bands, and structured exports

### Key features

- **Real eBay sold prices** from completed listings (not live ask prices)
- **Recommended listing price** from median sold price with demand-aware adjustment
- **Median & average sold price** with min/max and **10th–90th percentile range**
- **Demand level** and **sales activity** from completed sales volume
- **Confidence score** based on sample size
- **Condition breakdown** — new, used, refurbished median/average
- **Auction vs Buy It Now** price comparison
- **CSV export** (`sold_items.csv`) and **Markdown report** (`REPORT.md`)
- **Batch keyword support** — multiple products in one run
- **20+ eBay marketplaces** — US, UK, DE, FR, IT, ES, CA, AU, PL, NL, SG, MY, PH, HK

### What makes it different

| | Sold Price Intelligence | Raw sold scrapers |
| :--- | :--- | :--- |
| Output | Summary + analytics + report | Raw rows only |
| Recommended price | Yes | No |
| Demand & activity | Yes | No |
| Confidence scoring | Yes | No |
| Marketplaces | **20+ sites** | Varies |

For raw sold rows only, use [eBay Sold Listings Scraper](https://apify.com/crawloop/ebay-sold-listings-scraper). For live competition data, use [eBay Active Listings Scraper](https://apify.com/crawloop/ebay-active-listings-scraper).

### Input examples

#### Single query

```json
{
  "query": "iPhone 13 Pro 128GB",
  "ebaySite": "ebay.de",
  "soldWithinDays": 90,
  "maxItems": 100
}
```

#### Batch queries

```json
{
  "queries": ["iPhone 13 Pro 128GB", "PlayStation 5", "Siemens 6ES7214"],
  "ebaySite": "ebay.de",
  "maxItemsPerQuery": 100
}
```

#### Full options

```json
{
  "query": "iPhone 13 Pro 128GB",
  "ebaySite": "ebay.de",
  "soldWithinDays": 90,
  "maxItems": 100,
  "condition": ["new", "used"],
  "listingType": ["auction", "buy_it_now"],
  "priceMin": 100,
  "priceMax": 800,
  "categoryId": "9355",
  "sortBy": "date_desc",
  "includeItems": true,
  "includeAnalytics": true,
  "outputFormat": "full"
}
```

Provide either `query` (single) or `queries` (batch) — not both.

### Output examples

#### Summary record

```json
{
  "type": "summary",
  "query": "iPhone 13 Pro 128GB",
  "marketplace": "ebay.de",
  "currency": "EUR",
  "summary": {
    "recommendedPrice": { "amount": 499, "display": "€499.00", "currency": "EUR" },
    "priceRange": {
      "low": { "amount": 425, "display": "€425.00", "currency": "EUR" },
      "high": { "amount": 575, "display": "€575.00", "currency": "EUR" }
    },
    "medianSoldPrice": { "amount": 495, "display": "€495.00", "currency": "EUR" },
    "salesActivity": "high",
    "demandLevel": "high",
    "confidence": "medium",
    "quickTake": "iPhone 13 Pro 128GB sells actively on ebay.de..."
  }
}
```

#### Key-value store files

| File | Contents |
| :--- | :--- |
| `OUTPUT.json` | Summaries + items in one JSON document |
| `REPORT.md` | Human-readable pricing report |
| `sold_items.csv` | Spreadsheet export |

### Understanding analytics

#### Recommended price

Median cleaned sold price (item + shipping when available), adjusted slightly for high or low demand. Transparent statistics — no machine learning.

#### Demand level

- **High** — 5+ completed sales per day in your window
- **Medium** — 1–5 sales/day
- **Low** — fewer than 1 sale/day

#### Sales activity

Finer market volume score (`very_high` → `very_low`). We do **not** show days-to-sell — that data is not reliably available from search results.

#### Confidence

- **High** — 100+ sold items
- **Medium** — 30–99
- **Low** — 10–29
- **Very low** — under 10 (directional only)

### Supported eBay marketplaces

**20+ regional sites:** `ebay.com` · `ebay.co.uk` · `ebay.de` · `ebay.fr` · `ebay.it` · `ebay.es` · `ebay.ca` · `ebay.com.au` · `ebay.at` · `ebay.ch` · `ebay.ie` · `ebay.pl` · `ebay.nl` · `ebay.be` · `ebay.com.sg` · `ebay.com.my` · `ebay.ph` · `ebay.com.hk`

### Use cases

| Use case | What you get |
| :--- | :--- |
| **Reseller list pricing** | Recommended price from real sold comps |
| **Arbitrage / sourcing** | Median, percentiles, and demand before you buy |
| **Estate & consignment** | Batch keyword pricing with CSV + Markdown report |
| **Collector valuation** | Fair market value bands by condition |
| **Market research** | Demand level, sales activity, confidence score |
| **AI / MCP workflows** | Run via Apify API, clients, or MCP and summarize pricing |

### Integration examples

#### Node.js

```javascript
import { ApifyClient } from 'apify-client';

const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('crawloop/ebay-sold-price-intelligence').call({
  query: 'iPhone 13 Pro 128GB',
  ebaySite: 'ebay.com',
  soldWithinDays: 90,
  maxItems: 100,
  includeAnalytics: true,
  outputFormat: 'full',
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items.filter((row) => row.type === 'summary'));
```

#### Python

```python
from apify_client import ApifyClient

client = ApifyClient(token)
run = client.actor("crawloop/ebay-sold-price-intelligence").call(
    run_input={
        "queries": ["iPhone 13 Pro 128GB", "PlayStation 5"],
        "ebaySite": "ebay.de",
        "maxItemsPerQuery": 100,
        "includeAnalytics": True,
        "outputFormat": "full",
    }
)
items = list(client.dataset(run["defaultDatasetId"]).iterate_items())
print([row for row in items if row.get("type") == "summary"])
```

#### cURL

```bash
curl "https://api.apify.com/v2/acts/crawloop~ebay-sold-price-intelligence/runs?token=$APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "query": "iPhone 13 Pro 128GB",
    "ebaySite": "ebay.com",
    "soldWithinDays": 90,
    "maxItems": 100,
    "includeAnalytics": true,
    "outputFormat": "full"
  }'
```

### MCP and AI assistants

Use this Actor from AI tools via [Apify MCP](https://docs.apify.com/platform/integrations/mcp). Connect your Apify account, then call `crawloop/ebay-sold-price-intelligence`.

Example prompts:

- "Run eBay Sold Price Intelligence for iPhone 13 Pro 128GB on ebay.com and return recommendedPrice, medianSoldPrice, and demandLevel"
- "Analyze sold prices for PlayStation 5 on ebay.de over 90 days and summarize the price range and confidence"
- "Chain eBay Sold Listings Scraper then eBay Sold Price Intelligence for rtx 4080 and explain the recommended list price"

### Suite next step

Need raw sold rows for your own models? Use [eBay Sold Listings Scraper](https://apify.com/crawloop/ebay-sold-listings-scraper). Want live ask prices and watchers before you list? Use [eBay Active Listings Scraper](https://apify.com/crawloop/ebay-active-listings-scraper).

### Limitations

- Data from **eBay completed/sold search results**, not the official eBay API
- Results depend on search quality and available sales volume
- No days-to-sell or market velocity metrics
- No multi-currency conversion — prices use each marketplace's local currency
- Residential proxies recommended when eBay shows bot challenges

### FAQ

**How is this different from the Sold Listings Scraper?**
This Actor adds pricing intelligence — recommended price, demand, confidence, and reports. [eBay Sold Listings Scraper](https://apify.com/crawloop/ebay-sold-listings-scraper) exports raw sold rows for custom pipelines.

**How is this different from the Active Listings Scraper?**
[eBay Active Listings Scraper](https://apify.com/crawloop/ebay-active-listings-scraper) returns live listings with current ask prices and competition signals. This Actor analyzes **completed sales** only.

**Does it use AI?**
No. Rule-based statistics and transparent percentiles only.

**Batch mode?**
Yes — use `queries` for multiple keywords; you get one summary per query plus `batch_summary`.

**Output formats?**
`full` (default), `summary_only`, or `items_only`.

### Related Actors

| Actor | Use for |
| :--- | :--- |
| [eBay Active Listings Scraper](https://apify.com/crawloop/ebay-active-listings-scraper) | Live ask prices, watchers, competition |
| [eBay Sold Listings Scraper](https://apify.com/crawloop/ebay-sold-listings-scraper) | Raw completed sales / sold comps |
| **eBay Sold Price Intelligence** ◄── you are here | Recommended price, demand, CSV/report |

# Actor input Schema

## `query` (type: `string`):

Single product search term, e.g. iPhone 13 Pro 128GB. Use either query or queries, not both.

## `queries` (type: `array`):

Multiple search terms for batch pricing analysis. Overrides query when both are set (will error if both provided).

## `ebaySite` (type: `string`):

Regional eBay domain — supports 20+ marketplaces including ebay.com, ebay.co.uk, ebay.de, ebay.fr, and more.

## `soldWithinDays` (type: `integer`):

Analyze completed sales from the last N days (1–90).

## `maxItems` (type: `integer`):

Maximum sold listings to analyze for a single query.

## `maxItemsPerQuery` (type: `integer`):

Maximum sold listings to analyze per query in batch mode.

## `condition` (type: `array`):

Filter by item condition: new, used, refurbished. Leave empty for all conditions.

## `listingType` (type: `array`):

Filter by listing format: auction, buy\_it\_now, best\_offer. Leave empty for all types.

## `priceMin` (type: `number`):

Minimum sold price filter in marketplace currency.

## `priceMax` (type: `number`):

Maximum sold price filter in marketplace currency.

## `categoryId` (type: `string`):

eBay category filter (use 0 for all categories).

## `sortBy` (type: `string`):

How to sort sold search results.

## `includeItems` (type: `boolean`):

Push individual sold listing records to the dataset and CSV export.

## `includeAnalytics` (type: `boolean`):

Include detailed analytics (percentiles, condition breakdown, listing type comparison) in summary records.

## `outputFormat` (type: `string`):

full = summaries + items + all KV files; summary\_only = summaries + report; items\_only = items + CSV.

## `excludeSellers` (type: `array`):

Seller usernames to exclude from analysis.

## `proxyConfiguration` (type: `object`):

Apify Residential Proxies recommended for reliable eBay access.

## Actor input object example

```json
{
  "query": "iPhone 13 Pro 128GB",
  "queries": [
    "iPhone 13 Pro 128GB",
    "PlayStation 5"
  ],
  "ebaySite": "ebay.com",
  "soldWithinDays": 90,
  "maxItems": 100,
  "maxItemsPerQuery": 100,
  "categoryId": "0",
  "sortBy": "date_desc",
  "includeItems": true,
  "includeAnalytics": true,
  "outputFormat": "full",
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ],
    "apifyProxyCountry": "US"
  }
}
```

# Actor output Schema

## `results` (type: `string`):

Default dataset items (summaries and sold listings).

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "query": "iPhone 13 Pro 128GB",
    "queries": [
        "iPhone 13 Pro 128GB",
        "PlayStation 5"
    ],
    "proxyConfiguration": {
        "useApifyProxy": true,
        "apifyProxyGroups": [
            "RESIDENTIAL"
        ],
        "apifyProxyCountry": "US"
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("crawloop/ebay-sold-price-intelligence").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "query": "iPhone 13 Pro 128GB",
    "queries": [
        "iPhone 13 Pro 128GB",
        "PlayStation 5",
    ],
    "proxyConfiguration": {
        "useApifyProxy": True,
        "apifyProxyGroups": ["RESIDENTIAL"],
        "apifyProxyCountry": "US",
    },
}

# Run the Actor and wait for it to finish
run = client.actor("crawloop/ebay-sold-price-intelligence").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "query": "iPhone 13 Pro 128GB",
  "queries": [
    "iPhone 13 Pro 128GB",
    "PlayStation 5"
  ],
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ],
    "apifyProxyCountry": "US"
  }
}' |
apify call crawloop/ebay-sold-price-intelligence --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=crawloop/ebay-sold-price-intelligence",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/akTK3C6CF4dCNQnCj/builds/KJP85zMVAd43SparE/openapi.json
