ASOS Scraper for Price, Markdown and Stock Data

ASOS lists its own labels beside hundreds of outside brands. We collect both, with the markdown dates and barcodes that make the numbers comparable across retailers.

ASOS Scraper
Solutions

How the Service Runs

We build the crawler, run it on your schedule and hand back a file. Weekly suits assortment tracking; daily suits price and stock. Delivery is CSV, XLSX or JSON, pushed to your storage or exposed as an API endpoint your systems poll. These are scheduled runs, not a live feed, and we will tell you the run window rather than imply the data is instantaneous.

Scope is yours to set: a brand list, a set of category ids, one storefront or all eleven. We agree the field list against a sample before the full run, so the columns match your schema rather than ours. Discontinued products keep their row with a status flag instead of disappearing, which is what keeps a price series joinable over time. A paid sample is available before you commit to a plan.

Fields We Extract from ASOS

A single ASOS product page yields a layered record. These are the fields we extract as standard, each mapped to its own column rather than left buried inside a description blob:

  • Product name, brand and gender, plus the product type and its numeric id
  • The URL product id and the separate on-page product code, kept as two distinct fields
  • Current price as a number, with the currency in its own column
  • Previous price, where the item is carrying one
  • The markdown flag, the date the current price took effect and the date the previous price ended
  • The lowest price recorded in the preceding 30 days, as published on the page
  • The outlet flag, which separates clearance stock from in-season markdown
  • Colour as displayed and, where a refinement exists, its numeric base colour code
  • Every size with its size id, sort order, variant id, SKU and EAN barcode
  • Availability per size, plus the low stock flag ASOS sets on thin sizes
  • Material composition split by garment component, such as body and lining
  • Care instruction, kept apart from the fabric text
  • Size and fit notes, including model height and the size the model is wearing
  • Breadcrumb path and the category id it resolves to
  • Discontinued, one-size and no-size flags
  • Image URLs from the ASOS media host, in the order the page lists them

Every ASOS price arrives as a number beside a separate currency code, so a table mixing GBP, EUR, USD and AUD rows stays arithmetically usable instead of turning into a column of formatted strings. Sizes can be nested one row per product or flattened to one row per size, depending on whether you are studying assortment or matching barcodes.

Fields We Extract from ASOS
What ASOS Scraping Has To Handle, and What Gets Oversold

What ASOS Scraping Has To Handle, and What Gets Oversold

The structured markup on an ASOS page is thinner than the page behind it, and that gap is where the parsing work sits.

The product schema flattens three separate fields into one run-on sentence. Fabric, fit note, care instruction and model measurement arrive concatenated with no punctuation between them, so anything reading only the schema gets a fabric percentage welded to a washing instruction and a model height. The page object underneath keeps them apart as named fields, and that is what we read. It also carries a visibility flag per field, so a value can exist in the data and never render on screen.

Reviews deserve a plain answer, because they get oversold. ASOS does publish product reviews, but only verified purchasers may submit one and each is moderated by Bazaarvoice before it appears. They load through that widget rather than sitting in the page markup, and the archived product page we examined carried no rating markup. Collecting them is a separate job from the product parse, with uneven coverage across the catalogue.

Something else is genuinely absent. Every offer names ASOS itself as the seller, including offers for outside brands, so there is no per-seller column to fill. ASOS Marketplace no longer runs as a separate destination; its independent and vintage sellers moved onto the main site in 2025 and now sit under that same seller of record.

Collection covers public product and pricing data only. No customer accounts, no order data, no personal data of any kind.

How the ASOS Catalogue Is Built

ASOS runs eleven storefronts from a single catalogue: the.com site plus Australia, Denmark, Germany, Spain, France, Italy, the Netherlands, Poland, Sweden and the United States. Each one publishes its own product sitemap index, so assortment and price are properties of a market rather than of the company. Nothing about a product is global except its identity.

Product pages sit at asos.com/{brand}/{slug}/prd/{id}. The brand is the first path segment, which puts the brand axis into the URL itself. A second family, /grp/{id}, carries co-ords, lingerie sets and multipacks in a separate numeric range with its own sitemap file. A crawler written only for /prd/ drops that family silently, without raising an error.

Category listings run on /cat/?cid={number}. Refinement pages carry both a readable slug and a coded parameter, so the red filter on bikinis resolves to refine=base_colour:1. Colour is an enumerated code here, not only a display word, and the same pattern holds for shape and fabric attributes.

Identifiers do not reduce to a single number. The URL carries a product id, the page shows a different product code, and every purchasable size carries its own variant id, SKU and EAN barcode. Any pipeline that treats these as interchangeable will join the wrong rows together.

The storefront gives nothing away to a bare fetch: the shell arrives without the catalogue, and price and stock come from a separate call rather than the first byte of HTML. robots.txt leaves current product and category pages open, and we stay inside it.

Get a Quote
dev_w
25

Developers

customers
500+

Customers worldwide

pages
1 500 000 000+

Pages extracted

stime
15000+

Hours saved for our clients

Plans

Airplane

€199 / one-time

setup fee - included

Data limits100,000
Frequencyone-time
Run timeup to 5 days
Data storing7 days

Helicopter

€169 / mo

setup fee €499

Data limits250,000
Frequencymonthly
Run timeup to 5 days
Data storing14 days

Glasses

€229 / mo

setup fee €499

Data limits1,000,000
Frequencyweekly
Run timeup to 5 days
Data storing30 days

DNA

€549 / mo

setup fee €799

Data limits3,000,000
Frequency3 times daily
Run timesame day
Data storing90 days

Why the Markdown Clock Is the Point

Fashion pricing does not drift. It steps. A garment holds full price through a season, then moves in cuts that land on particular days, and the useful question is rarely what a thing costs today. It is when the cut landed and how deep it went.

ASOS answers that in its own page data. The price object carries the current price, the previous price, an explicit markdown flag, the date the current price took effect, the date the previous price stopped applying, and the lowest price seen in the preceding 30 days. On the archived Nike hoodie we examined, one capture was enough to read a move from 45.00 to 40.50 GBP and the date it started.

That is unusual and it changes the economics of monitoring. Most price work reconstructs markdown timing from a history it has to build itself, which means the first months of scraping produce nothing but a baseline. Here the timing is already on the page. A first ASOS data pull carries usable markdown depth and dating immediately, and the series you accumulate afterwards sharpens that picture rather than creating it from scratch.

Pair it with the per-size EAN and the comparison leaves ASOS entirely. For an outside brand, the barcode on the page is the manufacturer's barcode, so the same garment can be matched to the same garment at another retailer without guessing from product titles.

Related Case Studies

The Entire Iherb Supplements Catalog, Captured End-to-End in 3 Days

The Entire Iherb Supplements Catalog, Captured End-to-End in 3 Days

Scraping supplement products from iHerb.com with full details, including descriptions and packaging variations.

Learn More about The Entire Iherb Supplements Catalog, Captured End-to-End in 3 Days
The Lowest Allegro Prices from 150K Eans Collected

The Lowest Allegro Prices from 150K Eans Collected

Daily scraping of lowest prices for 150K products on Allegro.pl to support marketplace pricing and margin optimization.

Learn More about The Lowest Allegro Prices from 150K Eans Collected
Ralph Lauren Monitoring on Amazon, 8 Markets Scanned Into One Clean Dataset

Ralph Lauren Monitoring on Amazon, 8 Markets Scanned Into One Clean Dataset

Regular monitoring of Ralph Lauren clothing, footwear, and accessories sold across Amazon subdomains: AE, DE, ES, FR, IT, NL, PL, UK.

Learn More about Ralph Lauren Monitoring on Amazon, 8 Markets Scanned Into One Clean Dataset
Our Blog

Reads Our Latest News & Blog

Learn how to use web scraping to solve data problems for your organization

6 E-Commerce Sites Like eBay to Scrape in 2026

6 E-Commerce Sites Like eBay to Scrape in 2026

If you sell online, run a marketplace, or advise e-commerce clients, you already know why eBay matters: it’s one of the few places where big retailers compete side by side with thousands of small merchants and private sellers.

Top 8 E-commerce Websites to Scrape in 2026 (From Amazon to 1688)

Top 8 E-commerce Websites to Scrape in 2026 (From Amazon to 1688)

E-commerce teams do not just need “some” competitor data anymore. They need a continuous stream of real prices, discounts, stock levels, reviews, and seller behavior from the platforms that actually shape their markets.

How to Scrape Amazon Data: Benefits, Challenges & Best Practices

How to Scrape Amazon Data: Benefits, Challenges & Best Practices

Amazon provides valuable information gathered in one place: products, reviews, ratings, exclusive offers, news, etc. So scraping data from Amazon will help solve the problems of the time-consuming process of extracting data from e-commerce.

scrapeit logo

Working with ScrapeIt

ScrapeIt is a managed service, not a tool you install and maintain. We have run comparable fashion work, including regular monitoring of Ralph Lauren clothing, footwear and accessories across eight Amazon markets consolidated into one clean dataset. Beyond ASOS we cover other retailers and marketplaces, real estate portals, automotive platforms, job boards and classifieds. When ASOS revises its front end we repair the parser and re-run; that maintenance is part of the engagement rather than a separate invoice.

FAQ

Does ASOS have a public API for product data?

No. ASOS did run a public developer portal at developer.asos.com years ago, but it is long gone - the Internet Archive's last capture of that site is from December 2017, and there is no current published product API or partner feed. The endpoints you may see referenced are internal interfaces the storefront calls to render its own pages; they are private, unsupported and can change without notice, so we do not build client deliveries on them. Products sold elsewhere as an ASOS API are third-party scrapers, not anything ASOS operates. We work from the public pages and the published sitemaps.

Can you limit the ASOS scraper to specific brands or categories?

Yes, and ASOS makes the scoping unusually clean, because the brand is the first path segment of every product URL and every category is a numeric id. One caution worth knowing before you plan the job: the brand slug encodes fit range as well as brand, so a single label can appear as four separate slugs with petite, plus and tall variants alongside the base one, and ASOS own-label splits across asos-design, asos-curve, asos-edition and others. We normalise these into one brand column and keep the raw slug beside it so nothing is lost.

What format do you deliver ASOS data in?

CSV, XLSX or JSON, whichever drops into your stack with least friction, or an API endpoint if you would rather poll than receive files. Prices are delivered as a numeric value with the currency in a separate column. Size data can be nested, one row per product with a size array, or flattened to one row per size with the EAN on every line, which is the shape you want if the end goal is barcode matching against other retailers.

How do you keep the ASOS scraper working when the site changes?

We monitor field-level output, not just whether a run finished. If a field starts arriving empty across a run, such as a price object that stops populating or a size array that collapses to nothing, it flags before the file reaches you. ASOS revises its front end regularly, so we adjust the parsing rules and re-run. That maintenance is included for the life of the project.

Can you scrape ASOS prices from more than one country?

Yes. ASOS publishes a separate product sitemap index for each of its eleven storefronts, so the country dimension is built into the site rather than something we have to infer from redirects. We can run the same product list across markets and return one row per product per storefront in local currency. That is how brand teams find the market where their own product is being discounted hardest, and how retailers spot a price gap that only exists in one country.

How does it Work?

Step 1 - Make a Request

You share your needs, expectations, and desired timeframe. We’ll suggest the best solution based on your request and budget.

Step 2 - Configuring Custom Web Crawlers

Our specialists configure the crawlers and extract a sample dataset for your review before proceeding with the full-scale extraction.

Step 3 - Collect and Deliver

Once you approve the sample, we launch the project and start full data collection. We gather, filter, and structure the data for easy use, delivering it on time in your preferred format.

Step 4 - Maintain and Support

Our team manages ongoing processes, monitors website changes, and supports all data extraction cycles. We can also help integrate data into your systems or create dashboards to simplify analysis.

Request a Quote

Tell us more about you and your project information.
Which sites, which fields, how often. A couple of lines is enough.

We reply within 1 business day. No obligation.

scrapiet

Scrapeit Sp. z o.o.
10/208 Legionowa str., 15-099, Bialystok, Poland
NIP: 5423457175
REGON: 523384582