Reed.co.uk Jobs Scraper - UK Job Listings with Salary avatar

Reed.co.uk Jobs Scraper - UK Job Listings with Salary

Pricing

from $1.00 / 1,000 job listings

Go to Apify Store
Reed.co.uk Jobs Scraper - UK Job Listings with Salary

Reed.co.uk Jobs Scraper - UK Job Listings with Salary

Scrape UK jobs from reed.co.uk: parsed salary min/max/period, contract type, remote/hybrid, posted and closing dates, optional full descriptions and skills, and an only-new-jobs mode for job alerts. Keywords, location and filters or any Reed search URL. No login.

Pricing

from $1.00 / 1,000 job listings

Rating

0.0

(0)

Developer

rj

rj

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Categories

Security

Limited permissions

Share

Scrape public UK job listings from reed.co.uk, the UK's largest job board, and get clean, analysis-ready data: salary as numbers (min, max, period: hour, day or year), contract type, full-time/part-time, remote/hybrid/on-site, posted and closing dates, employer and, if you want them, the full job description and Reed's skill tags. Search by keywords, location and Reed's own filters, or paste any Reed search URL. An "Only new jobs" mode turns a daily schedule into a job-alert feed at no extra charge. No login, no API key, no browser.

Why this one: most Reed scrapers return the salary as a text string ("£650 - £750 per day"). UK buyers filter and benchmark by salary, so this Actor parses it into salaryMin, salaryMax and salaryPeriod, and it costs less than the alternatives that charge per detail page or a monitor fee.

What data can you get?

FieldExample
title, url, idData Analyst, https://www.reed.co.uk/jobs/data-analyst/57501240
employerName, employerType, employerUrlHays Specialist Recruitment Limited, agency
location, county, region*, postcode*London, London, South East England, SE1
salaryText£400 - £500 per day
salaryMin, salaryMax, salaryCurrency, salaryPeriod400, 500, GBP, day
contractTypePermanent, Contract or Temporary
workingHoursfull-time, part-time, full-time or part-time
remoteTyperemote, hybrid, on-site
postedAt, updatedAt, expiresAtISO 8601 (UTC)
isEasyApply, isPromoted, isFeatured, isTrainingCoursetrue / false
externalApplyUrlApply link when the job is applied for off Reed
occupation, sector*, parentSector*Data Analyst, Analyst Prog/Dev, IT & Telecoms
skills*["SQL Databases", "Power BI", ...]
descriptionSnippet, description*, descriptionHtml*Short snippet; full text and HTML
searchKeyword, searchUrl, scrapedAt, detailsStatusProvenance and status

* Needs Include full job details (on by default).

Use cases

  • Salary benchmarking: day rates for contractors, annual salaries for permanent roles, by city and job title.
  • Job-alert feeds: schedule a daily run with Only new jobs and push new vacancies to Slack, email or a spreadsheet.
  • Recruitment market intelligence: which agencies and employers are hiring, for what, and where.
  • Job aggregators and boards: the same flat field layout as our Dice, SEEK and XING job scrapers.
  • Labour-market research: remote vs hybrid share, contract vs permanent mix, posting volumes over time.

How to use

  1. Enter one or more Keywords (each one is a separate search) and a Location.
  2. Optionally set filters: salary range, contract type, full/part-time, remote/hybrid/on-site, date posted, Easy Apply.
  3. Turn Include full job details off for a faster, cheaper listing-only feed.
  4. Run, then download the data as JSON, CSV, Excel or via the API.

Contract day-rate jobs in London posted this week, with full descriptions:

{
"keywords": ["data analyst"],
"location": "london",
"contractTypes": ["contract"],
"postedWithin": "lastweek",
"maxItems": 50,
"includeDetails": true
}

Remote software engineering jobs anywhere in the UK paying £60k+ (leave the location empty):

{
"keywords": ["software engineer"],
"remoteType": "remote",
"salaryFrom": 60000,
"maxItems": 100,
"includeDetails": false
}

A daily job alert for nurses in Manchester (schedule it; each run outputs only jobs not seen before):

{
"keywords": ["registered nurse", "mental health nurse"],
"location": "manchester",
"distanceMiles": 15,
"onlyNew": true,
"stateKey": "nurses-manchester",
"includeDetails": false
}

Or paste search URLs straight from your browser (filters in the URL are kept):

{
"startUrls": [{ "url": "https://www.reed.co.uk/jobs/accountant-jobs-in-leeds?perm=true" }],
"maxItems": 200
}

Output example

A real item (description shortened):

{
"id": "57501240",
"url": "https://www.reed.co.uk/jobs/data-analyst/57501240",
"title": "Data Analyst",
"employerName": "Hays Specialist Recruitment Limited",
"employerType": "agency",
"employerUrl": "https://www.reed.co.uk/jobs/hays-specialist-recruitment-limited/p36210",
"location": "London",
"county": "London",
"region": "South East England",
"postcode": null,
"salaryText": "£400 - £500 per day",
"salaryMin": 400,
"salaryMax": 500,
"salaryCurrency": "GBP",
"salaryPeriod": "day",
"contractType": "Contract",
"workingHours": "full-time",
"remoteType": "remote",
"postedAt": "2026-10-28T12:31:20.310Z",
"updatedAt": "2026-11-01T12:32:16.690Z",
"expiresAt": "2026-12-09T23:55:00.000Z",
"isPromoted": false,
"isFeatured": false,
"isEasyApply": true,
"isTrainingCourse": false,
"externalApplyUrl": null,
"occupation": "Data Analyst",
"sector": "Analyst Prog/Dev",
"parentSector": "IT & Telecoms",
"skills": ["Dashboard Design & Development", "Microsoft Excel", "Power BI (Opportunity)", "SQL Databases", "Stakeholder Management (Business)"],
"descriptionSnippet": "Data Analyst - SQL, Databricks, Sustainability up to 400pd (Inside IR35) Remote initially 6 months ...",
"description": "Data Analyst - SQL, Databricks, Sustainability\nup to £400pd (Inside IR35)\nRemote\ninitially 6 months\n\nThe role will support ...",
"descriptionHtml": "<p>Data Analyst - SQL, Databricks, Sustainability <br>up to £400pd (Inside IR35)<br>Remote ...",
"detailsStatus": "ok",
"searchKeyword": "data analyst",
"searchUrl": "https://www.reed.co.uk/jobs/data-analyst-jobs-in-london?keywords=data+analyst&locationName=london&proximity=10&contract=true&dateCreatedOffSet=lastweek&hideTrainingJobs=true",
"scrapedAt": "2026-11-03T10:02:21.728Z"
}

More items: samples/sample-output.json. The dataset has three views: Overview, Salaries and Details.

Pricing

Pay per event, no monthly fee:

EventPriceWhen
job$0.001Each job listing output
job-details$0.0005Each job whose detail page (full description, skills) was fetched
  • 1,000 jobs, listing data only ≈ $1.00
  • 1,000 jobs with full descriptions ≈ $1.50
  • The "Only new jobs" mode has no monitor surcharge: you pay only for the new jobs that are output.
  • Set Maximum cost per run in the run options; the Actor stops cleanly when it is reached.
  • A job whose detail page couldn't be fetched (expired, blocked) is not charged job-details.

Tips and limits

  • Reed shows 25 jobs per page. For very broad searches (thousands of results), split by location or keyword and use filters to keep runs short.
  • Results come in Reed's default (relevance) order. Sorting by date isn't offered because sortBy URLs are disallowed by reed.co.uk's robots.txt; use Date posted to narrow to recent jobs.
  • Salary filters are Reed's own: they match on overlapping ranges, so a £55k-£65k job can appear for "from £60,000".
  • When the employer hides the figure ("Salary negotiable", "Competitive salary"), salaryText shows that wording and salaryMin/salaryMax are null, as on the site.
  • Training-course adverts (paid courses Reed lists as "trainee" jobs) are hidden by default; turn off Hide training-course listings to include them (isTrainingCourse: true).
  • Times on Reed are UK local; the Actor converts them to UTC ISO timestamps.
  • detailsStatus tells you per job whether the full description was fetched (ok), the job had expired (not-found) or the page was blocked. The run's RUN_SUMMARY record counts these too.
  • For Only new jobs, use a different State key per alert. Seen jobs are forgotten after 90 days. Max result pages (default 40) caps how far an alert run pages through results it has mostly seen before.

FAQ

Is it legal to scrape reed.co.uk? This Actor collects only publicly visible job listings, without logging in, and follows reed.co.uk's robots.txt (no /api/ or sortBy URLs). It does not harvest personal data: no recruiter contact fields are output, and email addresses and phone numbers inside job descriptions are replaced with [email removed] / [phone removed]. You are responsible for using the data in line with Reed's terms, UK GDPR and other laws that apply to you.

Do I need a proxy? Usually not. If Reed starts answering 403/429, enable Apify Proxy (datacenter). Residential proxies are not supported: if you select the RESIDENTIAL group, the Actor logs a warning and uses Apify datacenter proxy instead.

Can I scrape several keywords at once? Yes. Each keyword is a separate search with its own Max jobs per search limit, and a job found by more than one search is output only once per run.

Why are some fields null? region, postcode, sector, skills and the full description come from the job page, so they are null when Include full job details is off. Some employers don't give a postcode or salary.

What currency are salaries in? Reed salaries are in pounds (salaryCurrency: "GBP"). If a listing uses another currency, salaryCurrency is null and salaryText has no £ sign.

Integrations

  • API: run the Actor and fetch the dataset with the Apify API or the apify-client libraries for JavaScript and Python.
  • Make, Zapier, n8n: use the Apify app/node to run the Actor on a schedule and send new jobs to Google Sheets, Airtable, Slack or email.
  • MCP: AI agents can call this Actor through the Apify MCP server (mcp.apify.com).
  • Webhooks: get notified when a run finishes and pull the new items.

Changelog

  • 0.1 (November 2026): first release. Keyword/location search with Reed filters, start URLs, parsed salaries, full job details with skills, Only-new-jobs mode.

More scrapers by the same developer

Browse all my Actors on my Apify Store profile.

Support

Found a search that doesn't work, or need an extra field? Open an issue on the Issues tab with your input. Fixes are usually quick.