Thumbtack Scraper — Service Providers & Reviews
Pricing
Pay per usage
Thumbtack Scraper — Service Providers & Reviews
Scrape Thumbtack service providers by trade and location. Extract names, ratings, reviews, hire counts, pricing, phone numbers, and verification badges. Supports 500+ categories. Perfect for lead generation and market research.
Pricing
Pay per usage
Rating
0.0
(0)
Developer

Ricardo Akiyoshi
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Thumbtack Scraper — Service Providers & Pricing
Scrape Thumbtack service provider listings by trade and location. Extract provider names, star ratings, review counts, hire counts, pricing estimates, phone numbers, verification badges, and profile URLs. Perfect for lead generation, competitive analysis, and local market research.
Features
- Multi-service search — Search for any of 500+ Thumbtack service categories
- Multi-location — Search across multiple cities, zip codes, or neighborhoods
- Rich provider data — Names, ratings, reviews, hire counts, pricing, phone numbers
- Verification badges — Detect Top Pro, verified, background-checked providers
- 4 extraction strategies — NEXT_DATA JSON, embedded scripts, JSON-LD, DOM parsing
- Auto-fallback URL patterns — Tries /search/, /k/, and direct category URLs
- Pagination — Automatically follows all pages of results
- Anti-bot handling — Detects CAPTCHAs and blocks, stops gracefully
- 12 User-Agent rotation — Browser fingerprint diversity
- Browser-like headers — Mimics real Chrome/Firefox requests
- Deduplication — No duplicate providers across pages or search combos
- Proxy support — Residential proxies recommended for reliable results
- Rate limiting — Max 12 requests/minute to avoid detection
- Pay-per-event — Only pay for providers you actually get
Use Cases
Lead Generation
Find service providers in any market and location. Build targeted lead lists with contact information, ratings, and pricing for sales outreach.
Competitive Analysis
Monitor your competitors on Thumbtack — track their ratings, review counts, hire numbers, and pricing across markets.
Market Research
Analyze service provider density, average pricing, and quality metrics across geographic markets. Identify underserved areas and pricing opportunities.
Recruitment
Find top-rated service professionals for staffing, partnerships, or subcontracting. Filter by ratings, hire counts, and verification status.
Pricing Intelligence
Benchmark service pricing across markets. Understand the range of pricing for any trade (e.g., house cleaning $80-$200 per visit in NYC vs $50-$120 in Phoenix).
Local SEO Research
Understand the competitive landscape for local service businesses. See which providers dominate search results and why.
Input
| Field | Type | Default | Description |
|---|---|---|---|
services | String[] | ["House Cleaning"] | Service types to search. Examples: "Plumbing", "Personal Training", "Wedding Photography" |
locations | String[] | ["New York, NY"] | Cities, zip codes, or areas to search in |
maxResults | Integer | 300 | Max providers per service+location combo (0 = unlimited) |
proxyConfiguration | Object | (none) | Apify proxy settings |
Supported Services (examples)
Thumbtack supports 500+ service categories. Common ones include:
| Category | Services |
|---|---|
| Home | House Cleaning, Handyman, Plumbing, Electrician, HVAC, Roofing, Painting |
| Lawn & Garden | Lawn Care, Landscaping, Tree Service, Pressure Washing |
| Events | Wedding Photography, DJ, Catering, Event Planning, Makeup Artist |
| Wellness | Personal Training, Yoga, Massage Therapy |
| Pets | Dog Walking, Dog Training, Pet Sitting |
| Education | Tutoring, Piano Lessons, Guitar Lessons |
| Auto | Auto Repair, Car Detailing |
| Professional | Tax Preparation, Accounting, Web Design, Graphic Design |
| Moving | Local Moving, Long Distance Moving, Junk Removal |
Input Examples
House cleaners in multiple cities
{"services": ["House Cleaning"],"locations": ["New York, NY", "Los Angeles, CA", "Chicago, IL"],"maxResults": 100,"proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"]}}
Multiple home services in one market
{"services": ["Plumbing", "Electrician", "Handyman", "HVAC"],"locations": ["Houston, TX"],"maxResults": 50,"proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"]}}
Wedding vendors in a specific area
{"services": ["Wedding Photography", "DJ", "Catering", "Makeup Artist"],"locations": ["San Francisco, CA"],"maxResults": 200,"proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"]}}
Quick test run
{"services": ["Lawn Care"],"locations": ["Austin, TX"],"maxResults": 10}
Large-scale market analysis
{"services": ["Personal Training"],"locations": ["New York, NY", "Los Angeles, CA", "Chicago, IL","Houston, TX", "Phoenix, AZ", "Philadelphia, PA","San Antonio, TX", "San Diego, CA", "Dallas, TX", "Austin, TX"],"maxResults": 300,"proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"]}}
Output
Each scraped provider is saved to the dataset with the following fields:
{"name": "Sparkling Clean Services","service": "House Cleaning","rating": 4.9,"reviews": 127,"hireCount": 245,"pricing": "$80-$150 per visit","phone": "(212) 555-0123","location": "New York, NY","verified": true,"url": "https://www.thumbtack.com/pros/sparkling-clean-services","providerId": "abc123","intro": "Professional house cleaning with 10+ years experience. We use eco-friendly products and guarantee satisfaction.","yearsInBusiness": 10,"employees": 5,"responseTime": "within a few hours","imageUrl": "https://...","searchService": "House Cleaning","searchLocation": "New York, NY","resultPosition": 1,"pageNumber": 1,"scrapedAt": "2026-03-01T12:00:00.000Z"}
Output Fields
| Field | Type | Description |
|---|---|---|
name | String | Provider or business name |
service | String | Service category |
rating | Number | Star rating (1.0-5.0) |
reviews | Number | Total review count |
hireCount | Number | Times hired on Thumbtack |
pricing | String | Price estimate or range |
phone | String | Contact phone number |
location | String | City, state, or service area |
verified | Boolean | Has verification badge (Top Pro, background check, etc.) |
url | String | Thumbtack profile URL |
providerId | String | Thumbtack internal ID |
intro | String | Provider's self-introduction |
yearsInBusiness | Number | Years of experience |
employees | Number | Number of employees |
responseTime | String | Typical response time |
imageUrl | String | Profile photo URL |
searchService | String | Original search service input |
searchLocation | String | Original search location input |
resultPosition | Number | Position in overall results |
pageNumber | Number | Page number where found |
scrapedAt | String | ISO timestamp of scraping |
Proxy Recommendations
Thumbtack uses bot detection. Residential proxies are strongly recommended for reliable results at scale.
| Setup | Reliability | Speed | Cost |
|---|---|---|---|
| No proxy | Low (small tests only) | Fast | Free |
| Datacenter proxy | Low-Medium | Fast | Low |
| Residential proxy | High | Medium | Medium |
| SERP proxy | Medium | Medium | Medium |
Recommended proxy configuration
{"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"]}
Performance Tips
- Use residential proxies — Thumbtack blocks datacenter IPs
- Start small — Test with
maxResults: 10before scaling up - Use exact service names — "House Cleaning" works better than "cleaning"
- Use "City, ST" format — "New York, NY" not just "New York"
- Monitor CAPTCHA warnings — If you see CAPTCHA logs, enable/upgrade proxies
- Batch by location — Running 10 locations in one run is more efficient than 10 separate runs
Extraction Strategies
The scraper uses four extraction strategies with automatic fallback:
- NEXT_DATA JSON — Thumbtack is a Next.js app; parses the server-rendered data payload (most reliable when available)
- Embedded script data — Looks for INITIAL_STATE, PRELOADED_DATA, Apollo cache, and other embedded JSON
- JSON-LD structured data — Parses schema.org LocalBusiness/Service markup
- DOM parsing — Direct HTML element extraction with 10+ selector strategies and broad scan fallback
Additionally, the scraper tries multiple URL patterns for each search:
/search/{service}/{location}(primary)/k/{service}/{location}(keyword search)/{service}/{location}(direct category)/search/{service}/near-me(geo-based fallback)
Pricing (Pay Per Event)
| Event | Price | Description |
|---|---|---|
provider-scraped | $0.006 | Each provider saved to dataset |
Plus Apify platform costs (compute + proxy if used).
Legal Notice
This actor is provided as a technical tool for market research, competitive analysis, and lead generation. Users are responsible for ensuring their use complies with Thumbtack's Terms of Service and all applicable laws. The actor is designed for legitimate business research purposes.
Integration — Python
from apify_client import ApifyClientclient = ApifyClient("YOUR_API_TOKEN")run = client.actor("sovereigntaylor/thumbtack-scraper").call(run_input={"searchTerm": "thumbtack","maxResults": 50})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(f"{item.get('title', item.get('name', 'N/A'))}")
Integration — JavaScript
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'YOUR_API_TOKEN' });const run = await client.actor('sovereigntaylor/thumbtack-scraper').call({searchTerm: 'thumbtack',maxResults: 50});const { items } = await client.dataset(run.defaultDatasetId).listItems();items.forEach(item => console.log(item.title || item.name || 'N/A'));