Checkatrade UK Tradespeople & Trades Contacts Scraper
Pricing
from $25.50 / 1,000 results
Checkatrade UK Tradespeople & Trades Contacts Scraper
Extract UK tradespeople from Checkatrade by trade and location: company name, trade category, area covered, phone, address, rating, review count, verified status, member since and profile URL. Export to JSON, CSV or Excel.
Pricing
from $25.50 / 1,000 results
Rating
5.0
(1)
Developer
Scrapers Lat
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
1
Monthly active users
6 days ago
Last modified
Categories
Share
Checkatrade UK Tradespeople & Trades Contacts Scraper
Here is one real result, with every field the actor returns (gallery and reviews arrays trimmed for length; the values shown are real):
{"imageUrl": "https://lh3.googleusercontent.com/srGkOVS0Be8_aY_bMQqENufIMJiiIHQFPEoznWXeykSKVNAKfmAHzlvckfBFbxVVF-2PxCYghPDmG-rQF-3Nb6pKtOXzEOxGXYWJKRadVDqpBQZSdtO_psrMpXZvW00","bannerImageUrl": "https://lh3.googleusercontent.com/UDhmlmHBwYrgf9mAsPEoimf1JF8HPlot4Uehm5a1sNwopgIQquGJ-Q8upnkHEoyZN8z9EHYWNGd226mDA3FFqnethnxCadxc4ZVYRIUQHD1qUuV_7Uqm1XpojiJVyQ","companyName": "Down To Earth Electrical Contractors","primaryTrade": "Electrician","trades": ["Electrician", "Electric Cookers", "Smoke Alarms", "Energy Efficient Lighting", "Storage Heating"],"profileUrl": "https://www.checkatrade.com/trades/downtoearthelectricalcontractorsltd","companyId": 193668,"phone": "+447447183798","phoneLabel": "07447 183798","phoneNumbers": ["+447447183798"],"addressLocality": "London","addressRegion": null,"areaCovered": "Operates in your area","rating": 9.93,"ratingBestPossible": 10,"reviewCount": 608,"recentReviewCount": 83,"verifiedStatus": "Guaranteed","badges": ["guaranteed", "FRIENDLY"],"serviceOfferings": ["Domestic Work", "Commercial Work", "Free Estimates", "24 Hour Call-out", "Cards Accepted"],"servicesOffered": [],"galleryImageUrls": ["https://lh3.googleusercontent.com/UJF3T4I_uT7SAs09G0qKXB2dE0TmD0kqJfr0fDxNQGJu330gkZdIH5WcB5Mz6FoyTjkwufHmtQtYqaNd0YVa3GW4X0wiDgIE9sJrTR3-w9eDVQUKWX0FU4VcOTisPg", "... 22 more portfolio image URLs ..."],"reviewsSample": [{"title": "Go to for any electrical services","body": "As always very professional and efficient service. Fitted 2 new wall sconces! Would 100% recommend to a friend and use again","score": 10,"scorePercent": 100,"reviewedDate": "August 2026","location": "SW15","verified": false,"tradeResponse": null,"breakdowns": [{"label": "Timekeeping", "value": 10}, {"label": "Workmanship", "value": 10}]}],"distanceFromSearch": null,"memberSince": "October 2012","memberSinceText": "Approved member since October 2012","description": "We pride ourselves on providing our clients with First Class efficient and friendly service. As a result we have many satisfied customers. Free advice and estimates.","isSponsored": true,"aiProfileSummary": "Down To Earth Electrical Contractors is a highly-rated electrician service based in London, specializing in installations and maintenance of electric cookers, smoke alarms, energy-efficient lighting, and storage heating. With a strong reputation backed by 608 reviews and a rating of 9.93, they offer free advice and estimates to clients in their operating area.","aiLeadScore": 95,"aiLeadTier": "hot","aiLeadRationale": "High rating, substantial review volume, verified status, and reachable via phone.","aiReviewDigest": {"summary": "Overall, the sentiment towards the tradesperson is overwhelmingly positive, with customers consistently praising their professionalism, efficiency, and technical expertise.","pros": ["Professional and efficient service", "Good technical expertise and attention to detail", "Friendly and approachable staff", "Clear communication and helpful advice", "Reasonably priced work"],"cons": []},"searchTrade": "Electrician","searchLocation": "London","source": "Checkatrade","observedAt": "2026-08-14T07:17:27.275Z","error": null}
The most complete Checkatrade tradespeople scraper available. It returns every field a trade profile exposes, including phone numbers, rating, review counts, service offerings, portfolio photos and a sample of recent reviews, plus optional AI summaries, lead scores and review digests, and an optional contact-email enrichment add-on, so you get clean UK trade leads without extra parsing.
📥 Input · 📤 Output · 💰 Pricing · ▶️ Examples
Table of contents
- What it does
- Quickstart
- Input reference
- Output reference
- Example output record
- Run via API and CLI
- Fetch results
- Billing and limits
- FAQ and troubleshooting
What it does
The actor searches Checkatrade for each trade you list across each location you list, opens every matching trade profile, and writes one normalized record per business to the run's dataset. Each record carries the company name, primary trade and full trade list, profile URL and company ID, phone numbers, town and region, the Checkatrade score and review counts, trust badges, service offerings, portfolio photo URLs, a sample of recent reviews with score breakdowns, membership date, and business description. Missing source values are returned as null.
Optional AI add-ons (paid Apify plans only) add a plain-English profile summary, a 0 to 100 B2B lead score with tier and rationale, and a digest of the sampled reviews. An optional contact-enrichment add-on tries to find a public business email and contact name for results that have none.
Quickstart
Open the actor, paste this into the input, and press Run. It returns up to 3 London electricians with AI summary, lead score and review digest enabled.
{"searchQueries": ["Electrician"],"locations": ["London"],"maxTrades": 3,"withAiProfileSummary": true,"withAiLeadScore": true,"withAiReviewDigest": true}
Provide at least one trade and one location. Every trade is searched across every location. AI and contact add-ons are optional and off by default.
Input reference
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
searchQueries | string[] | yes | ["Electrician"] | Trade categories to search, for example Electrician, Plumber, Builder, Roofer, Plasterer. |
locations | string[] | yes | ["London"] | UK towns, cities, regions or postcodes, for example London, Manchester, Birmingham, SW1. |
maxTrades | integer | no | 10 | Maximum number of tradespeople to collect across the whole run. |
enrichContacts | boolean | no | false | Paid add-on. For each result without an email, attempt to find a public business email and contact name. Billed per attempt, plus extra only when an email is found. |
enrichContactsMax | integer | no | 50 | Cap how many results the add-on tries to enrich. Free Apify accounts are capped at 3. |
withAiProfileSummary | boolean | no | false | Paid add-on. Generate a concise plain-English business summary. Requires a paid Apify plan. Billed only when a summary is produced. |
withAiLeadScore | boolean | no | false | Paid add-on. Score each trade as a B2B lead (0 to 100, hot/warm/cold). Requires a paid Apify plan. Billed only when a score is produced. |
withAiReviewDigest | boolean | no | false | Paid add-on. Digest the sampled reviews (sentiment, pros, cons). Requires a paid plan and reviews present. Billed only when a digest is produced. |
Output reference
One dataset item per trade business. Types: string, integer, number, boolean, string[], object[], object, or null when the source value is absent.
| Field | Type | Description |
|---|---|---|
imageUrl | string | Company logo image URL. |
bannerImageUrl | string | Profile hero / banner image URL. |
companyName | string | Trade business / company name. |
primaryTrade | string | Main trade category, for example Electrician. |
trades | string[] | All trade categories / services the business offers. |
profileUrl | string | Checkatrade profile page URL. |
companyId | integer | Checkatrade company identifier. |
phone | string | Contact phone number in international format. |
phoneLabel | string | Phone number as displayed on the profile. |
phoneNumbers | string[] | All listed phone numbers for the business. |
addressLocality | string | Town / city of the business. |
addressRegion | string | County / region of the business, or null. |
areaCovered | string | Area the business operates in. |
rating | number | Checkatrade score, out of 10. |
ratingBestPossible | integer | Maximum possible rating (10). |
reviewCount | integer | Total number of reviews. |
recentReviewCount | integer | Number of recent reviews. |
verifiedStatus | string | Verification / guarantee badge text. |
badges | string[] | Quality / trust badges. |
serviceOfferings | string[] | Business attributes such as payment methods, free estimates, 24 hour call-out. |
servicesOffered | string[] | Named services the trade performs. |
galleryImageUrls | string[] | Portfolio / proof-of-work photo URLs from the profile. |
reviewsSample | object[] | Sample of recent reviews (title, body, score, date, location, verified, breakdowns). |
distanceFromSearch | string | Distance from the searched location, or null. |
memberSince | string | Approved member since (month and year). |
memberSinceText | string | Full membership text as shown. |
description | string | Business summary / description. |
isSponsored | boolean | true when the listing is sponsored. |
aiProfileSummary | string | AI-generated business summary (paid add-on), else null. |
aiLeadScore | integer | AI lead score 0 to 100 (paid add-on), else null. |
aiLeadTier | string | AI lead tier hot, warm, or cold (paid add-on), else null. |
aiLeadRationale | string | AI lead-score rationale (paid add-on), else null. |
aiReviewDigest | object | AI digest of customer reviews (summary, pros, cons) (paid add-on), else null. |
enrichedEmail | string | Public business email found by the enrichment add-on, or null. |
enrichedContactName | string | Contact person name found by the enrichment add-on, or null. |
enrichedJobTitle | string | Contact job title found by the enrichment add-on, or null. |
enrichedEmailStatus | string | Status of the email lookup, or null. |
enrichedSource | string | Where the enriched contact was found, or null. |
enrichedConfidence | number | Confidence of the enriched contact, or null. |
searchTrade | string | Trade query that produced this record. |
searchLocation | string | Location query that produced this record. |
source | string | Data source name (Checkatrade). |
observedAt | string | ISO 8601 timestamp of when the record was collected. |
error | string | null on success. On a failed run, a single item with a populated error field is written instead. |
Example output record
Real record from a live run (input {"searchQueries":["Electrician"],"locations":["London"],"maxTrades":3,"withAiProfileSummary":true,"withAiLeadScore":true,"withAiReviewDigest":true}). The galleryImageUrls and reviewsSample arrays are trimmed for length; the values shown are real:
{"companyName": "Down To Earth Electrical Contractors","primaryTrade": "Electrician","trades": ["Electrician", "Electric Cookers", "Smoke Alarms", "Energy Efficient Lighting", "Storage Heating"],"profileUrl": "https://www.checkatrade.com/trades/downtoearthelectricalcontractorsltd","companyId": 193668,"phone": "+447447183798","phoneLabel": "07447 183798","phoneNumbers": ["+447447183798"],"addressLocality": "London","addressRegion": null,"areaCovered": "Operates in your area","rating": 9.93,"ratingBestPossible": 10,"reviewCount": 608,"recentReviewCount": 83,"verifiedStatus": "Guaranteed","badges": ["guaranteed", "FRIENDLY"],"serviceOfferings": ["Domestic Work", "Commercial Work", "Free Estimates", "24 Hour Call-out", "Cards Accepted"],"memberSince": "October 2012","description": "We pride ourselves on providing our clients with First Class efficient and friendly service. As a result we have many satisfied customers. Free advice and estimates.","isSponsored": true,"aiProfileSummary": "Down To Earth Electrical Contractors is a highly-rated electrician service based in London, specializing in installations and maintenance of electric cookers, smoke alarms, energy-efficient lighting, and storage heating.","aiLeadScore": 95,"aiLeadTier": "hot","aiLeadRationale": "High rating, substantial review volume, verified status, and reachable via phone.","searchTrade": "Electrician","searchLocation": "London","source": "Checkatrade","observedAt": "2026-08-14T07:17:27.275Z","error": null}
Run via API and CLI
Start a run and wait for it to finish, then read the dataset. Replace <TOKEN> with your Apify API token.
Run synchronously and get dataset items in one call:
curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~checkatrade-uk-scraper/run-sync-get-dataset-items?token=<TOKEN>" \-H "Content-Type: application/json" \-d '{"searchQueries":["Plumber"],"locations":["Manchester"],"maxTrades":25}'
Start a run asynchronously:
curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~checkatrade-uk-scraper/runs?token=<TOKEN>" \-H "Content-Type: application/json" \-d '{"searchQueries":["Roofer","Builder"],"locations":["Birmingham","Leeds"],"maxTrades":100}'
Apify CLI:
apify call scrapers_lat/checkatrade-uk-scraper \--input '{"searchQueries":["Electrician"],"locations":["London"],"maxTrades":10}'
Fetch results
Every run writes to a dataset. Fetch items as JSON, CSV, or Excel by changing format:
# JSONcurl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&clean=true&format=json"# CSVcurl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&clean=true&format=csv"# Paginate large datasetscurl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&offset=1000&limit=1000"
<DATASET_ID> is returned as defaultDatasetId in the run object. Use offset and limit to page through large result sets. clean=true drops empty and internal fields.
Billing and limits
- Pay per result. You are charged per trade record returned (
resultevent). See the pricing tab for the current per-result price. - Paid add-ons. AI summary, lead score, review digest and contact enrichment are optional. Each is billed per record only when it returns usable output, and the AI add-ons require a paid Apify plan.
- No charge on failure. If a run errors, the actor writes a single item with a populated
errorfield and does not charge for it. Empty runs cost nothing. - Spend cap respected. Set
maxTotalChargeUsdon the run; once reached, the actor stops emitting and charging further billable results. - Free Apify plans are capped at 10 records per run, and the contact enrichment add-on is capped at 3 on free accounts. Upgrade for higher
maxTrades.
FAQ and troubleshooting
A run returned 0 records. Why? No trade matched that combination of query and location, or the search page was empty. Broaden the location or use a more common trade term. Zero-result runs are not charged.
Do I need a paid plan?
No for the core scrape. Yes for the AI add-ons (withAiProfileSummary, withAiLeadScore, withAiReviewDigest), which are disabled for free accounts.
Why are the AI fields null? The matching add-on was off, or you are on a free account, or the AI did not produce usable output for that record. AI fields are never invented.
Why is enrichedEmail null?
The contact enrichment add-on was off, or no public business email was found. Missing values are returned as null.
Can I search several trades and towns at once?
Yes. List multiple trades in searchQueries and multiple places in locations. Every trade is searched across every location.
Is this an official Checkatrade tool? No. This actor is independent and has no affiliation with Checkatrade. It reads only data that is publicly available on trade profiles. Use it in accordance with the site terms.
Related scrapers
- Yell UK / Thomson Local Scraper: UK business directory listings and contacts.
- Bark Services Scraper: Bark service-provider profiles and leads.
- UK Companies House Scraper: UK registered company records.
- Google Maps Business Leads Scraper: Local business leads with contacts from Google Maps.
- Trustpilot Scraper: Business reviews and ratings from Trustpilot.
More scrapers at scrapers.lat
Built and maintained by scrapers.lat, where we publish scrapers for US and Latin American public platforms: company registries, government data, finance, e-commerce and more. Browse the catalog or request a custom scraper at scrapers.lat.
Independent tool, not affiliated with Checkatrade. Accesses only publicly available profile data. Use in accordance with the site terms of service.
