Vinted Products Crawler avatar

Vinted Products Crawler

Pricing

from $5.00 / 1,000 results

Go to Apify Store
Vinted Products Crawler

Vinted Products Crawler

Scrape Vinted listings from all 27 country sites — .fr, .de, .co.uk, .pl and more, mixable in one run. Get prices, brands, sizes, conditions, seller ratings and photos as clean JSON, CSV or Excel. Built for reselling, price tracking and market research. Not affiliated with Vinted Limited.

Pricing

from $5.00 / 1,000 results

Rating

0.0

(0)

Developer

Alkausari M

Alkausari M

Maintained by Community

Actor stats

0

Bookmarked

32

Total users

12

Monthly active users

9 days ago

Last modified

Share

Get thousands of Vinted listings into a spreadsheet — from any of Vinted's 27 country sites. This fast, no-code scraper pulls prices, brands, sizes, conditions, seller ratings, and photos from any catalog, search, or listing page, and hands each listing back as one clean row you can open in Excel or Google Sheets — or pipe straight into your own app. Whether you're reselling, hunting bargains, or tracking the second-hand market, get the data you need in minutes instead of scrolling for hours.

Built and maintained by Alkausari M.


✦ Highlights

  • 🌍 Every Vinted country.com, .co.uk, .fr, .de, .es, .it, .pl and 20 more, mixable in one run
  • Two speeds — blazing-fast mode grabs ~96 listings per request; full-detail mode digs into every listing page
  • 🛍️ Full listing data — title, price, size, condition, brand, color, and description
  • 👤 Seller insights — username, rating, location, trust badges, and last active time
  • 🖼️ Product photos — up to 9 high-resolution image links per item
  • 🔗 Flexible input — scrape whole catalogs/searches, single item links, or a mix
  • 📊 Any format — JSON, CSV, Excel, XML, or live via the Apify API
  • 🛡 Anti-blocking built-in — residential proxies and smart retries

⚙ How it works

▶️ In a hurry? Start from a ready-made task — a saved setup you can run as-is or tweak, so you don't have to build a URL at all. See Ready-made tasks below.

  1. Paste a URL — a catalog/search page (apply any filters you like first), a direct item link, or several of each.
  2. Choose how many pages — set the start and end page to control how much you scrape.
  3. Need descriptions too? — turn on Fetch full item details for descriptions, colours, materials, shipping and seller ratings (slower; the default fast mode is fine for price tracking).
  4. Click Start — proxies, retries, and parsing are handled for you.
  5. Download — get your results as JSON, CSV, or Excel, or pull them from the API.

Example input:

{
"startUrls": [
{ "url": "https://www.vinted.fr/catalog?catalog[]=1904&order=newest_first" },
{ "url": "https://www.vinted.de/catalog?search_text=nike" }
],
"startPageNum": 1,
"endPageNum": 5,
"maxItems": 200,
"proxyConfiguration": { "useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"] }
}

💡 Tip: Apply your filters on Vinted before copying the URL — the scraper keeps every filter (brand, size, category, price range, condition) you set.


▶️ Ready-made tasks

Don't want to build a URL? These are pre-configured setups — open one, hit Start, and you get results. Each is a normal task, so you can change the filters, page range or item limit and save it as your own.

TaskWhat it doesBest for
Track new women's fashion listings on Vinted UKLatest womenswear from vinted.co.uk, fast modeSpotting new stock the moment it lands
Compare sneaker prices across Vinted France and GermanyTwo countries in one run, with comparable priceAmount + currencyCross-border bargain hunting
Research a brand's resale prices and descriptionsOne brand with full details — descriptions, materials, seller ratingsValuing stock before you buy

Tasks remember their settings, so you can also put one on a schedule — see Integrations & scheduling.


📦 What you get back

Each product listing is one structured record. Here's a real one from vinted.fr, with Fetch full item details turned on:

{
"url": "https://www.vinted.fr/items/9627980284-pantalon-hugo-boss-beige-clair",
"domain": "vinted.fr",
"title": "pantalon Hugo Boss beige clair taille 50 coupe habillée",
"price": "€10.00",
"priceAmount": 10,
"currency": "EUR",
"totalPrice": "€11.20",
"size": "W50 | FR 60",
"condition": "Très bon état",
"brand": "Hugo Boss",
"brandUrl": "https://www.vinted.fr/catalog/261-tailored-trousers/brand/120-hugo-boss",
"color": "Beige",
"description": "Pantalon homme Hugo Boss, coloris beige clair / écru…",
"uploaded": "Il y a 14 minutes",
"seller": "lysker",
"sellerProfileUrl": "https://www.vinted.fr/member/14081384-lysker",
"sellerRating": 5,
"sellerRatingCount": 253,
"sellerBadges": null,
"sellerLocation": null,
"sellerLastSeen": "Vu la dernière fois : il y a 41 minutes",
"favorites": 0,
"images": [
"https://images1.vinted.net/tc/05_02362_GTAwfUjrJ4XjL4aoiRA6v68Q/1786381468.jpeg",
"... up to 9 images"
],
"shippingPrice": "à partir de 2,83 €",
"freeShipping": false,
"material": null,
"measurements": null,
"scrapedAt": "2026-08-10T17:19:09.234Z"
}

[!NOTE] Every record in a run has the same columns. The default fast mode includes the core fields (title, price, size, condition, brand, images, seller username). Turning on Fetch full item details adds description, colour, material, measurements, shipping, and the seller's rating, location and last-seen. A null value always means the data genuinely wasn't available — never "not collected".

[!NOTE] Scraping a non-English domain? Text written by Vinted — condition ("Very good" / "Sehr gut" / "Très bon état"), size, uploaded and sellerLastSeen — comes back in that site's own language, because that is how Vinted serves it. Numbers and codes are not: use priceAmount + currency (rather than the formatted price string), sellerRating, and domain when comparing listings across countries in one dataset. One known limitation: sellerBadges is only available on vinted.com and vinted.co.uk and comes back empty on other domains.

Download as CSV or Excel and each listing becomes a row, each field a column.


📋 Input

FieldDescriptionRequiredDefault
Start URLsVinted catalog/search pages, direct item URLs, or a mix — from any Vinted country domain. Direct item URLs are always scraped with full detailsYes
Start PageFirst catalog page to scrapeNo1
End PageLast catalog page to scrape (inclusive). Scraping stops early if the catalog has fewer pagesNo1
Max itemsExact number of listings to save. Scraping stops as soon as it has this many. 0 means no limit. For multi-country runs, see the note belowNo0
Max ConcurrencyHow many pages to scrape in parallel. Lower it if you hit blocks; raise it for faster runsNo10
Fetch full item detailsOFF (default) is fast and cheap. Turn ON to also collect description, colour, material, measurements, shipping, and seller rating/location — much slower and uses far more dataNofalse
Proxy ConfigurationProxy settings. Leave as default if unsureNoApify Proxy (Residential)

Each catalog page holds about 96 listings, so pages 1–5 returns roughly 480 items. If you want a specific number instead, set Max items — the run stops the moment it has that many, and you're only billed for what you get.

⚠️ Scraping more than one country in the same run? Leave Max items at 0 and size the run with Start/End Page. Max items is a single budget shared across all your URLs and filled first-come-first-served, so it splits unevenly between domains — 300 items across France and Germany can land as 192/108, differently each run.


💵 How much does it cost?

You pay per result, and the price depends on which mode you run:

ModeWhat you getPrice
Fast (default)15 core fields — title, price, currency, size, condition, brand, images, seller$5.00 / 1,000 items
Full detailsall 28 fields — adds description, colour, material, measurements, shipping, seller rating & location$10.00 / 1,000 items

Full-detail mode opens every listing's own page, which uses far more residential proxy bandwidth — that's the difference in price. The surcharge is only applied to pages that were fetched and read successfully. If a listing's page can't be opened, you are not charged the surcharge for it — the item is still saved with the details we already had from the catalog, and the item-page fields are left empty.

Rough guide: a typical run of 5 catalog pages (~480 listings) costs about $2.40 in fast mode, or $4.80 with full details — full details is simply double.

💡 Start in fast mode. It already covers price tracking, resale sourcing and market research — only switch on full details when you specifically need descriptions or materials.


💡 Use cases

  • Price research — track second-hand prices for specific brands or items over time.
  • Resale sourcing — spot underpriced listings by comparing price, brand, and condition.
  • Market analysis — understand what sells, at what price, and in what condition.
  • Inventory feeds — build product lists for a category or brand to resell elsewhere.
  • Data pipelines — feed a dashboard, a database, or your own app.

🔌 Integrations & scheduling

Results don't have to stay on Apify. Without writing any code you can:

  • Send listings to Google Sheets, Airtable or Slack — pick the integration on the Actor's Integrations tab and every run appends its results automatically.
  • Connect anything else via Zapier or Make — thousands of apps, triggered when a run finishes.
  • Fire a webhook to your own server the moment a run completes, with a link to the fresh dataset.
  • Pull the data over the API in JSON, CSV, Excel or XML — one URL, no auth juggling, ideal for a script or notebook.

Run it on a schedule. Point the Actor at a saved Vinted search, set it to run every morning, and send the output to a sheet — that's a working price tracker with no code at all. Combine it with Max items to keep each run's cost predictable.

💡 Tracking prices over time? Schedule daily runs and keep every result — scrapedAt and priceAmount are all you need to chart how a brand or category moves.


❓ FAQ

The scraper got blocked or returned nothing — what do I do? Make sure the proxy is enabled (it is by default). Residential proxies route requests through real IP addresses that Vinted is far less likely to block.

I got fewer results than expected — why? Check Max items first — if it's set, the run stops the moment it reaches that number. Otherwise raise the End Page to scrape more pages. Scraping also stops automatically once the catalog runs out of pages, so check that your search URL actually returns that many listings.

Can I scrape several countries in one run? Yes — mix vinted.fr, vinted.de, vinted.co.uk and any others in Start URLs. Each record carries a domain field so you can tell them apart, and priceAmount + currency let you compare prices across them.

Scraping several countries? Use the page range, not Max items. Max items is one budget shared by the whole run, not a quota per country — and it's filled first-come-first-served. Ask for 300 items across France and Germany and you might get 192 French and 108 German, with the split changing every run. If you want an even sample, set Max items to 0 and control the size with Start/End Page instead: two countries × 2 pages gives you 192 from each. Reserve Max items for single-country runs, where there's no split to unbalance.

Where are the description, colour and material columns? Those come from each item's own page, so they're only included when Fetch full item details is turned on. The default fast mode skips them to keep runs quick and cheap.

Why are some fields empty (null)? Vinted sellers aren't required to fill in every detail. Optional fields like material or measurements appear as null when the seller left them blank.

Is it legal to scrape Vinted? This Actor collects only publicly visible listing data — the same information any visitor sees without logging in. Use responsibly and in accordance with Vinted's Terms of Service.


📮 Support

Bugs, feature requests, or custom scraping work — open an issue on Apify or email alkausarimujahid@gmail.com.