Pricing
from $1.50 / 1,000 results
Treatwell.co.uk UK Salon Scraper
Extract salon data from Treatwell.co.uk: venue names, locations, ratings, full service menus with prices, opening hours, GPS coordinates, and images. No proxy, no API key required.
Pricing
from $1.50 / 1,000 results
Rating
0.0
(0)
Developer
Actor stats
1
Bookmarked
3
Total users
2
Monthly active users
2 days ago
Last modified
Categories
Share
Treatwell Salon Scraper
Scrape salon and beauty venue data from Treatwell.co.uk at scale β up to 2,000+ venues per search. Extracts business information, service menus with prices, ratings, opening hours, coordinates, and images. No API key required.
Why this scraper?
π― Rich service data
Extracts the complete service menu for every salon β service name, duration, display price, original price, and discount type (off-peak, last-minute, sale). Captures up to 3 featured services from search results and all services from the venue detail page.
β Comprehensive ratings
Captures overall star rating and total review count directly from listing cards and venue pages β same data shown to Treatwell customers when choosing a salon.
π Precise location data
Extracts structured address, postcode, and GPS coordinates (latitude/longitude) from JSON-LD and venue detail pages for location-based analysis.
π Full opening hours
Fetches complete weekly opening schedules (MonβSun, open/close times or Closed) from each venue's detail page.
π·οΈ Venue tags and badges
Captures Treatwell-assigned tags such as "top-rated", "off-peak", "last minute", and "new" β useful for competitive analysis and discount monitoring.
πΌοΈ High-resolution images
Collects all venue image URLs in multiple sizes (360w, 720w, 1080w, 1280w) from Treatwell's CDN.
Input parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
treatment | string | hair | Treatment or category to search for. Examples: balayage, gel nails, deep tissue massage, ladies haircut, manicure, waxing, microblading. Broad categories also work: hair, nails, massage, face, body, hair-removal. |
location | string | london | City, town, or London neighbourhood. Examples: manchester, edinburgh, birmingham, bristol, shoreditch, camden, brixton, notting hill. |
maxResults | integer | 100 | Maximum number of venues to return. Controls spend β each page contains 20 venues. |
fetchDetails | boolean | true | Fetch each venue's detail page for full opening hours (MonβSun), complete service menu with prices, GPS coordinates, postcode, phone, and full description. Disable for a fast listing-only run. |
startUrls | array | [] | (Advanced) Scrape specific venue pages directly by URL β paste treatwell.co.uk/place/... URLs. When set, treatment and location are ignored. |
searchUrls | array | [] | (Advanced) Supply raw Treatwell browse URLs to override the URL builder entirely. When set, treatment and location are ignored. |
Output schema
Always present
| Field | Type | Description |
|---|---|---|
venueId | string | Treatwell venue slug (unique identifier, e.g. bottega-hair-salon) |
url | string | Full Treatwell venue URL |
name | string | Venue/salon name |
location | string | Neighbourhood and city as shown on listing card (e.g. Barnes, London) |
ratingValue | number | Average rating out of 5.0 (null if no reviews) |
reviewCount | integer | Total number of customer reviews |
images | array | Array of CDN image URLs in multiple sizes |
tags | array | Treatwell venue tags: top-rated, off-peak, last minute, new |
services | array | Up to 3 featured services from search listing, each with serviceId, name, duration, displayPrice, originalPrice, discountText |
source | string | Always treatwell.co.uk |
scrapedAt | string | ISO 8601 timestamp of when this record was scraped |
contentHash | string | MD5 fingerprint for change detection |
searchUrl | string | The search URL this venue was found on |
descriptionHtml | string | Venue description as HTML (null if unavailable) |
descriptionText | string | Venue description as plain text |
descriptionMarkdown | string | Venue description as Markdown |
With fetchDetails: true
| Field | Type | Description |
|---|---|---|
address | string | Full street address (null if not published) |
postalCode | string | UK postcode (null if not published) |
coordinates | object | { lat, lon } β GPS coordinates (null if not published) |
openingHours | array | Weekly schedule, each entry: { dayOfWeek, open, from, to } |
phone | string | Phone number if displayed on venue page (null if not published) |
amenities | array | Venue amenity tags (wheelchair access, parking, etc.) |
brands | array | Hair/beauty product brands used at the venue |
ratingDimensions | array | Category-level rating breakdown where available |
allServices | array | Complete service menu from detail page (more items than services) |
JSON example
{"venueId":"bottega-hair-salon","url":"https://www.treatwell.co.uk/place/bottega-hair-salon/","name":"Bottega Hair Salon","location":"Barnes, London","ratingValue":4.9,"reviewCount":671,"images":["https://cdn1.treatwell.net/images/view/v2.i8009934.w720.h480.x48033557/","https://cdn1.treatwell.net/images/view/v2.i8009933.w720.h480.xBBFDADA0/"],"tags":["top-rated","off-peak"],"services":[{"serviceId":"1359192819","name":"Glossy Blow Dry","duration":"1 hr","displayPrice":"from Β£49","originalPrice":null,"discountText":"save up to 90%"}],"address":"49 White Hart Ln, London SW13 0PP","postalCode":"SW13 0PP","coordinates":{"lat":51.4716,"lon":-0.2464},"openingHours":[{"dayOfWeek":"Monday","open":true,"from":"8:00 AM","to":"8:00 PM"},{"dayOfWeek":"Sunday","open":false,"from":null,"to":null}],"phone":null,"amenities":[],"brands":["Elgon","Olaplex","L'OrΓ©al"],"descriptionHtml":"<p>Benvenuto, to Bottega Hair Salon...</p>","descriptionText":"Benvenuto, to Bottega Hair Salon...","descriptionMarkdown":"Benvenuto, to Bottega Hair Salon...","source":"treatwell.co.uk","scrapedAt":"2026-06-01T10:00:00.000Z","contentHash":"a1b2c3d4e5f6a7b8"}
Examples
Balayage salons in London:
{"treatment":"balayage","location":"london","maxResults":100,"fetchDetails":true}
Gel nail bars in Manchester:
{"treatment":"gel nails","location":"manchester","maxResults":50,"fetchDetails":true}
All massage venues in Edinburgh (fast listing run):
{"treatment":"massage","location":"edinburgh","maxResults":200,"fetchDetails":false}
Deep tissue massage in a specific London area:
{"treatment":"deep tissue massage","location":"shoreditch","maxResults":30,"fetchDetails":true}
Scrape specific venues directly by URL:
{"startUrls":[{"url":"https://www.treatwell.co.uk/place/bottega-hair-salon/"},{"url":"https://www.treatwell.co.uk/place/live-true-london-vauxhall/"}],"fetchDetails":true}
Advanced: raw browse URL override:
{"searchUrls":[{"url":"https://www.treatwell.co.uk/places/treatment-group-hair/offer-type-local/in-london-uk/"}],"maxResults":500,"fetchDetails":false}
π° Pricing
$1.50 per 1,000 results β you only pay for successfully saved venues.
| Results | Cost |
|---|---|
| 100 | ~$0.15 |
| 1,000 | ~$1.50 |
| 10,000 | ~$15.00 |
| 100,000 | ~$150.00 |
Flat-rate alternatives typically charge $29β$49/month regardless of usage.
Use the Max results cap in the input to control your spend exactly.
Performance
| Run type | Results | Est. time |
|---|---|---|
Listing only (fetchDetails: false) | 100 | ~30s |
With details (fetchDetails: true) | 100 | ~3β4 min |
| With details | 1,000 | ~30β40 min |
Known limitations
- Opening hours, coordinates, phone, and full service lists require
fetchDetails: true. - Treatwell shows a maximum of 20 venues per search page; large categories (2,000+) require multiple pages and longer run times.
- Venue descriptions from listing cards may be shorter than the full description on the detail page.
Technical details
- Source: treatwell.co.uk β UK beauty and wellness marketplace
- Memory: 512 MB
- Retry: Automatic retry on network errors, exponential backoff, 3 attempts per request
- Self-healing: Circuit breaker with 5-failure threshold, health signal written after every run
Additional services
Need a custom actor, additional filters, scheduled runs, or integration support?.nl](mailto:info@unfencedgroup.nl) β we build on request.
Related scrapers
Other scrapers in our Reviews & Reputation collection:
Run it on a schedule
This actor is built for repeat use. Set it to run daily, weekly, or hourly, and the data keeps flowing without you touching it.
- Schedule runs β open the actor, go to Schedules, and pick a cadence. Each run only charges you for the results it returns.
- Connect it to your stack β push results straight to Google Sheets, Slack, a webhook, or your database using Apify Integrations. No glue code needed.
- Pull results via API β every run writes a clean dataset you can fetch with one API call, ready for whatever you build on top of it.
Set it once and it runs on its own.
Need a custom scraper?
Unfenced Group builds Apify actors for any website β for free.
If the site you need isn't in our portfolio yet, just ask. We scope, build, and publish it at no cost to you. You only pay for results β we absorb the compute and proxy costs ourselves. Same pay-per-result pricing, same quality, same standards as every actor in this portfolio.
Get in touch: www.unfencedgroup.nl
