Farfetch Scraper — Prices, Sizes, Boutiques & Style Codes avatar

Farfetch Scraper — Prices, Sizes, Boutiques & Style Codes

Pricing

from $1.20 / 1,000 result scrapeds

Go to Apify Store
Farfetch Scraper — Prices, Sizes, Boutiques & Style Codes

Farfetch Scraper — Prices, Sizes, Boutiques & Style Codes

Scrape Farfetch for designer clothing, bags and shoes: prices, real per-size stock, the selling boutique, images and the brandStyleId manufacturer style code you can join on across retailers. 12 markets, no login, no proxy needed.

Pricing

from $1.20 / 1,000 result scrapeds

Rating

0.0

(0)

Developer

Studio Amba

Studio Amba

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Categories

Share

Farfetch Scraper

Scrape Farfetch — the largest luxury marketplace on the web, roughly 978,000 products from hundreds of independent boutiques — and get back clean JSON: prices, real per-size availability, which boutique is holding which size, images, composition, and the manufacturer style code.

No login. No cookies to supply. No proxy needed.

What makes this one different

It returns brandStyleId. That is the brand's own style code — the string printed on the hangtag and used on the designer's own website, e.g. 855491FAEUC for a Gucci mini bag or P3Q81SOOO187P for a Prada dress.

Luxury fashion has no EAN and no GTIN. Of the four big luxury retailers, only two publish a real manufacturer code at all: Farfetch (brandStyleId) and NET-A-PORTER (mfPartNumber). Mytheresa publishes none. Yoox exposes only its own internal identifiers. So if you are building a cross-retailer product database, price comparison, or resale pricing model, this field is the join key — everything else has to be fuzzy-matched on brand plus normalised model name.

It tells you who is actually selling. Farfetch is a marketplace, not a shop. The same dress is often listed by three different boutiques, in different sizes, sometimes at different prices. This actor reports the selling boutique, where it ships from, and — in full mode — which boutique holds each individual size:

size 38 (XS)2 in stock — PRADA IT
size 40 (S)4 in stock — PRADA IT CENTRAL WH
size 42 (M)4 in stock — KULT BOUTIQUE

Nothing else in the luxury space exposes that.

Fast search mode

Farfetch does not use a hosted search provider. There is no Algolia, Typesense, Constructor.io, Bloomreach or Klevu index sitting outside its bot wall — it runs its own search behind its own GraphQL gateway. So there is no cheap third-party index to point you at, and this actor talks to Farfetch's own API directly.

What that API does have is two depths, and they are a real trade-off:

mode: "index"mode: "full"
Speed~100 products / 9s call, 4 calls in parallelindex speed + 1 extra call per 16 products, also parallel
Fieldsname, brand, price, was-price, discount, available sizes, stock quantity, category chain, images, merchant id, URLeverything in index, plus brandStyleId, the complete size ladder with per-size quantities and per-size boutique, colour + brand colour code, boutique name, ships-from city/country, composition, made-in, season, gender, size scale, editorial description
Not includedbrandStyleId, boutique name, colour, composition, made-in, season, gender, description, the unavailable half of the size ladder
Best forprice monitoring, catalogue snapshots, availability trackingcross-retailer matching, resale pricing, full product records

Set mode: "index" (default) or mode: "full".

brandStyleId is PDP-level only. It is not on Farfetch's listing type at all — asking for it there returns

The field 'brandStyleId' does not exist on the type 'ProductCatalogItem'
. Same for colour, composition, season and the boutique name. That is why full mode exists.

The good news is that full mode is nowhere near as expensive as "fetch every product page" usually is. Farfetch's API takes 16 products per batched request, and those requests run in parallel, so 1,000 products in full depth is about three and a half minutes rather than the three hours a page-per-product crawl would take.

One thing index mode does not lose: availability is real at both depths. Farfetch's listing payload returns only the sizes that are currently buyable (verified against the detail record: a Prada dress whose scale has 18 entries listed exactly the 3 that had stock). What index mode loses is the rest of the ladder and the per-size quantity, not the truth about what you can buy.

How to scrape Farfetch data

  1. Open the actor and set a search term, or leave it empty to browse the whole catalogue and filter with brand, categoryId, minPrice / maxPrice, minDiscountPercent or onSaleOnly.
  2. Pick a depth. index for speed, full when you need style codes, boutiques or the complete size ladder.
  3. Pick a market. Prices, currency and assortment all differ per storefront.
  4. Set maxItems and run. Results land in the dataset as JSON, CSV, Excel or via the API.

You do not need a Farfetch account, an API key, cookies, or a proxy. The actor opens one page in a headless browser to establish a session, then talks to Farfetch's own product API for everything else.

A note on searching by style code

Farfetch's own search does not index style codes. Searching for 855491FAEUC returns zero results even though Farfetch stocks that exact bag, and space-separated variants are worse — they tokenise and return unrelated products from other houses. So you cannot go code → product on Farfetch.

Go the other way: scrape a brand or category in full mode and build your own code → product index. That works, and it is what the field is for.

Input

FieldTypeDefaultDescription
searchQueriesarray["gucci bag"]Search terms. Leave empty to browse the whole catalogue.
searchQuerystringSingle-term convenience alternative.
modeenumindexindex or full. See the table above.
marketenumbebe, nl, fr, de, it, es, at, ie, uk, ch, se, dk.
maxItemsinteger100Stop after this many products.
brandstringBrand name, resolved to Farfetch's brand id via their own facet.
categoryIdstringFarfetch category id, e.g. 141258 Women, 135971 Bags.
onSaleOnlybooleanfalseOnly discounted products.
minPrice / maxPriceintegerPrice band in the market's currency.
minDiscountPercentintegerOnly products reduced by at least this much.
sortByenumRANKINGRANKING, PRICE or NEW_ITEMS — the only three Farfetch offers.
sortOrderenumASCASC or DESC.
pageSizeinteger100Products per listing request. 100 is the ceiling.
detailBatchSizeinteger16Products per batched detail request in full mode. 16 is the ceiling — Farfetch caps a GraphQL document at 2,048 fields.
concurrencyinteger4Parallel requests.
proxyConfigurationobjectoffLeave off. See "Proxies" below.

Output

One record per product. Example from mode: "full":

{
"name": "poplin mini-dress",
"brand": "Prada",
"brandStyleId": "P3Q81SOOO187P",
"price": 1900,
"originalPrice": null,
"discount": null,
"currency": "EUR",
"sizes": [
{ "size": "36", "alternateSize": "XXS", "available": false, "quantity": 0,
"sizeId": "19", "merchantId": null, "merchantName": null },
{ "size": "38", "alternateSize": "XS", "available": true, "quantity": 2,
"sizeId": "21", "merchantId": "11245", "merchantName": "PRADA IT" },
{ "size": "40", "alternateSize": "S", "available": true, "quantity": 4,
"sizeId": "23", "merchantId": "12113", "merchantName": "PRADA IT CENTRAL WH" }
],
"inStock": true,
"stockQuantity": 10,
"category": "Day Dresses",
"categoryPath": "Women > Clothing > Dresses > Day Dresses",
"colour": "Blue",
"colourCode": "F0008 BLUE",
"imageUrl": "https://cdn-images.farfetch-contents.com/34/36/62/49/34366249_65406007_1000.jpg",
"url": "https://www.farfetch.com/be/shopping/women/prada-poplin-mini-dress-item-34366249.aspx",
"boutique": "PRADA IT CENTRAL WH",
"merchantId": "12113",
"sellerCity": "Milan",
"sellerCountry": "Italy",
"productId": "34366249",
"gender": "Woman",
"season": "AW26",
"composition": "Polyester 65%, Cotton 35%",
"madeIn": "Made in Italy",
"sizeScale": "Size",
"market": "be",
"mode": "full",
"scrapedAt": "2026-07-29T10:38:14.921Z"
}

Field-by-field descriptions are in the output schema, visible in the Console before you run.

Speed and cost

Farfetch's API is slow per call — 8 to 10 seconds, flat, whether you ask for one product or a hundred. That is their backend, not this actor. Two things follow, and both are already built in: always request the maximum page size, and run calls in parallel (five concurrent calls finish in the time one takes).

Measured on 2026-07-29:

RunResult
Warm-up (once per run)~20–25s
index, 600 products from the Bags catalogue52s total, 7 API calls
full, 10 products with style codes and full size ladders54s total, 3 API calls

The warm-up dominates small runs, so batch your queries into one run rather than firing many tiny ones.

Limitations

Worth knowing before you build on it:

  • Pagination caps at 10,000 products per query. Beyond that Farfetch returns nothing. Narrow with brand, categoryId or a price band to reach the rest.
  • brandStyleId needs full mode. It does not exist at listing level.
  • originalPrice is Farfetch's own previous price, not a brand RRP. If you need a supplier-stated recommended retail price with a date on it, Yoox is the only luxury vendor that publishes one.
  • Style codes are not searchable on Farfetch. See above.
  • One record per product, not per boutique offer. When several boutiques sell the same product, the record describes the cheapest in-stock offer, and the per-size merchantName tells you where the rest of the stock sits.
  • madeIn is patchy. Farfetch populates it on some products and not others.
  • Prices, availability and assortment are per market and change constantly. Re-scrape rather than caching.

Proxies

Leave proxyConfiguration off. A direct connection is what works here, and it is free. On the two sibling luxury sites measured on the same day, Apify residential exits returned HTTP 403 where a direct connection returned 200 — those ranges are already badly scored by the same WAF vendor.

The setting exists as an escape hatch. If runs start failing at the warm-up step, the outbound IP range may have been scored badly, and routing the browser through a different exit is the one thing a retry cannot fix.

  • NET-A-PORTER Scraper — the other luxury retailer that publishes a real manufacturer style code (mfPartNumber), and it puts the code on the search row, so bulk code harvesting is cheaper there. Smaller, curated, full-price.
  • Yoox Scraper — YNAP's outlet. The only luxury vendor that states an actual supplier RRP with a date, which makes it the reference point for any discount-versus-market-price calculation.
  • Mytheresa Scraper — curated luxury, no style code, no sizes.
  • Zalando Scraper — mid-market European fashion at far larger volume.

This actor reads publicly available product listings. It does not log in, does not touch personal data, and does not access anything behind an account. You are responsible for how you use the output, including compliance with Farfetch's terms and with applicable law.