logoPandorLabs
High street & fast fashion

H&M Product Data

Prices, variants, availability, and images from hm.com — normalised, validated, and delivered into your stack. No collector to build, and none to maintain.

source specification

Source
hm.com
Segment
High street & fast fashion
Origin
Sweden — founded 1947 in Västerås
Categories
Womenswear, Menswear, Shoes, Accessories
Formats
JSON · CSV · Parquet
Refresh
Continuous to daily

about the source

What H&M sells, and how its catalogue behaves

H&M is one of the largest apparel retailers in the world and operates at a scale that makes its catalogue useful as a market-wide index rather than a single competitor view. The assortment spans core basics that persist for years alongside trend pieces with short lifecycles, and the two behave very differently in a price series — which is precisely what makes the source interesting.

why teams track it

Why H&M data is worth having

H&M is the volume anchor of the mass market, so its entry price on a category effectively sets the floor everyone else is measured against. Retail analysts use the feed for basket-level price indices, and private-label teams use it to check whether their own margin assumptions still hold as H&M moves.

Visit hm.com

collection method

How we collect H&M

H&M is collected through H&M's listing API together with the article endpoints that back its product pages, so variant and stock detail arrives structured. Every source gets a dedicated collector rather than a generic crawler, because the field detail that makes this data useful only survives if the extraction is built for the site it runs against.

Structured at the source

Records are read from hm.com's own structured responses wherever they exist, rather than reconstructed from page markup. That keeps the feed stable across visual redesigns.

Validated every run

Each field is checked against expected types and historical ranges. A collector producing anomalies is quarantined and repaired upstream instead of emitting bad prices into your pipeline.

Normalised to one schema

Every brand in the catalogue lands on the same schema, so adding a source is a configuration change on your side rather than another integration to write.

15min
Fastest refresh
99.9%
Uptime SLA
3
Delivery formats
49+
Fashion sources

what you get back

Fields in the H&M feed

A normalised core that is identical across every source, plus the attributes that are specific to this one.

Standard across every source

  • Product name, brand, and source URL
  • Current price, original price, and currency
  • Category and subcategory as the source classifies them
  • Colour, size, and variant availability
  • Product images, deduplicated across variants
  • Description, composition, and care text
  • Collection timestamp on every record

Specific to H&M

  • Article-level variants with per-colour codes and imagery
  • Marked-down price alongside the original list price
  • Materials and sustainability attributes where H&M publishes them
  • Availability signals per size where the storefront exposes them

SOC 2 Type II

Audited controls across security, availability, and confidentiality. Report available under NDA.

GDPR & CCPA

Public catalogue data only. No personal data collected, and a DPA is available on request.

99.9% Uptime SLA

Contractual availability with monitored collectors and a public status page.

Data residency

Choose EU or US processing and storage regions to match your obligations.

questions

Frequently Asked Questions

Everything you need to know before you send us your first request.

Yes. H&M exposes both the current selling price and the original price on discounted articles, and we carry both through as separate fields rather than collapsing them. That makes discount depth directly computable, which is usually the number pricing teams actually want rather than the sale price on its own.
We already run dedicated collectors for COS and Arket, both H&M Group labels, and they are delivered on the same schema. Running the group as one combined feed with a brand field is a supported configuration, so you can analyse the portfolio as a whole or split it back out per label.
Into the systems you already run, rather than through an API you have to integrate against. Normalised records land as JSON, CSV, or Parquet in S3, GCS, or Azure Blob, or straight into Snowflake or BigQuery, on whatever cadence you set. Webhooks can push price and availability changes as they are detected. A solutions engineer fixes the schema, cadence, and destination with you during onboarding, so the first delivery already matches your pipeline.
Maintaining the collector is our job, not yours. Every field is validated against expected types and historical ranges on each run, and a collector that starts producing anomalies is quarantined rather than allowed to emit bad records. We repair it upstream, and the schema we deliver to you does not move — which is the entire reason to buy this rather than run a scraper in-house.
We collect only publicly visible catalogue data — the prices, descriptions, images, and availability any shopper sees without logging in. We do not bypass authentication, we do not collect personal data, and we honour rate limits so the source is never disrupted. Our infrastructure is SOC 2 Type II certified, our processing is GDPR and CCPA compliant, and we sign DPAs as part of procurement.
Pricing is scoped per engagement, driven by catalogue size, refresh cadence, the number of locales you need, and the delivery destinations involved. Historical backfill is quoted separately. Every engagement starts with a free sample pulled from the live hm.com catalogue, so you can check the data against your own benchmarks before committing to anything.

Still have questions?

Talk to an engineer

Ready to Get Started?

Talk to us about your sources and volume. We'll return a sample dataset from your target sites before you commit to anything.

SOC 2 Type II
GDPR & CCPA compliant
99.9% uptime SLA

© 2026 PandorLabs, Inc. All rights reserved.