Reed.co.uk Scraper avatar

Reed.co.uk Scraper

Pricing

from $1.50 / 1,000 results

Go to Apify Store
Reed.co.uk Scraper

Reed.co.uk Scraper

Scrape reed.co.uk for structured UK job data: titles, employers, salary ranges, locations & full descriptions (HTML, text, Markdown). 250,000+ listings with employment type, keyword and location filters. Repost detection & daysOld filtering. No API key required.

Pricing

from $1.50 / 1,000 results

Rating

0.0

(0)

Developer

Unfenced Group

Unfenced Group

Maintained by Community

Actor stats

1

Bookmarked

5

Total users

3

Monthly active users

44 minutes ago

Last modified

Share

Reed.co.uk Scraper

Scrape structured job listings from Reed.co.uk — United Kingdom. 250,000+ active listings. No API key required.


Why this scraper?

🇬🇧 UK's largest job board — 250,000+ listings

Reed.co.uk is the UK's number one job site, covering every sector from finance and tech to retail and healthcare.

📄 Full job descriptions via JSON-LD

Descriptions sourced from Reed's structured JSON-LD data — highly reliable and consistently formatted.

💰 Structured GBP salary data

Salary ranges parsed into salaryMin, salaryMax, salaryPeriod (YEAR/MONTH/DAY/HOUR) in GBP.

🔎 Advanced filtering

Filter by contract type (permanent, contract, temp), full/part-time, salary band, and posting recency.

🔄 Repost detection

Cross-run deduplication with a 90-day TTL. Use skipReposts: true for new-only feeds.

⚙️ No API key required

Runs without any Reed API credentials.


Input parameters

ParameterTypeDescriptionDefault
keywordsstringJob title, keyword, or skill to search for.
locationNamestringCity, town, or region to search in. Leave empty for all.
distanceFromLocationintegerDistance in miles from the specified location.10
contractTypestringContract type filter (e.g. permanent, contract, temporary).
partTimebooleanFilter for part-time positions only.false
fullTimebooleanFilter for full-time positions only.false
minimumSalarystringMinimum salary filter (in GBP/year for Reed).
maximumSalaryintegerMaximum salary filter (in GBP/year for Reed).100
graduatebooleanFilter for graduate-level positions.false
postedByRecruitmentAgencybooleanFilter for agency-posted listings only.false
daysOldintegerOnly return listings published within the last N days.
maxResultsintegerMaximum number of results to return.5
fetchDetailsbooleanFetch full job description from each listing detail page. Disable for faster list-only results.true
skipRepostsbooleanSkip listings already seen in previous runs (90-day deduplication window).false
startUrlsarrayList of specific URLs to scrape. Bypasses the search input.

Output schema

Each result contains the following fields.

Always present:

FieldTypeDescription
idstringUnique job listing ID from the source platform.
urlstringDirect URL to the job listing.
titlestringJob title as published.
companystringEmployer / company name.
locationstringFull location string as published.
citystringCity of the work location.
countrystringCountry code (ISO 3166-1 alpha-2).
contractTypestringContract type (permanent, contract, temporary, etc.).
workSchedulestringWork schedule (full-time, part-time, etc.).
salaryMinnumberMinimum salary (null if not published by employer).
salaryMaxnumberMaximum salary (null if not published by employer).
salaryCurrencystringISO 4217 currency code (null if no salary published).
salaryPeriodstringSalary period: YEAR / MONTH / WEEK / DAY / HOUR.
publishDatestringPublication date (YYYY-MM-DD).
publishDateISOstringPublication date in ISO 8601 format.
sourcestringSource domain name.
scrapedAtstringISO 8601 timestamp of when this item was scraped.
contentHashstringMD5 hash of key fields for change detection (16 chars).
summarystringHuman-readable one-line summary of the listing.
changeStatusstringChange status: NEW / MODIFIED / UNCHANGED.
isRepostbooleanTrue if this listing was seen in a previous run (90-day window).
originalPublishDatestringOriginal publish date if this is a repost (null otherwise).
originalUrlstringOriginal URL if this is a repost (null otherwise).
locationFullstringFull location string including region.
recruiterTypestringWhether posted by a direct employer or recruitment agency.
expiryDatestringListing expiry date (ISO 8601, null if not available).

With fetchDetails: true (default):

FieldTypeDescription
descriptionHtmlstringFull job description as raw HTML (null if fetchDetails is false).
descriptionTextstringFull job description as plain text (null if fetchDetails is false).
descriptionMarkdownstringFull job description in Markdown format (null if fetchDetails is false).
applyUrlstringDirect application URL or Reed's apply page URL.

Example output record:

{
"id": "123456",
"url": "https://www.reed.co.uk/jobs/senior-developer/123456",
"title": "Senior Data Analyst",
"company": "HSBC",
"location": "London",
"city": "London",
"country": "GB",
"contractType": "Permanent",
"workSchedule": "Full-time",
"salaryMin": 45000,
"salaryMax": 60750,
"salaryCurrency": "GBP",
"salaryPeriod": "YEAR",
"publishDate": "2026-04-15",
"publishDateISO": "2026-04-15",
"source": "reed.co.uk",
"scrapedAt": "2026-04-24T09:00:00.000Z",
"contentHash": "a3f1b2c4d5e67890",
"summary": "Senior Data Analyst · HSBC · London",
"changeStatus": "NEW",
"isRepost": false,
"originalPublishDate": null,
"originalUrl": null,
"locationFull": null,
"recruiterType": null,
"expiryDate": null,
"descriptionHtml": "<p>We are looking for an experienced professional to join our growing team...</p>",
"descriptionText": "We are looking for an experienced professional to join our growing team...",
"descriptionMarkdown": "We are looking for an experienced professional to join our growing team...",
"applyUrl": null
}

Examples

1 — Search for Senior Data Analyst roles in London

{
"keywords": "data analyst",
"locationName": "London",
"maxResults": 100
}

2 — Filter by contract type — permanent positions only

{
"keywords": "",
"contractType": "permanent",
"maxResults": 200
}

3 — Scrape a specific search page directly via startUrls

{
"startUrls": [
{
"url": "https://www.reed.co.uk/jobs?q=data+analyst"
}
],
"maxResults": 50
}

4 — Daily feed — new listings only, past 24 hours, no reposts

{
"keywords": "",
"fetchDetails": false,
"daysOld": 1,
"skipReposts": true,
"maxResults": 1000
}

💰 Pricing

$1.50 per 1,000 results — you only pay for successfully retrieved listings. Failed retries and filtered reposts are never charged.

ResultsCost
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 sizeApprox. time
100 listings~2 min
1,000 listings~15 min
10,000 listings~2.5 hours

Known limitations

  • Salary: Listings marked 'Competitive' have null salary fields.
  • Pagination cap: Reed returns max ~1,000 results per search. Use startUrls with targeted queries for more coverage.
  • fetchDetails: Setting fetchDetails: false returns list-page fields only.

Technical details

  • Source: reed.co.uk — United Kingdom's job market
  • Memory: 256 MB
  • Repost storage: KeyValueStore reed-co-uk-job-dedup, 90-day TTL
  • Retry: Automatic retry on network errors, exponential backoff, 3 attempts per request

Additional services

Need a custom actor, additional filters, scheduled runs, or integration support? Send an email to info@unfencedgroup.nl — we build on request.


Part of the Unfenced Group European job board scraper portfolio — 50+ job markets covered. Built by unfenced-group · Issues? Open a ticket or send a message.