For the past month I've been running an hourly scrape of Vinted — the EU secondhand fashion + tech marketplace — across all 26 countries where it operates. Same items, same brand, same condition class, normalized for currency. This article is the data — what the arbitrage gaps look like, why they persist, and how I'd think about sourcing if I were trading the flow.
Update May 30, 2026: Vinted now hides sold listings from public search results more aggressively. For demand or sold-item analysis, use
SELL_THROUGH_TRACKERin Vinted Smart Scraper instead of relying on classic sold-listing scraping. I wrote the short breakdown here: Vinted sold listings are unreliable. I added a sell-through tracker instead.. Current public stats: 106,976 runs, 425 users, 99 users in the last 30 days, 5.0 rating from 4 reviews. Current pricing is PPE: $1.50-$2.00 per 1,000 dataset items plus a small actor-start event.
The headline finding: the average cross-country price gap on the top 1000 most-listed items is €18.40. On sneakers it's €27. On gaming consoles it's €43. On designer bags it's €112.
If you flip on Vinted at all — or even just buy on Vinted and don't want to overpay — these gaps are money on the floor.
The 26 Vinted markets I track
| # | Country | TLD | Avg listing volume (per 24h sample) | Cheap-side indicator |
|---|---|---|---|---|
| 1 | France | vinted.fr | 247K | mid |
| 2 | Germany | vinted.de | 199K | cheap on Nike/Adidas |
| 3 | UK | vinted.co.uk | 168K | expensive on designer |
| 4 | Italy | vinted.it | 142K | cheap on Gucci/Prada |
| 5 | Spain | vinted.es | 119K | cheap on tech/gaming |
| 6 | Netherlands | vinted.nl | 87K | expensive on Nike/Adidas |
| 7 | Belgium | vinted.be | 64K | mid |
| 8 | Poland | vinted.pl | 89K | cheap most categories |
| 9 | Portugal | vinted.pt | 41K | mid |
| 10 | Austria | vinted.at | 38K | expensive on luxury |
| 11 | Czech Rep. | vinted.cz | 35K | cheap most categories |
| 12 | Sweden | vinted.se | 28K | mid |
| 13 | Denmark | vinted.dk | 22K | mid |
| 14 | Finland | vinted.fi | 19K | mid |
| 15 | Luxembourg | vinted.lu | 6K | expensive |
| 16 | Slovakia | vinted.sk | 14K | cheap |
| 17 | Lithuania | vinted.lt | 31K | cheap (HQ effect) |
| 18 | Romania | vinted.ro | 28K | cheap most categories |
| 19 | Hungary | vinted.hu | 22K | cheap |
| 20 | USA | vinted.us | 11K | beta, low volume |
| 21 | Canada | vinted.ca | 5K | beta |
| 22 | Croatia | vinted.com.hr | 17K | cheap |
| 23 | Slovenia | vinted.si | 12K | cheap |
| 24 | Estonia | vinted.ee | 8K | cheap |
| 25 | Latvia | vinted.lv | 9K | cheap |
| 26 | Greece | vinted.gr | 18K | cheap |
Total daily new listings observed: ~1.5M items / day across all markets combined.
Concrete arbitrage examples (verified May 2026)
Nike Air Force 1 '07 White (size 42)
| Market | Median asking | Sample size |
|---|---|---|
| 🇫🇷 France | €35 | 247 |
| 🇩🇪 Germany | €42 | 199 |
| 🇮🇹 Italy | €48 | 142 |
| 🇪🇸 Spain | €51 | 119 |
| 🇳🇱 Netherlands | €58 | 87 |
| 🇧🇪 Belgium | €55 | 64 |
FR → NL gap = €23 = 66% spread. Buy in France, ship €5 via Mondial Relay, sell in Netherlands for €23 net per pair.
PlayStation 5 Slim Disc (used, in box)
| Market | Median asking |
|---|---|
| 🇩🇪 Germany | €167 |
| 🇫🇷 France | €175 |
| 🇮🇹 Italy | €189 |
| 🇪🇸 Spain | €212 |
| 🇵🇹 Portugal | €228 |
DE → ES gap = €45. PS5 supply higher in Germany, demand higher in Spain. Stable spread for 4 weeks of measurement.
Gucci Marmont mini bag (camera bag style)
| Market | Median asking |
|---|---|
| 🇮🇹 Italy | €640 |
| 🇫🇷 France | €690 |
| 🇩🇪 Germany | €720 |
| 🇬🇧 UK | €752 |
IT → UK gap = €112. Italian sellers consistently price 15-20% under UK. Gucci, Prada, Bottega Veneta all show similar patterns.
iPhone 13 (128GB, very good condition)
| Market | Median asking |
|---|---|
| 🇪🇸 Spain | €310 |
| 🇩🇪 Germany | €325 |
| 🇫🇷 France | €340 |
| 🇮🇹 Italy | €355 |
| 🇳🇱 Netherlands | €378 |
ES → NL gap = €68 = 22% spread.
Lego Star Wars Millennium Falcon (75257)
| Market | Median asking |
|---|---|
| 🇵🇱 Poland | €82 |
| 🇫🇷 France | €98 |
| 🇩🇪 Germany | €115 |
| 🇬🇧 UK | €138 |
PL → UK gap = €56. Polish sellers liquidate Lego sets aggressively. UK Lego market is undersupplied.
Why the gaps persist
I've tracked this for 4 weeks and the gaps barely move week-over-week. Three reasons :
1. Vinted has no cross-country price normalization. Each country's marketplace operates independently. The Vinted app shows you only your-country listings unless you change region. Most buyers never compare across borders.
2. Shipping friction (real but lower than you'd think). Mondial Relay, GLS, DHL all ship cross-border on Vinted for €4-€7 within ~5 days. The European Union single market means no customs friction. The only friction is checkout language UI — Vinted's checkout autoswitches based on your IP.
3. Currency arbitrage when it's not Euro. PL (zloty), CZ (koruna), DK (krone), SE (krona) markets have minor FX advantages too — Vinted converts at mid-market rate but most sellers don't update prices when their currency strengthens.
The structural opportunity
For a small flipper (2-10 items/week), this is €100-300/week in arbitrage if you stay on top of the data. For a serious reseller running 50-200 items/week, this is a real business.
The catch: you can't manually search 26 markets every day. That's why I built Vinted Smart Scraper as an Apify Actor. It's the #1 Vinted scraper on Apify Store by user traffic (425 total users, 99 users in the last 30 days, 106,976 runs as of May 30, 2026).
The actor
Vinted Smart Scraper on Apify Store — managed Vinted API wrapper across 26 countries.
It does :
- Catalog search in any country with full filters
- Item detail extraction (price, brand, size, condition, seller, photos, favourites)
- Cross-country price comparison — give it a product, get prices from every market
- Seller profile scraping — track competitors, see their inventory + sell-through
- Pay-per-event pricing — pay only for what you get, no subscription
Compared to V-Tools (€80/month with weekend delays) it's cheaper per result and works across all 26 markets vs V-Tools' French-only focus.
Try it
The actor has a free tier on Apify ($5/month platform credit). Run it on 100 items in your favourite category to see if the arbitrage gaps work for your products :
# via Apify CLI
apify call kazkn/vinted-smart-scraper --input '{
"searchUrls": ["https://www.vinted.fr/catalog?search_text=nike+air+force+1"],
"maxItems": 100,
"country": "fr"
}'
Or run it through the Apify Console with point-and-click.
What I'd build next
If anyone wants to extend this for their niche, the actor source supports custom queries — submit an issue on the Apify actor page. Future v2 features I'm planning :
- Cross-country alert mode (Telegram ping when a gap > X% appears)
- Sold-listings tracker (Vinted hides sold prices — we infer from disappearance)
- Brand-specific seasonal analysis (when do French resellers liquidate winter Nike?)
Comments welcome — particularly from anyone with concrete cross-country flow numbers from the past 12 months.
Disclosure: I built and maintain Vinted Smart Scraper. It's the #1 Vinted scraper on Apify Store by traffic. Source: github.com/DataKazKN/vinted-smart-scraper (link in actor README).
Top comments (0)