Ulta Beauty Product Search
Pricing
from $3.00 / 1,000 results
Ulta Beauty Product Search
Stop manual searching! Automate your Ulta Beauty product discovery. Scrape thousands of listings with advanced filters like Best Sellers, Top Rated, and Price: Low to High. Perfect for competitive analysis, price monitoring, and beauty trend tracking. No-code required!
Pricing
from $3.00 / 1,000 results
Rating
0.0
(0)
Developer

Sachin Kumar Yadav
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
π Ulta Beauty Search Products Scraper β Discover & Extract Product Listings
π Search Ulta Beauty products by keyword with advanced filters. Get product name, brand, pricing (regular & sale), ratings, review count, images, badges, and availability. Supports sorting, category filtering, price range, rating filter, special offers, and multi-page results. Built with Apify best practices for reliability and speed.
π Table of Contents
- β¨ Features
- π― Use Cases
- β‘ Quick Start
- π Input Parameters
- π€ Output Format
- β FAQ
- π οΈ Troubleshooting
- π·οΈ Tags
β¨ Features
- Multi-Keyword Search β Search multiple keywords in a single run
- Advanced Sorting β Sort by relevance, best sellers, price (low/high), new arrivals, or top rated
- Category Filtering β Filter by makeup, skin care, hair, fragrance, tools & brushes, and more
- Price Range β Set minimum and maximum price filters
- Rating Filter β Filter products by minimum star rating
- Special Offers β Find products on sale or with free gifts (GWP)
- Multi-Page Results β Fetch up to 10 pages per query (64 products per page)
- Store Availability β Check local store stock by store ID
- Resilient β Retries, rate-limit handling, and clear error messages
π― Use Cases
| Use Case | Description | Key Benefits |
|---|---|---|
| π Product Discovery | Search trending beauty products by keyword | Find new products, explore categories |
| π° Price Monitoring | Track prices and sale events across products | Deal alerts, competitive pricing |
| π Market Research | Analyze ratings, review counts, and brand presence | Trend analysis, competitive benchmarking |
| ποΈ Catalog Building | Build product catalogs from search results | E-commerce enrichment, product feeds |
| π Deal Hunting | Find products on sale or with free gifts | Savings, promotional analysis |
| π€ Data Pipelines | Feed structured search data to your systems | Automation, dashboards, ML models |
β‘ Quick Start
1οΈβ£ Basic β Single Keyword
{"searchQueries": ["lipstick"]}
2οΈβ£ With Filters β Best Sellers Under $50
{"searchQueries": ["lipstick"],"sort": "best_sellers","maxAmount": 50}
3οΈβ£ Bulk β Multiple Keywords with Filters
{"searchQueries": ["lipstick", "moisturizer", "foundation"],"sort": "top_rated","category": "makeup","rating": "4","maxPages": 2}
π Input Parameters
| Parameter | Type | Required | Description | Example |
|---|---|---|---|---|
searchQueries | Array<String> | β Yes | Keywords to search on Ulta Beauty | ["lipstick", "moisturizer"] |
sort | String | No | Sort order | "best_sellers" |
category | String | No | Filter by product category | "makeup" |
specialOffer | String | No | Filter by offers (sale or gwp) | "sale" |
rating | String | No | Minimum star rating (1 to 5) | "4" |
minAmount | Integer | No | Minimum price in USD | 10 |
maxAmount | Integer | No | Maximum price in USD | 50 |
maxPages | Integer | No | Pages per query (default: 1, max: 10) | 2 |
storeId | String | No | Ulta store ID for local stock | "1152" |
βοΈ Sort Options
| Value | Description |
|---|---|
relevance | Relevance (Default) |
best_sellers | Best Sellers |
price_asc | Price: Low to High |
price_desc | Price: High to Low |
new_arrivals | New Arrivals |
top_rated | Top Rated |
π Category Options
| Value | Description |
|---|---|
makeup | Makeup |
skin-care | Skin Care |
hair | Hair |
fragrance | Fragrance |
tools-brushes | Tools & Brushes |
bath-body | Bath & Body |
men | Men |
gifts | Gifts |
luxury-at-ulta-beauty | Luxury at Ulta Beauty |
travel-size-mini | Travel Size & Mini |
π€ Output Format
π§Ύ Product Data Structure
{"searchQuery": "lipstick","appliedSort": "relevance","pagesFetched": 1,"productId": "pimprod2036844","skuId": "2605054","productName": "Rouge Dior Forever Liquid Lipstick","brandName": "Dior","productUrl": "https://www.ulta.com/p/rouge-dior-forever-liquid-lipstick-pimprod2036844?sku=2605054","imageUrl": "https://media.ultainc.com/i/ulta/2605054","listPrice": "$48.00","salePrice": null,"discount": null,"promoText": "Free Gift with purchase","rating": 4.6,"reviewCount": 3196,"badge": null,"sponsored": false,"isLimitedStock": false}
π Output Fields Explained
οΏ½ Search Context
| Field | Type | Description |
|---|---|---|
searchQuery | String | The keyword used to search |
appliedSort | String | Sort order applied |
pagesFetched | Integer | Number of pages fetched |
π¦ Product Information
| Field | Type | Description |
|---|---|---|
productId | String | Ulta product ID |
skuId | String | SKU identifier |
productName | String | Product name/title |
brandName | String | Brand name |
productUrl | String | Direct product page URL |
imageUrl | String | Product image URL |
π° Pricing
| Field | Type | Description |
|---|---|---|
listPrice | String/null | Regular list price |
salePrice | String/null | Sale price (if on sale) |
discount | String/null | Discount info (if applicable) |
promoText | String/null | Promotional text (e.g., "Free Gift with purchase") |
β Ratings
| Field | Type | Description |
|---|---|---|
rating | Number/null | Average star rating (out of 5) |
reviewCount | Integer/null | Total number of reviews |
π·οΈ Status Flags
| Field | Type | Description |
|---|---|---|
badge | String/null | Product badge (e.g., "Online only", "Only at Ulta") |
sponsored | Boolean | Whether the product is a sponsored listing |
isLimitedStock | Boolean | Whether the product has limited stock |
β FAQ
-
Q: What input do I need?
- At least one search keyword in the
searchQueriesarray.
- At least one search keyword in the
-
Q: Can I search multiple keywords at once?
- Yes! Add multiple keywords to the
searchQueriesarray (up to 20). Each keyword is searched separately and all results are saved.
- Yes! Add multiple keywords to the
-
Q: How does pagination work?
- The API is cumulative. Setting
maxPages: 2fetches pages 1 + 2 combined in a single call. Each page has up to 64 products.
- The API is cumulative. Setting
-
Q: What's the difference between
saleandgwpspecial offer?saleshows only discounted products.gwp(Gift With Purchase) shows products that come with a free gift.
-
Q: What if no results are found?
- An error entry is saved for that query with a clear message. Other queries continue processing normally.
-
Q: Can I filter by price range?
- Yes! Use
minAmountandmaxAmountto set a price range in USD (e.g.,minAmount: 10,maxAmount: 50).
- Yes! Use
-
Q: Can I check local store availability?
- Yes! Pass a
storeIdto filter products by a specific Ulta Beauty store's in-stock status.
- Yes! Pass a
π οΈ Troubleshooting
| Issue | Cause | Solution |
|---|---|---|
| β "At least one search query required" | Empty searchQueries array | Add at least one keyword |
| β "No results found" | Invalid query or too-narrow filters | Try a broader keyword or remove filters |
| β οΈ "Rate limit hit" | Too many requests | The actor auto-retries with backoff; no action needed |
| β±οΈ Slow runs | Many queries + many pages | Reduce maxPages or number of keywords per run |
| π’ Missing products | Only 64 results | Increase maxPages to fetch more results |
π·οΈ Tags
ulta beauty scraper, ulta search scraper, ulta beauty product search, beauty product scraper, ulta price scraper, ulta beauty data extractor, ulta product discovery, beauty product data, ulta beauty api, apify actor, ulta beauty research, cosmetics scraper, skincare product scraper, beauty price monitoring, ulta beauty rating, beauty market research, ulta beauty catalog, ulta beauty deals, ulta beauty sale finder, product search scraper
π Get Started Now
Ready to search Ulta Beauty products?
- π Enter one or more search keywords
- ποΈ Apply optional filters (sort, category, price range, rating)
- βΆοΈ Click Start to run the actor
- π₯ Download your data in JSON, CSV, Excel, or HTML format
- Click "Try for free" to test the actor
β If this actor helps your workflow, please give it a star!
Built with β€οΈ by Sachin Kumar Yadav using Apify Platform