UK Planning Applications Scraper — All Councils
Pricing
from $10.00 / 1,000 results
UK Planning Applications Scraper — All Councils
Get every UK planning application in one run — all ~420 councils, no API key. Filter by council, type, status, size or date and export address, decision, dates, coordinates and the architect firm behind each project. Ideal for construction leads. Billed per result.
Pricing
from $10.00 / 1,000 results
Rating
0.0
(0)
Developer
Muhamed Didovic
Maintained by CommunityActor stats
0
Bookmarked
13
Total users
12
Monthly active users
5 days ago
Last modified
Categories
Share
UK Planning Applications Scraper
Scrape UK planning applications from all ~420 local planning authorities at once — one API, no council-by-council setup. Filter by council, application type, status, size, keyword or date, and get one clean row per application with address, description, decision, all key dates, map coordinates, and the agent (architect) company where the council publishes it. Powered by the PlanIt aggregator — no API key, no login. Billed per result.
How it works

✨ Why use this scraper?
- Every UK council in one run — PlanIt already aggregates all ~420 local planning authorities, so you don't integrate 420 different council portals.
- No API key required — reads the public PlanIt API directly; works the moment you hit Run.
- Map coordinates on most rows — latitude/longitude for mapping, territory analysis and GIS.
- Architect-firm leads — the agent (architect) company is included where the council publishes it (coverage varies by council — strong in some, absent in others; see FAQ). Filter to only applications that carry one.
- Rich filters — application type, decision status, size band, minimum dwellings, council, keyword and date range, combined in one run.
- Clean, stable fields — placeholders like "See source" are normalised to
null, dates kept as-is from the register, one row per application.
🎯 Use cases
| Who | What they do with it |
|---|---|
| Construction & trades | Find live projects by area, type and size; reach the architect firm behind them |
| Property developers | Track approvals and refusals by council, spot sites and competitor activity |
| Suppliers & subcontractors | Build pipelines of permitted developments in their region |
| Researchers / analysts | Map planning activity and approval rates by council, type or date |
| PropTech / GIS teams | Feed structured, geocoded planning data into their own products |
📥 Supported inputs
| Input | Example | Behaviour |
|---|---|---|
| Search keyword | solar | Free-text search on the application description |
| Council filter | Cornwall | Restrict to one or more local planning authorities |
| Application URL | .../planapplic/Wiltshire/PL/2026/04272/ | That application is scraped directly |
| Filters | type / status / size / dates / dwellings | Combined server-side |
Not supported: downloading the application's PDF documents, and the full comment/objection threads — this actor covers the structured application record and its published agent/applicant company.
🔄 How it works
- Classify input — keywords, council names, filters and application URLs are assembled into PlanIt queries.
- Query — PlanIt's aggregator API is called per keyword × council partition.
- Page — results are streamed via offset pagination until
maxItemsor the result set is exhausted. - Normalise — each record is mapped to a stable row; placeholder values are nulled; coordinates and dates are extracted.
- Push — the row lands in the dataset; export as JSON, CSV, Excel or via API. Optionally enrich the agent firm with a contact email.
⚙️ Input parameters
| Field | Type | Default | Description |
|---|---|---|---|
searchQueries | array | [] | Free-text terms matched on the application description |
startUrls | array | [] | PlanIt application URLs (or search URLs) |
authorities | array | [] (all) | Council names, e.g. Cornwall, Wiltshire, Leeds |
appType | string | — | Full, Outline, Trees, Conditions, Advertising, Heritage, Listed, Telecoms, … |
appState | string | — | Undecided, Permitted, Rejected, Withdrawn, Conditions, … |
appSize | string | — | Small, Medium, Large |
recentDays | integer | 7* | Only applications from the last N days (*default when no other filter is set) |
startDate / endDate | string | — | Date range, YYYY-MM-DD |
minDwellings | integer | — | Minimum dwellings (target larger residential schemes) |
onlyWithAgentContact | boolean | false | Only return applications that carry an agent (architect) name/company |
enrichEmails | boolean | false | Best-effort email lookup for the agent firm |
maxItems | integer | 1000 | Hard cap on rows collected |
maxConcurrency | integer | 10 | Applications processed in parallel |
proxy | object | Apify residential | Proxy settings |
📊 Output overview
One row per planning application. Every row carries the core record (council, reference, address, postcode, coordinates, description, type/state/size, decision, all key dates, ward, case officer where published, document count and URLs, plus PlanIt and source-council links). The agent (architect) and applicant company are included when the council publishes them via PlanIt. Fields the source doesn't provide are null, so your column layout is stable across runs.
📦 Output sample
{"type": "planning-application","source": "planit","uid": "PA23/10208","reference": "PA23/10208","council": "Cornwall","address": "Land At Truro, Cornwall, TR1","postcode": "TR1","coordinates": { "latitude": 50.2632, "longitude": -5.0510 },"description": "Construction of a single storey rear extension and associated works.","appType": "Full","appState": "Permitted","appSize": "Small","decision": "Approved","receivedDate": "2023-07-03","validatedDate": "2023-07-10","decidedDate": "2023-08-14","agentName": null,"agentCompany": "Ascent Architecture","applicantName": null,"caseOfficer": "See planning portal","ward": "Truro Boscawen","documentsUrl": "https://planning.cornwall.gov.uk/...","planitUrl": "https://www.planit.org.uk/planapplic/Cornwall/PA23/10208/","sourceUrl": "https://planning.cornwall.gov.uk/...","scrapedAt": "2026-07-18T05:05:00.000Z"}
🗂 Key output fields
| Group | Fields |
|---|---|
| Identity | uid, reference, council, planitUrl, sourceUrl |
| Location | address, postcode, coordinates.{latitude,longitude}, ward, parish |
| Application | description, appType, appState, appSize, decision, nDwellings |
| Dates | receivedDate, validatedDate, consultationEndDate, targetDecisionDate, decidedDate |
| People / leads | agentCompany, agentName, agentAddress, applicantName, caseOfficer (each where published) |
| Documents | documentsCount, documentsUrl, commentUrl, mapUrl |
| Meta | scrapedAt |
❓ FAQ
Which councils are covered?
All ~420 UK local planning authorities that PlanIt aggregates — England, Scotland, Wales and Northern Ireland. Filter to specific councils with authorities, or leave it empty for the lot.
Do I get the architect / agent contact?
You get the agent (architect) company where the council publishes it through PlanIt — coverage varies a lot by council (strong in some, e.g. Cornwall; absent in others). The individual agent's personal name and phone are not exposed by PlanIt (they sit only on each council's own portal), so this actor does not claim them. Use onlyWithAgentContact to keep just the rows that carry a real agent company.
Do I need a PlanIt or Companies House API key? No. This actor reads PlanIt's public API directly — no key, no account.
How fresh is the data?
PlanIt re-scrapes councils continuously; each row includes lastScraped. Use recentDays for daily-monitoring runs that only pick up new/changed applications.
Can I get map coordinates? Yes — most rows include latitude/longitude. A few older or partially-scraped records may not.
💬 Support
- Found a bug or need a field added? Open an issue on the actor's Issues tab.
- Direct contact: muhamed.didovic@gmail.com
🛠 Additional services
- Custom output shape, per-council agent/phone enrichment, or one-off datasets: muhamed.didovic@gmail.com
- Need a similar scraper for another public dataset? Drop an email.
- For API access (no Apify fee, just a usage fee for the API): muhamed.didovic@gmail.com
🔎 Explore more scrapers
If this Planning Applications Scraper was useful, see other scrapers at memo23's Apify profile. Pairs well with the Companies House Scraper and Europages Scraper for a full UK B2B / construction data stack.
⚠️ Disclaimer
This Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by PlanIt, GOV.UK, the Planning Portal, or any UK local authority. All trademarks mentioned are the property of their respective owners.
The scraper accesses only the publicly available PlanIt aggregator API, which itself republishes public planning-register data from UK local planning authorities. No authenticated endpoints or content behind a login are accessed. Users are responsible for ensuring their use complies with PlanIt's terms, the source authorities' terms, applicable data-protection law (UK GDPR, etc.) — particularly when processing agent/applicant personal data — and any contractual obligations of their own organisation.
SEO Keywords
uk planning applications scraper, planning application data, planit scraper, uk planning permission data, construction leads uk, planning applications api, local planning authority data, building project leads, architect leads uk, planning decisions scraper, uk council planning data, development pipeline data, planning application search, permitted development data, planning portal scraper, property development leads, planning applications by postcode, construction sales leads, planning data export, uk planning monitoring