Fragrantica Scraper
Pricing
from $2.00 / 1,000 results
Fragrantica Scraper
[π° $2.0 / 1K] Extract perfume data from Fragrantica: names, brands, the full note pyramid, main accords, perfumers, ratings, and longevity/sillage/season vote breakdowns. Search by keyword or paste perfume, designer, note, or perfumer URLs. Optional user reviews.
Pricing
from $2.00 / 1,000 results
Rating
0.0
(0)
Developer
SolidCode
Maintained by CommunityActor stats
0
Bookmarked
3
Total users
2
Monthly active users
3 days ago
Last modified
Categories
Share
Pull structured fragrance data from Fragrantica at scale β the full top/middle/base note pyramid, main accords with strength percentages, perfumer credits, community ratings with exact vote counts, and optional user reviews for any perfume. Built for fragrance e-commerce teams, perfume bloggers and reviewers, market researchers, and scent-app developers who need clean, structured fragrance data without copy-pasting perfume pages one bottle at a time.
Why This Scraper?
- Full 3-tier note pyramid per perfume β every fragrance returns its complete top, middle, and base notes as separate arrays, so you can model how a scent opens, settles, and dries down.
- Main accords with strength percentages β not just labels like "woody" or "sweet", but each accord's 0β100% intensity bar exactly as Fragrantica scores it.
- Perfumer ("nose") attribution β the named creators behind each fragrance, captured per perfume for designer-roster and house analysis.
- Community rating plus exact rating count β the average score and the precise number of votes behind it (e.g. 11,876 ratings on Chanel No 5), so you can weight popularity by sample size.
- Up to ~200 most-recent user reviews per perfume β opt-in full review text with author, date, and language, capped per perfume so result counts stay predictable.
- Four entry points in one actor β keyword search, or paste a perfume, designer, note, or perfumer URL. Designer, note, and perfumer pages auto-expand into their full perfume roster (every Tom Ford fragrance, or every perfume that features Oud).
- 13 international Fragrantica editions β pull results in English, French, German, Spanish, Italian, Portuguese, Dutch, Polish, Russian, Japanese, Korean, Arabic, or Turkish.
- Launch year, gender, brand, and popularity ranking β each perfume carries its release year, gender classification, designer/brand, and a popularity score for trend and catalog analysis.
Use Cases
E-commerce & Retail
- Enrich product catalogs with note pyramids and accords for "shop by scent" filters
- Build fragrance comparison pages backed by real community ratings
- Map a competitor's full house roster from a single designer URL
- Surface launch-year data to flag new releases versus discontinued classics
Market Research
- Track which notes and accords dominate top-rated fragrances by year
- Benchmark a brand's average rating and vote volume against rivals
- Analyze gender classification trends across a category or house
- Quantify popularity by combining rating count and popularity score
Fragrance Apps & Recommendation Engines
- Power scent-matching engines with structured top/middle/base note data
- Cluster perfumes by shared accords and perfumer signatures
- Feed "smells like" recommendations from note-pyramid similarity
- Build note-based discovery (pull every perfume featuring a given note)
Content & Affiliate
- Generate data-rich fragrance roundups and "best of" lists with ratings
- Source perfumer credits and launch years for editorial accuracy
- Aggregate real user reviews to summarize community sentiment
- Localize content for 13 markets from a single run
Brand Monitoring
- Watch a house's roster, ratings, and review volume over time
- Detect newly indexed fragrances on a designer page
- Track rating-count growth to gauge momentum on key releases
Getting Started
Basic Keyword Search
The simplest run β one search, defaults for everything else:
{"searchQueries": ["Chanel No 5"],"maxResults": 25}
Scrape a Designer's Full Roster
Paste a designer, note, or perfumer URL and it expands into every listed perfume:
{"startUrls": ["https://www.fragrantica.com/designers/Tom-Ford.html","https://www.fragrantica.com/notes/Oud-75.html"],"maxResults": 100}
Full-Featured Run (Reviews + Localization)
Search and direct URLs together, with reviews enabled and a Spanish-edition locale:
{"searchQueries": ["vanilla", "Sauvage"],"startUrls": ["https://www.fragrantica.com/perfume/Creed/Aventus-9828.html"],"maxResults": 200,"includeReviews": true,"maxReviewsPerPerfume": 50,"language": "es"}
Input Reference
What to Scrape
| Parameter | Type | Default | Description |
|---|---|---|---|
searchQueries | string[] | ["Chanel No 5"] | Keywords to search β a perfume name, brand, or note. Each query runs independently. |
startUrls | string[] | [] | Fragrantica URLs to scrape. Supports a single perfume, or a designer, note, or perfumer page. Designer/note/perfumer pages expand into all of their listed perfumes. Type is auto-detected. |
Results
| Parameter | Type | Default | Description |
|---|---|---|---|
maxResults | integer | 100 | Maximum perfumes to return across all queries and URLs. Set to 0 for unlimited. Start with 10β50 to test, then scale up. |
Reviews
| Parameter | Type | Default | Description |
|---|---|---|---|
includeReviews | boolean | false | Also collect user reviews for each perfume. Off by default. When on, each review is returned as its own result. |
maxReviewsPerPerfume | integer | 20 | Maximum reviews per perfume when reviews are on. Set to 0 for all available (up to ~200 most-recent). Ignored when reviews are off. |
Localization
| Parameter | Type | Default | Description |
|---|---|---|---|
language | select | English | Edition/locale for results: English, French, German, Spanish, Italian, Portuguese, Dutch, Polish, Russian, Japanese, Korean, Arabic, or Turkish. |
Output
Every row carries a recordType field β perfume, designer, or review β so you can filter cleanly downstream.
Perfume (recordType: "perfume")
{"recordType": "perfume","perfumeId": "9828","name": "Aventus","url": "https://www.fragrantica.com/perfume/Creed/Aventus-9828.html","brand": "Creed","brandUrl": "https://www.fragrantica.com/designers/Creed.html","gender": "for men","year": 2010,"imageUrl": "https://fimgs.net/mdimg/perfume/375x500.9828.jpg","ratingValue": 4.36,"ratingCount": 25431,"reviewsCount": 210,"mainAccords": [{ "name": "fruity", "strength": 100 },{ "name": "woody", "strength": 78 },{ "name": "smoky", "strength": 52 }],"notesTop": ["Bergamot", "Black Currant", "Apple", "Pineapple"],"notesMiddle": ["Birch", "Patchouli", "Moroccan Jasmine", "Rose"],"notesBase": ["Musk", "Oak Moss", "Ambergris", "Vanilla"],"perfumers": ["Olivier Creed", "Erwin Creed"],"popularityScore": 18742,"language": "en"}
Core Fields
| Field | Type | Description |
|---|---|---|
recordType | string | Always "perfume" |
perfumeId | string | Fragrantica numeric perfume ID |
name | string | Perfume name |
url | string | Canonical perfume URL |
brand | string | Designer / brand name |
brandUrl | string | Designer page URL |
gender | string | for women, for men, or unisex |
year | number | Launch year (nullable) |
imageUrl | string | Bottle image URL |
language | string | Edition/locale of the result |
Scent Profile
| Field | Type | Description |
|---|---|---|
mainAccords | object[] | Accords as {name, strength}, strength 0β100 |
notesTop | string[] | Top (opening) notes |
notesMiddle | string[] | Middle (heart) notes |
notesBase | string[] | Base (dry-down) notes |
perfumers | string[] | Perfumer ("nose") names |
Ratings & Popularity
| Field | Type | Description |
|---|---|---|
ratingValue | number | Average community rating, 0β5 (nullable) |
ratingCount | number | Exact number of ratings behind the average |
reviewsCount | number | Number of user reviews on the perfume |
popularityScore | number | Popularity metric (populated for search-sourced perfumes) |
Designer (recordType: "designer")
Emitted when a designer, note, or perfumer URL is the entry point β followed by a perfume row for each fragrance in the roster.
{"recordType": "designer","name": "Tom Ford","url": "https://www.fragrantica.com/designers/Tom-Ford.html","parentCompany": "The EstΓ©e Lauder Companies","country": "United States","perfumeCount": 156,"language": "en"}
| Field | Type | Description |
|---|---|---|
recordType | string | Always "designer" |
name | string | Designer / brand name |
url | string | Designer page URL |
parentCompany | string | Parent company (nullable) |
country | string | Country of origin (nullable) |
perfumeCount | number | Number of perfumes listed for the house |
language | string | Edition/locale of the result |
Review (recordType: "review")
Emitted only when includeReviews: true. Returns up to ~200 of the most-recent reviews per perfume, capped by maxReviewsPerPerfume.
{"recordType": "review","perfumeId": "9828","perfumeUrl": "https://www.fragrantica.com/perfume/Creed/Aventus-9828.html","author": "scenthunter","date": "2026-03-12","text": "The opening is an explosion of pineapple and bergamot that settles into a smoky birch...","language": "en"}
| Field | Type | Description |
|---|---|---|
recordType | string | Always "review" |
perfumeId | string | Parent perfume ID |
perfumeUrl | string | Parent perfume URL |
author | string | Reviewer username |
date | string | Review date (ISO when available) |
text | string | Full review body |
language | string | Edition/locale of the review |
Tips for Best Results
- Start small to test. Set
maxResultsto 10β50 on a first run to confirm the data matches your needs, then scale up. - Paste a note URL to pull every perfume featuring a scent. A note page like the one for Oud expands into hundreds of fragrances that share that note β the fastest way to build a single-note dataset.
- Use a designer or perfumer URL to grab a whole roster. One designer URL returns the brand's entire catalog; a perfumer URL returns every fragrance that nose created.
- Keep reviews off unless you need them. Reviews are opt-in and each one counts as a result β leave
includeReviewsoff when you only need perfume profiles to keep runs lean. - Cap reviews on popular perfumes. A blockbuster fragrance can carry ~200 reviews; set
maxReviewsPerPerfumeto a modest number (10β25) to bound result counts. - Mix searches and URLs in one run. Combine
searchQuerieswithstartUrlsto gather a topic survey and specific perfumes you already know in a single pass. - Match the locale to your audience. Set
languageto one of the 13 editions to get perfume text and reviews in the right market language.
Pricing
$2.00 per 1,000 results β flat, pay-per-result pricing for the richest structured fragrance dataset available, including the full note pyramid, accords, and perfumer credits.
| Results | Estimated Cost |
|---|---|
| 100 | $0.20 |
| 1,000 | $2.00 |
| 10,000 | $20.00 |
| 100,000 | $200.00 |
No compute charges β you only pay per result returned. A perfume counts as one result, and a review counts as one result. Platform storage fees depend on your Apify plan.
Integrations
Export data in JSON, CSV, Excel, XML, or RSS. Connect to 1,500+ apps via:
- Zapier / Make / n8n β Workflow automation
- Google Sheets β Direct spreadsheet export
- Slack / Email β Notifications on new results
- Webhooks β Trigger custom APIs on run completion
- Apify API β Full programmatic access
Legal & Ethical Use
This actor is designed for legitimate fragrance research, catalog enrichment, market analysis, and content creation. Users are responsible for complying with applicable laws and Fragrantica's terms of service, including making reasonable-rate requests and respecting content usage rules. User-generated reviews may contain personal opinions β handle this data responsibly and do not use it for spam, harassment, or any illegal purpose.