# Vinted Price Checker — Market Price & Demand Stats (`jpmarketdata/vinted-price-checker`) Actor

Get instant price statistics (median, average, range) plus favourite-count demand signals for any search on Vinted. One call answers: what is this item going for on Vinted?

- **URL**: https://apify.com/jpmarketdata/vinted-price-checker.md
- **Developed by:** [h ichi](https://apify.com/jpmarketdata) (community)
- **Categories:** E-commerce
- **Stats:** 2 total users, 1 monthly users, 71.4% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $20.00 / 1,000 keyword price analyses

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

## Vinted Price Checker — Market Price & Demand Stats

**Market stats + full listings in one call.** Search any keyword on the Vinted market of your choice and get back **every sampled listing** — title, price, brand, size, condition, favourite count, photo, direct vinted URL — plus a ready-to-use price summary (median, average, quartiles, range) and a **demand-heat signal** (favourite-count statistics).

**Try it free in 30 seconds:** hit *Start* with the prefilled example — a run costs cents and is covered many times over by the **$5 free usage credit** every Apify account gets each month.

### Getting the full listings

Turn on **Include individual listings** (`includeIndividualItems`) and every sampled listing is pushed to the dataset as clean JSON:

```json
{
    "keywords": ["leica m6", "carhartt detroit jacket"],
    "domain": "fr",
    "maxItemsPerKeyword": 120,
    "includeIndividualItems": true,
    "convertToUsd": true
}
```

Each listing record looks like this:

```json
{
    "type": "item",
    "id": 4839021156,
    "title": "Leica M6 classic 0.72 black",
    "price": 1890.0,
    "currency": "EUR",
    "priceUsd": 2053.4,
    "brand": "Leica",
    "size": null,
    "condition": "Very good",
    "favouriteCount": 23,
    "url": "https://www.vinted.fr/items/4839021156-leica-m6",
    "thumbnail": "https://images1.vinted.net/..."
}
```

**Cost example:** 1 keyword × 120 listings = **$0.02 (summary) + 120 × $0.002 = $0.26**. Leave the switch off and a run costs a flat $0.02 per keyword (summary only).

### Pricing — know your cost before you run

No subscription, no monthly rental — you pay per call:

| Event | Price |
|---|---|
| Price summary (one per keyword) | **$0.02** |
| Individual listing record | $0.002 each |

- Keywords with zero results are never charged.
- Apify's free plan includes **$5 of usage credit every month** — that covers e.g. ~19 full-listing runs (120 listings each) or ~250 summary-only checks at no cost. Most scrapers rent by the month; here you pay cents per search.

### Why this Actor?

Vinted is Europe's biggest second-hand fashion marketplace (and growing fast in the US). Whether you resell, source cross-border, or price your own wardrobe:

- **Get the listings as data** — titles, prices, brands, sizes, conditions, favourites, URLs in one structured payload instead of scrolling the app
- **Price before you list or buy** — median and quartiles from real live listings
- **Spot cross-market gaps** — compare vinted.fr vs vinted.com vs vinted.co.uk prices (USD conversion included)
- **Read demand, not just supply** — favourite-count stats show what actually attracts buyers
- **Feed your AI agent or spreadsheet** — clean JSON

### Price summary output

One `price_summary` record per keyword (always included):

```json
{
    "type": "price_summary",
    "keyword": "leica m6",
    "domain": "vinted.fr",
    "status": "on_sale",
    "totalListingsFound": 151,
    "sampledListings": 120,
    "currency": "EUR",
    "price": { "min": 45, "p25": 320, "median": 1150, "p75": 1890, "max": 3500, "average": 1214 },
    "priceUsd": { "min": 48.9, "p25": 347.7, "median": 1249.5, "p75": 2053.4, "max": 3803.5, "average": 1319.1 },
    "favouriteCountStats": { "min": 0, "p25": 1, "median": 4, "p75": 11, "max": 87, "average": 8 },
    "checkedAt": "2026-07-03T12:00:00+00:00"
}
```

Note: Vinted search returns **live listings only**, so statistics reflect asking prices. Favourite counts are your demand signal.

### Use with AI agents

Works out of the box with the [Apify MCP server](https://mcp.apify.com), so Claude, ChatGPT, and other MCP-enabled agents can pull Vinted listings and market prices autonomously — for example inside a sourcing, repricing, or arbitrage workflow.

### Fair use & data

- Reads only **publicly visible listing data** — no login, no seller personal data
- Requests are throttled to keep the load on Vinted negligible
- Not affiliated with Vinted. Data is provided for market research; verify before large transactions

### Roadmap

Sold-listing detection, brand/size filters, and multi-market comparison in one call. Feedback via issues is very welcome — tell me what your workflow needs.

# Actor input Schema

## `keywords` (type: `array`):

One or more search queries (e.g. 'leica m6', 'nike dunk low', 'carhartt jacket'). Each keyword gets its own price summary.

## `domain` (type: `string`):

Which national Vinted marketplace to search. The market decides the listings and the currency (com = USD, fr/de/es/it/nl = EUR, co.uk = GBP, pl = PLN).

## `maxItemsPerKeyword` (type: `integer`):

How many listings to sample per keyword. 96 = one result page. More items = better statistics. Affects cost only when 'Include individual listings' is enabled (+$0.002 per listing).

## `priceMin` (type: `integer`):

Optional lower price bound (in the market's currency). Useful to exclude junk listings from the statistics.

## `priceMax` (type: `integer`):

Optional upper price bound (in the market's currency).

## `includeIndividualItems` (type: `boolean`):

Off by default: a run costs a flat $0.02 per keyword (price summary only). Enable to also get every sampled listing (title, price, brand, size, condition, favourites, URL, photo) at +$0.002 per listing.

## `convertToUsd` (type: `boolean`):

Adds USD prices next to the native currency using the current exchange rate (open.er-api.com).

## Actor input object example

```json
{
  "keywords": [
    "leica m6"
  ],
  "domain": "com",
  "maxItemsPerKeyword": 120,
  "includeIndividualItems": false,
  "convertToUsd": true
}
```

# 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 = {
    "keywords": [
        "leica m6"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("jpmarketdata/vinted-price-checker").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 = { "keywords": ["leica m6"] }

# Run the Actor and wait for it to finish
run = client.actor("jpmarketdata/vinted-price-checker").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 '{
  "keywords": [
    "leica m6"
  ]
}' |
apify call jpmarketdata/vinted-price-checker --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/acts/dcj5XzQ6S1bDNa2uF/builds/vSPlMzNA86dITkkGO/openapi.json
