Vinted Product Scraper avatar

Vinted Product Scraper

Pricing

from $2.00 / 1,000 results

Go to Apify Store
Vinted Product Scraper

Vinted Product Scraper

Scrapes product listings from Vinted UK. Supports text search and category URLs. Outputs title, brand, size, condition, price, seller info, and more.

Pricing

from $2.00 / 1,000 results

Rating

0.0

(0)

Developer

Alam

Alam

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

2 days ago

Last modified

Share

Extract product listings from Vinted UK at scale. Search by keyword or browse entire categories. Each result includes the title, brand, size, condition, price in GBP, engagement metrics, seller info, and direct product URL — ready for reselling research, price monitoring, or market analysis.


Features

  • Text search — query any keyword (e.g. "nike air max", "vintage levi")
  • Category scraping — pass any Vinted catalog URL directly
  • Seller profiles — optional username, ratings, and item count per listing
  • Robust error handling — 403 cookie refresh, 429 exponential backoff
  • Pagination — automatically pages through results up to your maxItems limit
  • Pay-per-event pricing — only pay for what you actually scrape ($0.002/item)

Input

FieldTypeDefaultDescription
searchQueriesstring[][]Search terms to query
categoryUrlsstring[][]Direct Vinted catalog URLs
maxItemsinteger100Total items to scrape across all sources
includeSellerInfobooleantrueAttach seller profile to each result
countrystring"united_kingdom"Target country (UK only)

At least one searchQuery or categoryUrl is required.

Example Input

{
"searchQueries": ["nike dunks", "stone island jacket"],
"categoryUrls": ["https://www.vinted.co.uk/catalog/4-tops"],
"maxItems": 500,
"includeSellerInfo": true
}

Output

One JSON record per listing is pushed to the Apify dataset.

{
"id": "4821736291",
"title": "Nike Dunk Low Retro White Black Panda",
"brand": "Nike",
"size": "UK 9",
"condition": "Good",
"price": 85.0,
"currency": "GBP",
"buyerProtectionPrice": 6.0,
"favouriteCount": 42,
"imageUrl": "https://images1.vinted.net/t/…/image.jpg",
"productUrl": "https://www.vinted.co.uk/items/4821736291-nike-dunk-low",
"category": "Trainers",
"seller": {
"id": "12345678",
"login": "sneakerhead_uk",
"profileUrl": "https://www.vinted.co.uk/member/12345678-sneakerhead_uk",
"itemCount": 47,
"positiveRating": 38,
"totalRating": 40
},
"scrapedAt": "2026-04-04T12:00:00+00:00",
"sourceUrl": "https://www.vinted.co.uk/catalog?search_text=nike+dunks"
}

Output Field Reference

FieldTypeDescription
idstringVinted internal listing ID
titlestringListing title as posted by seller
brandstringBrand name (may be null if not specified)
sizestringSize label (e.g. "M", "UK 10", "36")
conditionstringItem condition (e.g. "New with tags", "Good", "Satisfactory")
pricenumberAsking price in GBP
currencystringCurrency code (always "GBP" for UK)
buyerProtectionPricenumberVinted buyer protection fee in GBP
favouriteCountintegerNumber of users who have favourited this listing
imageUrlstringURL of the primary listing photo
productUrlstringDirect URL to the listing on Vinted
categorystringVinted category name
seller.idstringSeller's Vinted user ID
seller.loginstringSeller's username
seller.profileUrlstringSeller's profile page URL
seller.itemCountintegerNumber of active listings from seller
seller.positiveRatingnumberCount of positive reviews
seller.totalRatingintegerTotal review count
scrapedAtstringISO-8601 UTC timestamp of when the item was scraped
sourceUrlstringThe search/category URL that produced this item

Use Cases

Reselling & Arbitrage

Find underpriced items to flip on other platforms. Search for specific brands and filter the output by price and favouriteCount to find high-demand, low-price listings before they sell.

{ "searchQueries": ["supreme hoodie", "bape tshirt"], "maxItems": 1000 }

Price Monitoring

Track how prices for a specific item change over time. Schedule the actor daily and compare price values across runs.

{
"searchQueries": ["jordan 1 retro high og"],
"maxItems": 200,
"includeSellerInfo": false
}

Market Research

Understand the supply/demand landscape for a category. Scrape a whole category, then aggregate by brand, condition, or size in your spreadsheet or BI tool.

{
"categoryUrls": [
"https://www.vinted.co.uk/catalog/1231-sneakers-trainers"
],
"maxItems": 5000
}

Competitor Analysis

Monitor what a specific type of seller is listing. Cross-reference seller.login and seller.itemCount to find high-volume resellers in a niche.


Pricing

This actor uses pay-per-event pricing.

EventPrice
Item scraped$0.002

Examples:

  • 100 items → ~$0.20
  • 1,000 items → ~$2.00
  • 10,000 items → ~$20.00

This is significantly cheaper than most Vinted scrapers on the marketplace.


Tips for Avoiding Rate Limits

Vinted rate-limits aggressive scrapers. The actor already handles this automatically, but here are additional tips:

  1. Keep maxItems under 1,000 per run for searches — larger datasets are better served via category URLs which spread load.
  2. Use multiple smaller runs rather than one giant run (e.g. 5 × 1,000 items instead of 1 × 5,000).
  3. Schedule runs during off-peak hours (e.g. 2–6 AM UTC) to reduce competition with real users.
  4. Don't scrape the same query back-to-back — rotate between different queries or categories.
  5. Use Apify Proxy if you run into persistent 403 errors on datacenter IPs — residential proxies resolve most blocks.

Finding Category URLs

  1. Go to vinted.co.uk
  2. Browse to any category (e.g. Women > Tops)
  3. Copy the URL from your browser — it will look like: https://www.vinted.co.uk/catalog/4-tops
  4. Paste it directly into categoryUrls

The numeric ID before the slug (e.g. 4 in 4-tops) is what the actor uses internally.


Technical Details

  • Built on the vinted_scraper library (Giglium)
  • Calls Vinted's internal /api/v2/catalog/items endpoint
  • Automatically handles access_token_web cookie authentication
  • 403 errors trigger a full cookie refresh (up to 3 attempts)
  • 429 errors trigger exponential backoff: 5s → 15s → 45s
  • Python 3.12, Apify SDK 2.x

Limitations

  • UK only: This actor targets vinted.co.uk. For other countries, you would need separate actors with the appropriate base URL.
  • No single-item detail: The Vinted item() detail endpoint returns 403 frequently from non-residential IPs, so all data comes from search/catalog results.
  • Image quality: Images are thumbnails from search results, not full-resolution gallery images.
  • Dynamic availability: Vinted listings sell fast. The productUrl may be unavailable by the time you access it.