Ecommerce · Vibe Scraping
Pricing
from $2.00 / 1,000 results
Ecommerce · Vibe Scraping
Extract product data from *any* ecommerce website. AI-built crawlers, consistent output schema across all stores.
Pricing
from $2.00 / 1,000 results
Rating
5.0
(2)
Developer

Extralt
Actor stats
2
Bookmarked
4
Total users
2
Monthly active users
3 days ago
Last modified
Categories
Share
Ecommerce · Vibe Scraping
One actor, any ecommerce website
Part of our Vibe Scraping series:
AI-built crawlers to extract data with a consistent schema across all websites in a vertical.
⚠️ Beta Release
This actor is currently in beta (version 0.x.x). While we strive for high-quality extraction across all websites, you may encounter issues with certain sites or configurations. We're actively improving the system based on extraction results and customer feedback. If you experience any problems or have suggestions, please report them on the issues tab.
🔥 Key Features
- Universal Coverage: Works on any ecommerce site → no more hunting for site-specific actors
- Consistent Schema: Same data structure across all ecommerce sites → no per-site field mapping needed
- Blazing Fast: Built from scratch in 100% Rust → target throughput of up to 50 pages/second (3,000 pages/minute)
✨ Use Cases
- Price Intelligence: Monitor competitor pricing across multiple stores with consistent data
- Inventory Tracking: Track product availability and variants across brands
- Market Research: Aggregate product catalogs from entire verticals
- Data Integration: One schema works across all sources to plug directly into your pipeline
💡 About us
We are Extralt, and we are rethinking web scraping from the ground up. Traditional scrapers break when websites change. AI-powered scrapers are too slow and expensive to scale. We built an alternative: crawlers generated by AI but run as compiled code, combining the adaptability of LLMs with the speed of custom-built extractors. We handle all the complexity behind the scenes, you get enterprise-scale performance.
This gives you the best of both worlds:
- AI-level adaptability: works with any website
- Code-level performance: as fast as custom-built scrapers
🪙 Pricing
This actor uses a pay-per-event pricing model, you only pay for successfully extracted products:
| Subscription | Discount | Price per product |
|---|---|---|
| Starter | Bronze | $0.004 |
| Scale | Silver | $0.003 |
| Business | Gold | $0.002 |
Example: Extracting 1,000 products on a Business plan costs: 1,000 × $0.002 = $2.00
All-inclusive pricing: We only use premium residential proxies, with no hidden costs or add-ons.
Why paid plans only? Apify excludes free plan users from revenue calculations (see docs), so we restrict this actor to paying customers only.
Concurrent runs: You can run up to 3 Extralt actors simultaneously. If you need more concurrent runs, please wait for one to finish before starting a new one. This number will increase as we scale up our infrastructure.
⬇️ Input
The actor requires 3 parameters:
-
Start URLs One or more URLs to begin crawling.
The crawler intelligently adapts based on the URL type:- Catalog/Category Page: Extracts all products from the category, following pagination automatically
- Any other page type: Attempts to parse the sitemap, or crawls by following internal links
Respect these constraints:
-
This actor uses an extraction schema tailored to the ecommerce vertical, so only ecommerce URLs are allowed
-
Only 1 host allowed: if you provide multiple URLs, they must all have the same host
-
URL(s) should match the target country (e.g.,
https://www.nike.com/frfor France)
Note that during the Apify Challenge, scraping the following websites is not allowed: YouTube, LinkedIn, Instagram, Facebook, TikTok, X, Apollo.io, Amazon, Google Maps, Google Search, Google Trends.
-
Budget The crawler will run until the budget is reached or no more URLs are found, whichever comes first.
-
Country Select the target country to route requests through the appropriate proxy location.
This ensures you're accessing the correct regional version of the website.
We only use high-quality residential proxies, and we will gradually add more countries to choose from.
⬆️ Output
We provide two views of the dataset (in addition to the All fields view):
Overview: All extracted fields including URL, data (as JSON object), timestamp, and cache status

Highlight: Key product fields: brand, title, subtitle, main image, and URL

Each extracted product is returned as a structured JSON object with:
Metadata
url: Product page URLextracted_at: Unix timestamp of extractioncached: Whether the result was served from our cache (see Result Caching for more details)
Product Data
The data field contains comprehensive product information extracted from the page (see below for the full schema).
Note: The exact fields extracted depend on what's available on the target website, and what the AI agent was able to extract. We are working on improving the extraction quality.
Here is the schema for the extracted data:
{"url": {"description": "Product page url","type": "url"},"product_id": {"description": "Primary product identifier","type": "string"},"brand": {"description": "Brand","type": "string"},"title": {"description": "Title or name","type": "string"},"subtitle": {"description": "Subtitle","type": "string"},"breadcrumbs": {"description": "Page navigation breadcrumbs","type": "string"},"categories": {"description": "List of categories names, often as a hierarchy of category and subcategories","type": "array"},"description": {"description": "Description","type": "string"},"main_image": {"description": "Main image of the product","type": "url"},"images": {"description": "List of image URLs in the carousel of the product details page","type": "array"},"videos": {"description": "List of video URLs of the product","type": "array"},"release_date": {"description": "Release or launch date of the product","type": "date"},"color": {"description": "Color","type": "string"},"pattern": {"description": "Pattern","type": "string"},"material": {"description": "Materials","type": "string"},"country_of_origin": {"description": "Country of origin or manufactoring","type": "string"},"gender": {"description": "Gender","type": "string"},"age_group": {"description": "Age group","type": "string"},"weight": {"description": "Product weight with unit","type": "string"},"dimensions": {"description": "Product dimensions","type": "string"},"properties_list": {"description": "A list of additional properties or specifications","type": "array"},"properties_dict": {"description": "Dictionary of additional properties","type": "dict"},"ratings": {"description": "Product ratings and reviews information","type": "record","properties": {"average_rating": {"description": "Average rating score","type": "number"},"rating_scale": {"description": "Maximum rating scale","type": "number"},"total_reviews": {"description": "Total number of reviews","type": "number"}}},"product_group": {"description": "Groups related products that each have their own page (e.g., same shirt in different colors with separate URLs like /shirt-blue, /shirt-red)","type": "record","properties": {"id": {"description": "Group identifier shared by all products in the group","type": "string"},"varies_by": {"description": "Attributes that have separate pages (e.g., [\"color\"] when each color has its own URL)","type": "array"},"attributes": {"description": "This product's attribute values (e.g., {\"color\": \"blue\"})","type": "dict"}}},"variants": {"description": "Different options of the same product on this page (e.g., sizes) selected via dropdowns/buttons without URL changes","type": "record","properties": {"varies_by": {"description": "Selectable attributes on this page (e.g., [\"size\"])","type": "array"},"list": {"description": "List of product variants","type": "array","items": {"description": "Details for one particular variant","type": "record","properties": {"identifiers": {"description": "Variant-specific identifiers","type": "record","properties": {"variant_id": {"description": "Customer-facing variant identifier as displayed on the page","type": "string"},"sku": {"description": "Stock Keeping Unit","type": "string"},"gtin": {"description": "Global Trade Item Number (barcode)","type": "string"}}},"attributes": {"description": "Variant attribute values (e.g., {\"size\": \"M\"})","type": "dict"},"main_image": {"description": "Variant-specific image","type": "url"},"offers": {"description": "Available offers for this variant.","type": "array","items": {"description": "Offer details from a specific seller.","type": "record","properties": {"id": {"description": "Offer identifier","type": "string"},"price": {"description": "Price details for this offer.","type": "record","properties": {"current_amount": {"description": "Current price amount.","type": "number"},"full_amount": {"description": "Full price amount before discount.","type": "number"},"currency": {"description": "Currency code (e.g., EUR, USD).","type": "string"},"on_sale": {"description": "Whether this offer is on sale.","type": "boolean"},"sale_percentage": {"description": "Percentage discount if on sale.","type": "number"}}},"seller": {"description": "Seller information.","type": "record","properties": {"name": {"description": "Name of the seller.","type": "string"},"kind": {"description": "Seller type (marketplace, reseller, or brand)","type": "enum","options": ["marketplace","reseller","brand"]},"id": {"description": "Seller identifier","type": "string"},"url": {"description": "Seller's store URL","type": "url"}}},"condition": {"description": "Product condition (new, used, refurbished)","type": "string"},"availability": {"description": "Stock information","type": "record","properties": {"available": {"description": "Whether available for purchase","type": "boolean"},"stock": {"description": "Stock details (e.g., \"In stock\", \"Only 3 left\")","type": "string"}}},"free_shipping": {"description": "Whether this offer includes free shipping.","type": "boolean"}}}}}}}}}}
Example output from https://www.nike.com:
{"url": "https://www.nike.com/t/247-perfectstretch-womens-dri-fit-oversized-trench-coat-HdxZHW/HV3627-010","data": {"age_group": "13+","brand": "Nike","breadcrumbs": null,"categories": ["Jackets"],"color": "Black/Dark Smoke Grey","country_of_origin": "Imported","description": "Lightweight and tailored with four-way stretch, our PerfectStretch fabric is designed to keep up with you all day long. A discreet bungee at the waist of this jacket lets you cinch for comfort and a personalized fit.","dimensions": null,"gender": "WOMEN","images": ["https://static.nike.com/a/images/t_default/ac77349c-d58d-47e4-b578-670f84e41721/W+NK+24.7+DF+TRENCH+JKT+WVN.png","https://static.nike.com/a/images/t_default/b255a928-58bc-494d-9a60-b02a91f3e22f/W+NK+24.7+DF+TRENCH+JKT+WVN.png","https://static.nike.com/a/images/t_default/ab681f46-b24f-49c0-b88d-37b78ce75dae/W+NK+24.7+DF+TRENCH+JKT+WVN.png","https://static.nike.com/a/images/t_default/7937a4f2-06ef-4934-8e2a-542819a9c2f4/W+NK+24.7+DF+TRENCH+JKT+WVN.png","https://static.nike.com/a/images/t_default/a0fbb436-87f8-4c5c-a45f-22724dc2e057/W+NK+24.7+DF+TRENCH+JKT+WVN.png","https://static.nike.com/a/images/t_default/5b84a07a-fcc4-4cf1-ada4-c14eccf00453/W+NK+24.7+DF+TRENCH+JKT+WVN.png","https://static.nike.com/a/images/t_default/5a717224-07ba-4faa-a20b-853bdd1d9ce2/W+NK+24.7+DF+TRENCH+JKT+WVN.png","https://static.nike.com/a/images/t_default/461361b9-5708-4780-b311-8a7da39f3aed/W+NK+24.7+DF+TRENCH+JKT+WVN.png"],"main_image": "https://static.nike.com/a/images/t_default/ac77349c-d58d-47e4-b578-670f84e41721/W+NK+24.7+DF+TRENCH+JKT+WVN.png","material": null,"pattern": null,"product_group": {"attributes": {"color": "Black/Dark Smoke Grey"},"id": "HdxZHW","varies_by": ["color"]},"product_id": "HV3627-010","properties_dict": {"origin": "Imported","care": "Machine wash"},"properties_list": ["Signature locker loop at back of neck","Front pockets","Full snap closure","Side pleats","Body: 83% polyester/17% spandex. Mesh: 91% polyester/9% spandex. Sleeve lining: 100% polyester.","Machine wash","Imported"],"ratings": null,"release_date": "2025-08-08T07:00:00.000Z","subtitle": "Women's Dri-FIT Oversized Trench Coat","title": "Nike 24.7 PerfectStretch","url": "https://www.nike.com/t/247-perfectstretch-womens-dri-fit-oversized-trench-coat-HdxZHW/HV3627-010","variants": {"list": [{"attributes": {"size": "XXS"},"identifiers": {"gtin": "00198484310484","sku": "8fa769cd-8513-5c88-86bd-76d5942d7342","variant_id": "8fa769cd-8513-5c88-86bd-76d5942d7342"},"main_image": "https://static.nike.com/a/images/t_default/ac77349c-d58d-47e4-b578-670f84e41721/W+NK+24.7+DF+TRENCH+JKT+WVN.png","offers": [{"availability": {"available": true,"stock": null},"condition": "new","free_shipping": null,"id": null,"price": {"currency": "USD","current_amount": 200,"full_amount": 200,"on_sale": false,"sale_percentage": 0},"seller": {"id": null,"kind": "brand","name": "Nike","url": "https://www.nike.com"}}]},{"attributes": {"size": "XS"},"identifiers": {"gtin": "00198484313997","sku": "9aa8a33c-af98-5f18-a3e3-561ce38a54c9","variant_id": "9aa8a33c-af98-5f18-a3e3-561ce38a54c9"},"main_image": "https://static.nike.com/a/images/t_default/ac77349c-d58d-47e4-b578-670f84e41721/W+NK+24.7+DF+TRENCH+JKT+WVN.png","offers": [{"availability": {"available": true,"stock": null},"condition": "new","free_shipping": null,"id": null,"price": {"currency": "USD","current_amount": 200,"full_amount": 200,"on_sale": false,"sale_percentage": 0},"seller": {"id": null,"kind": "brand","name": "Nike","url": "https://www.nike.com"}}]},{"attributes": {"size": "S"},"identifiers": {"gtin": "00198484306784","sku": "afe51b89-1dbc-50cc-b73f-390394e4fbeb","variant_id": "afe51b89-1dbc-50cc-b73f-390394e4fbeb"},"main_image": "https://static.nike.com/a/images/t_default/ac77349c-d58d-47e4-b578-670f84e41721/W+NK+24.7+DF+TRENCH+JKT+WVN.png","offers": [{"availability": {"available": true,"stock": null},"condition": "new","free_shipping": null,"id": null,"price": {"currency": "USD","current_amount": 200,"full_amount": 200,"on_sale": false,"sale_percentage": 0},"seller": {"id": null,"kind": "brand","name": "Nike","url": "https://www.nike.com"}}]},{"attributes": {"size": "M"},"identifiers": {"gtin": "00198484309129","sku": "911c8614-3750-563a-97b2-8a13f7a0cf8e","variant_id": "911c8614-3750-563a-97b2-8a13f7a0cf8e"},"main_image": "https://static.nike.com/a/images/t_default/ac77349c-d58d-47e4-b578-670f84e41721/W+NK+24.7+DF+TRENCH+JKT+WVN.png","offers": [{"availability": {"available": true,"stock": null},"condition": "new","free_shipping": null,"id": null,"price": {"currency": "USD","current_amount": 200,"full_amount": 200,"on_sale": false,"sale_percentage": 0},"seller": {"id": null,"kind": "brand","name": "Nike","url": "https://www.nike.com"}}]},{"attributes": {"size": "L"},"identifiers": {"gtin": "00198484300522","sku": "c5fa9a35-5577-5360-aa4c-c4328501c2e0","variant_id": "c5fa9a35-5577-5360-aa4c-c4328501c2e0"},"main_image": "https://static.nike.com/a/images/t_default/ac77349c-d58d-47e4-b578-670f84e41721/W+NK+24.7+DF+TRENCH+JKT+WVN.png","offers": [{"availability": {"available": true,"stock": null},"condition": "new","free_shipping": null,"id": null,"price": {"currency": "USD","current_amount": 200,"full_amount": 200,"on_sale": false,"sale_percentage": 0},"seller": {"id": null,"kind": "brand","name": "Nike","url": "https://www.nike.com"}}]},{"attributes": {"size": "XL"},"identifiers": {"gtin": "00198484314109","sku": "5fee5cf0-1cc3-501c-a4e4-135ddf912e73","variant_id": "5fee5cf0-1cc3-501c-a4e4-135ddf912e73"},"main_image": "https://static.nike.com/a/images/t_default/ac77349c-d58d-47e4-b578-670f84e41721/W+NK+24.7+DF+TRENCH+JKT+WVN.png","offers": [{"availability": {"available": true,"stock": null},"condition": "new","free_shipping": null,"id": null,"price": {"currency": "USD","current_amount": 200,"full_amount": 200,"on_sale": false,"sale_percentage": 0},"seller": {"id": null,"kind": "brand","name": "Nike","url": "https://www.nike.com"}}]},{"attributes": {"size": "2XL"},"identifiers": {"gtin": "00198484312570","sku": "7eca40a2-604c-5761-a6be-bbd6c3811f81","variant_id": "7eca40a2-604c-5761-a6be-bbd6c3811f81"},"main_image": "https://static.nike.com/a/images/t_default/ac77349c-d58d-47e4-b578-670f84e41721/W+NK+24.7+DF+TRENCH+JKT+WVN.png","offers": [{"availability": {"available": true,"stock": null},"condition": "new","free_shipping": null,"id": null,"price": {"currency": "USD","current_amount": 200,"full_amount": 200,"on_sale": false,"sale_percentage": 0},"seller": {"id": null,"kind": "brand","name": "Nike","url": "https://www.nike.com"}}]}],"varies_by": ["size"]},"videos": ["https://shortformvideo.nike.com/a/videos/7f1c003d-9902-48f1-bd2b-7b2904798ff4/video.mp4"],"weight": null},"extracted_at": 1764773403088,"cached": false}
You can download the dataset extracted by vibe-scraping-ecommerce in various formats such as JSON, HTML, CSV, or Excel.
⚙️ Under the hood
This actor uses an innovative approach to web scraping:
- First Run: When a new (website, country) combination is detected, our AI agent analyzes the site and generates a custom crawler (generally takes about 5 minutes)
- Subsequent Runs: The generated crawler is reused, extraction starts immediately
Infrastructure
The actual extraction workload runs on our dedicated Kubernetes infrastructure, not on Apify's platform. There might be a small delay when the crawl starts in Apify before our infrastructure is ready to actually start the crawl.
Built from Scratch in Rust
Our extraction engine is written in 100% Rust from the ground up, providing:
- Performance: Target up to 50 pages visited per second (3,000/minute)
- Robustness: Adapts to the website's structure and navigation, and to the data available on the page
- Stealth: Custom HTTP/browser implementations designed specifically for web scraping without detection
Result Caching
Results are cached for 12 hours. When requesting a recently crawled URL, you'll receive the cached data instantly instead of waiting for a fresh extraction. The extracted_at timestamp always reflects the actual extraction time, and the cached field indicates whether data was freshly extracted or served from cache.
This approach reduces load on target websites and lowers the risk of detection or bans.
🛠️ Troubleshooting
Extraction Taking Longer Than Expected?
First Run: If this is your first time crawling this website-country combination, the AI is generating a custom crawler. This takes approximately 2-3 minutes.
Infrastructure Delay: Your job may be queuing for resources on our Kubernetes cluster. This is typically brief (< 1 minute).
Results Don't Match Expected Schema?
The extraction adapts to what's available on each website. Some sites may not have all fields (e.g., reviews, videos, size variants). We are working on improving the extraction quality.
Getting Blocked or No Results?
The crawler is designed for stealth, but some websites have aggressive bot protection. Try:
- Reducing the crawl speed by decreasing the budget
- Ensuring you selected the correct country
- Verifying the start URL is accessible
🎙️ Feedback & Support
We're continuously improving the extraction quality and performance based on your feedback. If you encounter any issues:
- Technical Issues: Report bugs or unexpected behavior on the Issues tab
- Feature Requests: Let us know what additional data fields or capabilities you need
- Questions: Contact us through Apify support for assistance
Your feedback during this beta period is especially valuable in helping us build the best universal ecommerce scraper possible.