We extract makeup catalogues, shade variations, ingredient lists, pricing signals, and customer reviews from nyxcosmetics.com. Delivered as clean JSON, CSV, or Parquet to S3, BigQuery, or Snowflake on your cadence.
Structured, schema-consistent data across all major object types — delivered clean, typed, and ready to query.
Complete list of extractable fields for Product Catalogue objects from nyxcosmetics.com. All fields typed and schema-versioned.
"product_id": "NYX_800897192", "name": "Fat Oil Lip Drip", "category": "Lips", "sub_category": "Lip Gloss", "base_price": 9.0, "currency": "USD", "vegan_flag": true, "cruelty_free_flag": true
| # | product_id | name | category | sub_category | url | description |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | ||||||
| 3 |
Complete list of extractable fields for Shade Matrix objects from nyxcosmetics.com. All fields typed and schema-versioned.
"product_id": "NYX_800897192", "shade_name": "Missed Call", "shade_hex_code": "#FFB6C1", "sku": "800897192534", "stock_status": "IN_STOCK", "price": 9.0, "swatch_image_url": "https://nyxcosmetics.com/dw/image/v2/swatch_missed_call.jpg"
| # | product_id | shade_name | shade_hex_code | sku | upc | stock_status |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | ||||||
| 3 |
Complete list of extractable fields for Ingredients & Specs objects from nyxcosmetics.com. All fields typed and schema-versioned.
"product_id": "NYX_800897192", "finish_type": "Glossy", "coverage_type": "Sheer", "format_type": "Liquid", "net_weight": "4.8 ml", "benefits": "Hydrating, Non-sticky, High shine", "ingredients_text": "POLYISOBUTENE, HYDROGENATED POLYISOBUTENE, PENTAERYTHRITYL TETRAISOSTEARATE..."
| # | product_id | ingredients_text | how_to_apply | benefits | finish_type | coverage_type |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | ||||||
| 3 |
Complete list of extractable fields for Reviews & Ratings objects from nyxcosmetics.com. All fields typed and schema-versioned.
"review_id": "REV_9928173", "product_id": "NYX_800897192", "rating": 5, "review_title": "Best lip oil ever", "skin_type": "Combination", "eye_colour": "Brown", "age_range": "18-24", "date_posted": "2026-02-14"
| # | review_id | product_id | reviewer_name | rating | review_title | review_text |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | ||||||
| 3 |
Complete list of extractable fields for Pricing & Promos objects from nyxcosmetics.com. All fields typed and schema-versioned.
"product_id": "NYX_800897192", "sku": "800897192534", "base_price": 9.0, "sale_price": 7.2, "discount_pct": 20, "promo_text": "20% Off Sitewide", "currency": "USD", "timestamp": "2026-05-12T10:05:00Z"
| # | product_id | sku | base_price | sale_price | discount_pct | promo_text |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | ||||||
| 3 |
NYX Cosmetics relies heavily on dynamic front-end frameworks to display its massive shade matrices. Our pipeline parses the underlying state objects and APIs to deliver structured beauty data without missing a single SKU.
Map every parent product to its child shade variations, capturing SKU, UPC, shade name, hex codes, and swatch image URLs.
Monitor inventory availability at the variant level. Know exactly which shades are out of stock or backordered.
Extract full ingredient lists, vegan certifications, cruelty-free badges, and product benefit claims for compliance and analysis.
Capture customer reviews including demographic traits like skin type, eye colour, and age range to correlate sentiment with buyer profiles.
Track base prices, sale prices, sitewide discount banners, and loyalty point values across the entire catalogue.
Preserve the exact site hierarchy from main categories down to niche sub-categories like 'Lip Plumpers' or 'Setting Sprays'.
Extract high-resolution product images, shade swatches, and model application shots for your internal PIM or asset library.
Use region-specific residential proxies to capture localised pricing and availability for different NYX regional storefronts.
Run daily diffs to track new product drops, discontinued shades, and price changes without re-processing the entire site.
Brief in. Clean data out.
Specify categories, specific product URLs, or full-site extraction. We map the required fields and frequency.
We configure Scrapy extractors, handle API pagination for reviews, and manage residential proxy rotation.
Automated tests ensure shade matrices align with parent products and ingredient lists are fully parsed.
Clean JSON, CSV, or Parquet delivered to your S3 bucket, BigQuery, or Snowflake stage.
Cosmetics sites present unique data structures. Here is how we handle the complexity of nyxcosmetics.com.
A single NYX foundation can have 45 shades. Standard HTML scraping misses the variant data. We intercept the JSON state objects embedded in the page to extract the full matrix of SKUs, hex codes, and stock statuses.
Reviews on nyxcosmetics.com are loaded dynamically via third-party providers. We bypass the DOM and query the underlying review APIs directly, extracting the full historical corpus including user traits like skin type and eye colour.
Accessing the US storefront from external data centres often results in redirects or blocks. We route all requests through US-based residential ISP proxies to ensure consistent access to accurate pricing and inventory.
Stock status frequently updates via asynchronous calls after the initial page load. Our Playwright integration waits for network idle states to ensure we capture the true availability of every shade.
Product benefits and 'how to apply' instructions are often mixed in raw HTML blocks. We use custom parsers to clean and separate this text into distinct, queryable database columns.
Retailers and competing brands analyse shade ranges and category depth to identify gaps in their own product lines.
Track base prices and promotional discounting strategies across face, lip, and eye categories to optimise pricing models.
R&D teams extract ingredient lists to track the adoption of specific compounds, vegan formulations, and cruelty-free claims.
Marketing teams mine review data to understand product performance across different skin types and age demographics.
Monitor 'New Arrival' and 'Best Seller' badges combined with stockout rates to identify trending formats and colours.
Ensure third-party retailers are adhering to Minimum Advertised Price policies by comparing their prices against the direct-to-consumer site.
"Beauty data is highly dimensional. A single lipstick has 40 shades, each with its own inventory status, UPC, and swatch image."
Extracting from nyxcosmetics.com requires parsing complex front-end state objects to map parent products to their extensive shade variations. DataFlirt handles the JavaScript execution, proxy management, and schema normalisation so your data engineers receive clean, queryable beauty datasets instead of raw HTML dumps.
Everything supported by our nyxcosmetics.com scraper — rendered SPA elements, auth walls, rate-limit evasion and beyond.
Open-source tooling on proven cloud infra — no vendor lock-in, full observability.
Scrapy handles crawl orchestration and deduplication. Playwright handles JavaScript rendering, state object extraction, and API interception.
We maintain pools of residential ISP proxies to ensure consistent access and bypass regional redirects.
Pipelines run on AWS Lambda and ECS. Airflow handles scheduling, dependency management, and SLA alerting.
Data delivered to where your team already works — no new tooling required.
About nyxcosmetics.com scraping, legality, and pipeline operations.
Ask us directly →Scraping publicly available product catalogues, prices, and reviews is generally permissible under applicable law. DataFlirt targets only public, non-authenticated data. We do not bypass login walls or extract personal customer information.
We do not rely on clicking through the UI. Our scrapers parse the underlying JSON state objects embedded in the page source, extracting the complete matrix of SKUs, hex codes, stock statuses, and prices instantly.
Yes. Inventory status is captured at the SKU/variant level, not just the parent product level. You will know exactly which shades are unavailable.
Yes. We extract the full review corpus including star ratings, text, and user-submitted traits like skin type, eye colour, and age range by querying the underlying review provider APIs directly.
Yes. The pipeline extracts the absolute URLs for product shots, shade swatches, and model application images. We can deliver the URLs or download the assets directly to your S3 bucket.
Pipelines can be configured to run daily or at specific hourly intervals to capture flash sales, site-wide promo banner text, and dynamic price adjustments.
Yes. By routing requests through region-specific residential proxies, we can extract localised catalogues, pricing, and availability for different international NYX domains.
20-minute scoping call. Pilot dataset within the week. Production within two. From single category tracking to daily full-site shade and price extraction — we build and operate the infrastructure. Tell us your data requirements.