Depop Scraper avatar

Depop Scraper

Pricing

from $1.50 / 1,000 results

Go to Apify Store
Depop Scraper

Depop Scraper

Search and extract Depop product listings with prices, brands, sizes, condition, seller info, and images. Filter by price and region. Fast, reliable, pay per result.

Pricing

from $1.50 / 1,000 results

Rating

0.0

(0)

Developer

Tommi Sullivan

Tommi Sullivan

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

0

Monthly active users

6 days ago

Last modified

Share

Depop Scraper — Export Depop Search, Shop & Product Data (Unofficial Depop API)

The fastest way to scrape Depop and turn it into structured data. Point this actor at search keywords, search/category URLs, shop usernames or product URLs and get back clean JSON/CSV/Excel with prices, brands, sizes, conditions, seller ratings, sold status and photos — ready for reseller tools, price research and brand monitoring. No coding required; works as a plug-and-play Depop API replacement for data export.

Pay per result: $1.00 / 1,000 items. No browser, no bloated proxy bills — see What changed in v2 below.

Why this Depop scraper

  • Search scraping — any keyword, with price range, condition, sort and marketplace country filters.
  • Paste-a-URL mode — copy a filtered Depop search or category URL from your browser; all filters in the URL are applied automatically.
  • Full shop exports — pull a seller's entire inventory (including sold listings) with their rating attached.
  • Product detail lookups — full description, condition, all photos, timestamps.
  • Sold-listings analysis — every item carries a sold flag, so you can compute real sell-through rates and market prices, not asking prices.
  • Deduplicated, capped, flattened output — one row per product, ready for a spreadsheet.

Use cases

Use caseHow
Reseller sourcingRun "Newest first" searches for your niche brands daily; filter by max price; get pinged (via integrations) when underpriced items appear.
Price researchScrape 1,000 comps for an item, split by sold flag, and price against actual sold prices instead of wishful asking prices.
Brand monitoringTrack how much of your brand's product is resold, at what discount to retail, and in which condition bands.
Sold-listings analysisExport a category, group by brand × condition, compute sell-through and median sold price.
Competitor shop trackingScrape rival sellers' shops weekly; watch their pricing, stock depth and what actually sells.

Input

All fields are optional, but you need at least one source (searchQueries, searchUrls, shopUsernames or productUrls).

{
"searchQueries": ["carhartt detroit jacket", "vintage levis 501"],
"searchUrls": [{ "url": "https://www.depop.com/search/?q=nike+dunk&priceMax=80&sort=newlyListed" }],
"shopUsernames": ["vintagefinds_uk"],
"productUrls": [{ "url": "https://www.depop.com/products/vintagefinds_uk-vintage-nike-hoodie/" }],
"maxItems": 500,
"priceFrom": 10,
"priceTo": 120,
"condition": "used_excellent",
"sortBy": "newest",
"country": "us",
"fullItemDetails": false,
"proxyConfiguration": { "useApifyProxy": true },
"useResidentialFallback": true
}
FieldTypeDefaultNotes
searchQueriesarray of stringsKeywords, one per entry.
searchUrlsarray of {url}depop.com search/category URLs; URL filters win over the global filters below.
shopUsernamesarray of stringsUsernames or full shop URLs.
productUrlsarray of {url}Individual listings; always fetched with full details.
maxItemsinteger500Hard cap on results = hard cap on what you pay.
priceFrom / priceTointegerPrice window for searches.
conditionenumanybrand_new, used_like_new, used_excellent, used_good, used_fair.
sortByenumrelevancenewest, price_low_to_high, price_high_to_low.
countryenumusMarketplace: us, gb, au, ca, de, fr, it, ie, nl, es, nz.
fullItemDetailsbooleanfalseAdds one detail request per result to fill description, condition, seller rating and timestamps.
proxyConfigurationobjectApify datacenterDatacenter is the cheap default and usually sufficient.
useResidentialFallbackbooleantrueAuto-escalate to residential proxies only if datacenter gets blocked.

Inputs from v0.1 (search, startUrls, sellers, minPrice, maxPrice) still work — see ./MIGRATION.md.

Output

One flattened record per product:

{
"id": 987654321,
"slug": "vintagefinds_uk-vintage-nike-hoodie",
"title": "Vintage Nike hoodie in grey, size M",
"description": "Vintage Nike hoodie in grey, size M\nGreat condition, small mark on cuff...",
"price": 34.0,
"currency": "USD",
"discounted_price": 28.0,
"on_sale": true,
"brand": "Nike",
"size": "M",
"sizes": ["M"],
"condition": "used_excellent",
"seller_id": 1234567,
"seller_username": "vintagefinds_uk",
"seller_rating": 4.9,
"seller_reviews_total": 812,
"sold": false,
"photos": ["https://media-photos.depop.com/b1/.../P0.jpg"],
"main_photo": "https://media-photos.depop.com/b1/.../P0.jpg",
"url": "https://www.depop.com/products/vintagefinds_uk-vintage-nike-hoodie/",
"category": "Hoodies",
"date_created": "2026-05-12T09:31:00Z",
"date_updated": "2026-06-02T14:05:00Z",
"source": "search:vintage nike hoodie",
"scraped_at": "2026-07-04T12:00:00+00:00"
}
FieldDescription
idDepop's numeric product id (dedup key).
titleFirst line of the description (Depop has no title field), or derived from the slug on list pages.
price / currency / discounted_price / on_saleAsking price, its currency, and sale price when discounted.
brand, size, sizes, conditionListing attributes (condition needs fullItemDetails for search/shop results).
seller_username, seller_rating, seller_reviews_totalSeller identity and reputation.
soldtrue for sold listings — the key field for real price research.
photos, main_photoLargest-rendition image URLs.
url, slug, category, countryListing location and taxonomy.
date_created, date_updatedListing timestamps where the API exposes them.
source, scraped_atProvenance: which query/shop produced the row and when.

Download as JSON, CSV, Excel or XML from the run's Dataset tab, or via the Apify API.

v2: what changed

v2 is a ground-up browserless rewrite. v1 drove a headless browser through Depop with residential proxies; v2 calls the same internal JSON API the Depop web app uses, over a TLS-fingerprint-matched HTTP client.

v1 (browser)v2 (browserless)
EngineHeadless ChromiumDirect HTTPS to Depop's web API
Memory1–4 GB256 MB
Proxy traffic per itemfull page + assets (residential)~5–15 KB JSON (datacenter)
Platform usage cost per 1k results~$5.81~4–5× lower
Speedseconds per pagedozens of items per second

Same data, same fields, dramatically lower total cost per result — which is why the price also dropped to $1.00/1,000 (see the actor's pricing tab).

Integrations

  • Make / Zapier / n8n — use the Apify app: trigger a run, wait, fetch dataset items, push to Sheets/Airtable/Slack.
  • LangChain / LlamaIndex — load the dataset with the Apify loaders to feed listings into an LLM pipeline (e.g. "flag mispriced grails").
  • MCP agents — via the Apify MCP server, agents (Claude, etc.) can call this actor as a tool: "find sold prices for Carhartt Detroit jackets under $100".
  • API / SDKs — run and fetch results with the Apify REST API, apify-client (JS/Python), or schedule daily runs in Apify Console.
  • Webhooks — fire a webhook on run completion to feed your own backend.

FAQ

Is scraping Depop legal? This actor only accesses publicly available listing data — no logins, no private data. You are responsible for complying with applicable laws and Depop's terms in your jurisdiction; for guidance see Apify's articles on web-scraping legality.

Does it get sold listings? Yes — sold items appear in shop inventories and searches with "sold": true. That makes real sell-through and sold-price analysis possible.

Why are condition, description or seller_rating empty on search results? Depop's list endpoints return compact objects. Turn on fullItemDetails to fetch the detail endpoint per item (one extra request each), or scrape via productUrls which always returns full detail.

How fresh is the data? Live — every run hits Depop's API in real time. Schedule the actor for continuous monitoring.

Do I need my own proxies? No. Apify datacenter proxies are the default; if Depop blocks them mid-run the actor escalates to residential automatically (toggleable via useResidentialFallback).

What does it cost? $1.00 per 1,000 results (pay-per-result) plus modest platform usage — the browserless engine keeps that overhead ~4–5× lower than browser-based Depop scrapers. maxItems gives you a hard spend cap.

Something broke / fields look wrong? Depop occasionally changes its internal API. Open an issue on the actor page — the endpoint layer is isolated so fixes ship fast.


Keywords: depop scraper, depop api, depop data export, depop price research, reseller tools, depop sold listings, scrape depop shop, depop product data.