Checkatrade Tradespeople Scraper
Pricing
from $5.00 / 1,000 tradesperson listings
Checkatrade Tradespeople Scraper
Find public UK Checkatrade tradespeople by directory URL or postcode. Return names, ratings, review counts, services, profile URLs, and publicly visible contact details for local-market research and AI-agent workflows.
Pricing
from $5.00 / 1,000 tradesperson listings
Rating
0.0
(0)
Developer
Muhammad Afzal
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
16 days ago
Last modified
Categories
Share
Scrape public Checkatrade directory pages and return structured UK tradesperson listings for local-market research, supplier prospecting, contractor discovery, and AI-agent workflows.
What it returns
| Field | Meaning |
|---|---|
businessName | Public tradesperson or company name |
profileUrl | Public Checkatrade profile URL |
rating, reviewCount | Rating and review count shown on the listing |
services | Services and skills shown on the card |
phone | Phone number only when publicly revealed on the profile |
address | Public locality/service-area text when available |
description | Public profile description when available |
sourceUrl, scrapedAt | Provenance and extraction timestamp |
Input
startUrls accepts public Checkatrade directory or near-me URLs. The default is a public plumbers near-me page. Use the page for the trade you need, for example a public electrician or roofer near-me page, or pass a direct directory URL discovered from Checkatrade.
postcode is optional. When a page exposes a postcode/location input, the actor fills it before collecting cards. maxResults defaults to 25 and is capped at 100. Set scrapeProfiles to false for a faster listing-only run; leave it enabled to visit public profile pages for phone, address, and description fields. proxyCountry defaults to GB in the UI and can be blank to use the default Apify proxy pool.
Example input:
{"startUrls": [{"url": "https://www.checkatrade.com/blog/plumbers-near-me/"}],"postcode": "SW1A 1AA","maxResults": 25,"scrapeProfiles": true,"proxyCountry": "GB"}
Output example
{"businessName": "Example Plumbing & Heating","profileUrl": "https://www.checkatrade.com/trades/example","rating": 10,"reviewCount": 178,"services": ["Plumber", "General Plumbing"],"phone": null,"address": "London","description": null,"sourceUrl": "https://www.checkatrade.com/blog/plumbers-near-me/","scrapedAt": "2026-07-16T12:00:00.000Z"}
Reliability and scope
This actor uses a rendered Playwright browser because Checkatrade may return a Cloudflare challenge to plain HTTP clients. It throttles navigation, uses the Apify proxy pool, deduplicates profile URLs, and writes a diagnostic dataset item when a page fails or is blocked. Empty valid results are successful; a block is not silently represented as an empty directory.
Only publicly visible information is collected. The actor does not log in, bypass access controls, submit quotes, reveal phone numbers hidden behind a user interaction, or collect private customer data. Follow Checkatrade's terms, robots guidance, and applicable UK privacy and data-protection law before using the output for outreach.
Pricing
Pay-per-event billing is configured at $0.005 per returned listing, plus a $0.00005 actor-start event. Blocked or failed profile requests are recorded diagnostically and are not treated as successful listings.
AI-agent use
Use this actor when an agent needs a bounded list of public Checkatrade tradespeople for a UK trade/location. It is not a quote-booking, review-writing, customer-lead form submission, or private member-directory tool. Results are stable JSON records suitable for CRM enrichment and downstream filtering.
Use cases
- Build public prospect lists and qualify organizations or professionals before responsible outreach.
- Supply structured public data to AI, RAG, enrichment, or evaluation workflows.
- Run a one-off research job and export the structured result as JSON, CSV, Excel, XML, or RSS from Apify.
- Schedule the same input to monitor changes over time and send completed datasets to a webhook or integration.
- Feed schema-shaped records into a database, spreadsheet, BI tool, or AI workflow with the source URL retained for verification.
Run Checkatrade Tradespeople Scraper with the Apify API
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: process.env.APIFY_TOKEN });const run = await client.actor('muhammadafzal/checkatrade-tradespeople-scraper').call({"startUrls": [{"url": "https://www.checkatrade.com/blog/plumbers-near-me/"}],"postcode": "","maxResults": 25,"scrapeProfiles": true,"proxyCountry": "GB"});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items);
You can also run the Actor from Apify Console, schedules, webhooks, the REST API, Make, Zapier, n8n, or the hosted Apify MCP server.
Support
When reporting a problem, include the Actor run ID, a redacted input, the expected result, and a small public example URL when applicable. Do not post API tokens, cookies, credentials, or personal data in an issue.
Frequently asked questions
Can I schedule Checkatrade Tradespeople Scraper?
Yes. Use an Apify schedule to run the same saved input at a chosen interval, then connect a webhook or integration to process the dataset when the run finishes.
How should I test a new input?
Begin with the prefilled example or a small limit. Confirm that the output fields, source coverage, runtime, and live charges match your workflow before increasing the scope.
How do I export the results?
Open the run's default dataset in Apify Console and export JSON, CSV, Excel, XML, or RSS. Applications can retrieve the same records through the Apify API client or REST dataset endpoint.
Can an AI agent call this Actor?
Yes. Add muhammadafzal/checkatrade-tradespeople-scraper through the hosted Apify MCP server or call it through the API. The Actor's input and dataset schemas help agents construct valid requests and interpret returned records.