Vinted Scraper — Prices, Fees, Demand & Changes
Pricing
from $1.50 / 1,000 item-scrapeds
Vinted Scraper — Prices, Fees, Demand & Changes
Scrape Vinted across 12 country sites: brand, size, condition, photos, favourites. Price split into asking price, buyer-protection fee and real total. Reports what changed since your last run.
Pricing
from $1.50 / 1,000 item-scrapeds
Rating
0.0
(0)
Developer
Daniel
Maintained by CommunityActor stats
1
Bookmarked
2
Total users
1
Monthly active users
5 days ago
Last modified
Categories
Share
Vinted Scraper — Prices, Fees & Demand
Scrape Vinted listings across any of its twelve country marketplaces: brand, size, condition, photos, favourites, and a price broken into what the seller asks and what a buyer actually pays.
The number most Vinted exports get wrong
Vinted adds a buyer-protection fee on top of every asking price. An export with a single price field is reporting the seller's number, not the buyer's — and the two are not close.
In our own test run on vinted.co.uk, the median asking price for "nike trainers" was £25.00 and the median fee was 7.8% on top. Price a listing against the asking-price column and you are consistently undercutting yourself by that margin, or misreading what your competition really costs.
This Actor returns all three: price, serviceFee and totalPrice, and they reconcile on every row.
What you get
Per item — title, brand, size, condition, asking price, buyer-protection fee, total price, currency, favourite count, promoted flag, photo URLs, direct link.
Market position — each item's price percentile and distance from the median, both on the asking price and on the total, plus a market summary with median, quartiles, brand breakdown and condition breakdown.
What changed since your last run — price moves in currency and percent, new favourites, and a new / changed / unchanged status. Items that disappeared between runs are counted as soldOrRemoved, which for a marketplace is the closest available read on what is actually selling.
Demand velocity — favourites gained per day. Vinted exposes no sales data, so this is the honest proxy: how fast an item is being saved by buyers. It appears from the second run onwards.
Sample output
{"itemId": "9617839240","title": "Air max 95s","brand": "Nike","size": "5","condition": "Very good","price": 25,"serviceFee": 2.05,"totalPrice": 27.05,"currency": "GBP","favouriteCount": 12,"isPromoted": false,"photoCount": 4,"pricePercentile": 42.7,"priceVsMarketMedianPct": -12.5,"status": "changed","priceChange": -2,"priceChangePct": -8,"favouriteCountChange": 14,"daysSincePreviousRun": 7,"favouriteVelocityPerDay": 2,"demandBasis": "run_delta","market": {"itemCount": 96,"priceMedian": 25,"priceP25": 15,"priceP75": 34.99,"avgFavourites": 13.83,"soldOrRemoved": 8,"newListings": 11},"url": "https://www.vinted.co.uk/items/9617839240"}
Who uses this
- Resellers — price against the live market instead of guessing, and see which items are gaining favourites before you buy stock.
- Brand and trend analysts — secondhand pricing by brand, size and condition, tracked over time.
- Developers and data teams — a clean per-item feed with no scraping infrastructure to maintain.
Input
| Field | Default | Notes |
|---|---|---|
searchText | nike trainers | What you would type into Vinted's search box. |
domain | vinted.co.uk | Twelve country marketplaces; each has its own inventory and currency. |
maxItems | 96 | Caps results and cost. Ceiling is 960 per search. |
priceFrom / priceTo | none | Optional bounds in the site's currency. |
brandIds | none | Optional Vinted brand IDs, taken from the brand filter URL. |
order | relevance | Relevance, newest, or price ascending/descending. |
trackChanges | true | Stores a snapshot so the next run reports what moved. |
The defaults run as-is and return a usable UK market scan without editing anything.
Pricing
Pay per event, $1.50 per 1,000 items. A 96-item scan costs $0.14.
Market percentiles, change tracking and demand velocity are included. You pay per item and for nothing else.
Change tracking
Snapshots are keyed by the exact search: term, country site, brand filter and price bounds together. Run the same configuration again and you get the deltas. Change any of it and you are asking a different question, so comparison restarts.
Run it weekly against the same query and you accumulate a price and demand history for your niche instead of a series of disconnected exports.
Limits, stated plainly
- 960 items per search, maximum. Vinted serves 96 per page and stops paginating at 10 pages. That is its own ceiling, not one added here. To go deeper, split the search — by brand, by price band, or by a narrower term.
soldOrRemovedcounts disappearance, not sales. An item can leave the results because it sold, because the seller delisted it, or because it fell out of the ranking for your query. Treat it as a signal, not a receipt.- Favourite velocity needs two runs at least a day apart. Below that a single new favourite would imply dozens per day, so the field stays null with
demandBasis: "insufficient_history". view_countis not returned. Vinted's catalog endpoint reports it as zero on every row; it only exists on the item page. A field that always reads zero is worse than an absent one.
Data and privacy
This Actor returns no personal data. Seller usernames, IDs, avatars and profile links are dropped before anything is written, deliberately. What comes back describes an item for sale: brand, size, condition, price, photos and how many people saved it.
It reads Vinted's own public catalog endpoint — the same one the website's search page uses — logged out. No account, no login, no bypassed restriction.
FAQ
Which country should I choose? The one you trade in. Inventory and pricing differ substantially between marketplaces; a UK scan tells you little about the German market.
Can I run it on a schedule? Yes, and it is built for it. Use Apify Schedules with the same input and each run reports what changed since the last.
Why is favouriteVelocityPerDay empty?
Either this is the first run for that search, or the previous run was under a day ago. Both are stated in demandBasis.
Do I need a proxy? No. Proxy is optional and automatic by default. If it is unavailable the run continues rather than failing.