Reed Scraper — UK Jobs, Salaries & Recruiters avatar

Reed Scraper — UK Jobs, Salaries & Recruiters

Pricing

from $0.80 / 1,000 results

Go to Apify Store
Reed Scraper — UK Jobs, Salaries & Recruiters

Reed Scraper — UK Jobs, Salaries & Recruiters

Reed.co.uk jobs scraper: export UK job ads with salary as shown plus numbers, full description, location and county, posted and expiry dates, contract type, remote or hybrid, agency or employer and skills. Search by keyword, location and Reed's filters, paste URLs or export every job. No login.

Pricing

from $0.80 / 1,000 results

Rating

0.0

(0)

Developer

Logiover

Logiover

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

Reed Scraper

Export UK job vacancies from Reed.co.uk — salary exactly as Reed shows it plus the numbers, full description, town, county, region and postcode, posted and expiry dates, contract type, full- or part-time, remote or hybrid, the advertiser (agency or employer) and skills — as clean JSON, CSV or Excel, without a login.

Independent tool. Not affiliated with, endorsed by, or sponsored by Reed.co.uk, Reed Specialist Recruitment or the REED group. "Reed" and "reed.co.uk" are trademarks of their owner and are used here only to describe the website this Actor reads.

Reed Scraper is a Reed.co.uk jobs scraper for the UK's best-known job board. It turns any Reed search — keywords or job titles, a town, county or postcode, Reed's own filters, a pasted Reed URL, a recruiter's or employer's job list, or the whole site — into structured UK jobs data: job title, salary as displayed ("£45,000 - £50,000 per annum", "Competitive salary", "£25 - £30 per hour") together with salary from / to as numbers, currency, period and the yearly equivalent, contract type (permanent, temporary, contract), full-time / part-time, remote / hybrid / on-site, location with county, region, country and postcode district, posted, updated and expiry dates in UTC, the advertiser (recruitment agency, direct employer or charity, with profile, logo, company page and the agency's own job reference), Reed's specialism and sub-specialism, skills, screening questions, Easy Apply, cover-letter rule, UK right-to-work and visa-sponsorship flags and the complete job description. Use it to scrape Reed.co.uk by keyword and location, as a Reed API alternative (Reed's own developer API needs a registered key, returns at most 100 jobs per call and leaves most of these fields out), or to export Reed jobs to CSV, Excel or JSON for your ATS, CRM, BI tool or data warehouse. No Reed account, no API key, no cookies, no browser.

Recruitment agencies, in-house recruiters, staffing firms, HR and compensation analysts, job aggregators and labour-market researchers use it for UK salary data and salary benchmarking, lead lists of employers that are hiring, competitor monitoring of other agencies' adverts, daily feeds of new vacancies and UK labour-market statistics by county, region and specialism. Typical searches it answers: Reed jobs export, Reed.co.uk job listings to Excel, UK job vacancies dataset, Reed job scraper for London, all Reed jobs in Manchester, contract IT jobs UK day rates, teaching assistant vacancies by county, jobs offering visa sponsorship UK, recruitment agency job adverts and Reed salary data. Reed lists about 99,500 live jobs; the Actor reads all of them in about 72 seconds (search data) and adds every job's own record at about 30 jobs per second. All numbers on this page were measured on 2026-10-20; run results and speeds come from runs on the Apify platform.


Table of contents


At a glance

Sitereed.co.uk — UK job board (plus some overseas jobs)
Jobs available99,567 live jobs on 2026-10-20 (London alone: 23,210)
Search bykeywords / job titles × towns, counties or postcodes (with Reed's distance), pasted Reed URLs (search pages, recruiter pages, job pages), recruiter or employer names / profile numbers, or the whole of Reed
Filtersjob type (permanent / temporary / contract), full- / part-time, remote / hybrid / on-site, salary range, date posted, posted by (agency / employer / Reed), 37 specialisms, graduate, Easy Apply, visa sponsorship, early bird, hide training courses, hide jobs without salary, distance 0–50 miles
Per job67 columns: listing, salary (as shown + numbers + yearly + notes), contract and hours, remote / hybrid, town / county / region / country / postcode, four dates, advertiser (type, category, profile, logo, company page, job reference), specialism, occupation, skills, screening questions, application rules, flags, full description
DepthEvery job of any search — Reed serves only 10,000 results per search, so bigger searches are split along Reed's own filters (the whole site: 153 parts, 0 duplicates)
Speed50 jobs with full details in 4 s · 1,000 jobs with full details in 37 s · all 99,567 jobs (search data) in 72 s
OutputJSON, CSV, Excel, XML, HTML; API, webhooks, Make, Zapier, n8n, Sheets, MCP
Login / cookies / proxyNone needed (a capped UK residential fallback is built in)
Price$1.20 → $0.80 per 1,000 jobs by Apify plan, all included

What you get

Every row is one Reed job advert, 67 columns in a fixed order. Values Reed does not publish are null (or an empty list) — never an empty string or an invented 0. Real examples from 2026-10-20:

  • The job — id (57475083), url, title ("Mortgage Administrator"), jobType ("Permanent", "Temporary", "Contract"), hours with fullTime / partTime, workingOption ("On-site", "Hybrid", "Remote").
  • Pay — salary exactly as Reed shows it ("£28,000 - £45,000 per annum, OTE", "£12.71 per hour", "Competitive salary", "Training Course"; same rules as Reed's pages, checked on 2,078 of 2,078 job cards), salaryFrom / salaryTo as numbers, salaryCurrency, salaryPeriod ("year", "day", "hour" …), Reed's yearly equivalent salaryYearlyFrom / salaryYearlyTo, and the notes salaryNegotiable, salaryOte, salaryIncludesBenefits, salaryProRata, salaryCommissionOnly. salaryShown is false where Reed shows a phrase instead of the numbers — Reed's page data (and its structured data) still carries the advertiser's range for most of these jobs, and it is kept.
  • Where — location ("Chapeltown"), county ("South Yorkshire"), region ("Yorkshire and Humberside"), country ("United Kingdom", "Ireland" …), postcode district ("S35") and locationText, the line exactly as Reed prints it ("Dublin, Ireland, County Dublin").
  • When — datePosted (as Reed shows it; refreshed adverts move up), dateCreated, dateUpdated, expiryDate. Reed stores UK local time without an offset; every date is converted to UTC ISO 8601 (BST and GMT handled).
  • The advertiser — advertiserName (as printed after "by"), advertiserProfileName (Reed profile / brand), advertiserType ("Agency" / "Employer"), advertiserCategory ("Recruitment consultancy", "Direct employer", "Charity/not for profit"), postedByReed, advertiserId, advertiserProfileId, advertiserJobsUrl (all their jobs on Reed), advertiserLogoUrl, companyProfileUrl and advertiserReference — the agency's own job reference ("IR36986O3a").
  • Category — specialism ("Financial Services") and subSpecialism ("Mortgage Administrator") with Reed's ids, occupation / occupationDetail ("Administrator" / "Mortgage Administrator"), knowledgeDomain ("Administration").
  • Applying — easyApply, externalApplication (continues on the advertiser's site), coverLetter ("None", "Optional", "Mandatory"), screeningQuestions ("Do you have a minimum 12 months independent mortgage administration experience?"), ukRightToWorkRequired, visaSponsorship.
  • The advert text — description (complete, plain text with paragraphs and bullets), optional descriptionHtml, Reed's teaser descriptionSnippet, and skills ("CeMAP", "Mortgage Advice").
  • Flags and bookkeeping — graduate, earlyBird, trainingCourse, promoted, featured, detailsScraped, searchKeyword, searchLocation, scrapedAt.

Who uses it — 15 workflows

1. Recruitment agencies — business development

Filter postedBy: ["employer"] for a specialism and region, export weekly, and you have a list of companies that are recruiting without an agency: employer name, Reed profile, company page and the roles they struggle to fill. Sort by advertiserName to see who posts the most.

2. Recruitment agencies — competitor monitoring

Put competitor agencies into recruiters ("Hays", "CMD Recruitment" or their Reed page) and track what they post, where, at what salary and with which advertiserReference — week by week, from a schedule.

3. In-house recruiters and talent acquisition

Benchmark your adverts against the market: what other employers in your town pay for the same title (salaryFrom / salaryTo / salaryPeriod), which skills they list, whether they offer hybrid working and how many ask screening questions.

4. Temporary and contract staffing

Search jobTypes: ["temporary"] or ["contract"] per county and read day rates (salaryPeriod: "day") and hourly rates ("hour") as numbers — 12,919 day-rate and 19,106 hourly-rate jobs were live on Reed on 2026-10-20.

5. Compensation and reward analysts

Export a whole specialism and compute pay bands by sub-specialism, county and contract type. salaryYearlyFrom / salaryYearlyTo put hourly, daily and annual pay on one scale; salaryShown tells you which ranges Reed displays and which sit behind "Competitive salary".

6. Job aggregators and niche job boards

Load all of Reed (≈99,500 jobs) or a niche (for example Education or Social Care) every day with full descriptions; id is stable for de-duplication and expiryDate tells you when to drop a job.

7. Labour-market researchers, economists, journalists and public bodies

Count vacancies by specialism, county, region, jobType and workingOption, follow remote and hybrid shares over time, or measure how many adverts hide their salary — with a dated, reproducible dataset.

8. Local economic development and councils

Every job within 10 or 20 miles of a town (locations + distanceMiles) gives a local vacancy picture for skills plans and inward-investment pitches.

9. HR-tech, payroll, benefits and training sellers

Employers with many open roles are warm leads. Group by advertiserName, keep advertiserType: "Employer", and use companyProfileUrl and advertiserJobsUrl for research before outreach.

10. Career coaches, outplacement and job clubs

Run your clients' target titles and towns each morning (datePosted: "today") and send them a filtered list.

11. Universities and careers services

graduateJobsOnly: true plus the specialisms your students study gives a graduate-jobs feed for a careers portal or newsletter.

12. Immigration advisers and international recruiters

visaSponsorshipOnly: true returns the adverts whose advertiser offers sponsorship; ukRightToWorkRequired marks the ones that do not accept applicants without UK right to work (62.6 % of all jobs on 2026-10-20).

13. Training providers

skills, screeningQuestions and descriptions show demand for qualifications such as CeMAP, CSCS or SIA; trainingCourse separates course adverts from vacancies.

14. Remote-work job boards

workingOption: "remote" (4,799 jobs on 2026-10-20) or "hybrid" (19,475) with full descriptions, ready for your own board.

15. AI, RAG and LLM pipelines

Clean plain-text descriptions, skills and screening questions are ideal for embeddings, CV-to-job matching, salary prediction and summarisation. Call the Actor from an AI agent through the Apify MCP server.


Cookbook — 17 ready-to-run inputs

1. Keyword + town (the default example)

{
"keywords": ["software engineer"],
"locations": ["London"],
"maxItems": 100
}

2. Several job titles × several towns

{
"keywords": ["accountant", "payroll administrator"],
"locations": ["Manchester", "Leeds", "Birmingham"],
"maxItems": 3000
}

Each search gets a fair share of maxItems; jobs found twice are saved once.

3. Every job in a city, with full details

{
"locations": ["London"],
"maxItems": 0
}

London had 23,210 jobs on 2026-10-20 — read completely in 786 s with job details. Reed serves 10,000 per search, so the Actor splits London along Reed's filters by itself.

4. Every job on Reed (fastest bulk export)

{
"maxItems": 0,
"includeDetails": false
}

All 99,567 jobs in 72 s (2026-10-20). Leave out includeDetails: false for full descriptions and the rest of the job record (≈55 minutes at the default pace — raise the run timeout to 2 hours).

5. Remote jobs only

{
"keywords": ["data analyst"],
"workingOption": "remote",
"maxItems": 500
}

6. Contract IT roles posted in the last three days

{
"specialisms": ["IT & Telecoms"],
"jobTypes": ["contract"],
"datePosted": "lastthreedays",
"maxItems": 0
}

7. Daily monitoring of new jobs

{
"keywords": ["teaching assistant"],
"locations": ["Kent"],
"datePosted": "today",
"sortBy": "newest",
"maxItems": 0
}

Schedule it every morning and connect Google Sheets, Slack or a webhook.

8. One recruiter's or employer's jobs by name

{
"recruiters": ["Hays"],
"maxItems": 0
}

"Hays" was resolved to Hays Specialist Recruitment Limited (profile p36210, 2,962 jobs) in our test. A Reed recruiter page (https://www.reed.co.uk/jobs/cmd-recruitment/p12120) or a profile number (p12120) works too.

9. A recruiter's jobs in certain towns

{
"recruiters": ["Hays"],
"locations": ["Bristol"],
"maxItems": 0
}

With recruiters given, keywords and locations narrow that recruiter's jobs (95 Hays jobs in Bristol in our test).

10. Direct employers only — lead list for agencies

{
"specialisms": ["Engineering", "Manufacturing"],
"postedBy": ["employer"],
"locations": ["West Midlands"],
"distanceMiles": "20",
"maxItems": 0
}

11. Graduate jobs for a careers portal

{
"graduateJobsOnly": true,
"specialisms": ["Accountancy", "Financial Services", "IT & Telecoms"],
"maxItems": 2000
}

12. Jobs that offer visa sponsorship

{
"visaSponsorshipOnly": true,
"maxItems": 0
}

Few advertisers tick this box (24 jobs on Reed when we counted on 2026-10-20) — check visaSponsorship and the description as well.

13. Part-time jobs near a postcode

{
"locations": ["SW1A"],
"distanceMiles": "5",
"hours": "part",
"maxItems": 500
}

14. Well-paid finance jobs, salary shown

{
"specialisms": ["Financial Services", "Banking"],
"salaryMin": 60000,
"hideJobsWithoutSalary": true,
"hideTrainingCourses": true,
"maxItems": 1000
}

15. A Reed search URL with any filters

{
"startUrls": [
{ "url": "https://www.reed.co.uk/jobs/nurse-jobs-in-leeds?perm=true&salaryFrom=30000" }
],
"maxItems": 0
}

The Actor asks Reed's own page how it reads the URL, so every filter you set on the website is kept (37 jobs in our test).

16. Specific job adverts

{
"startUrls": [
{ "url": "https://www.reed.co.uk/jobs/software-developer/57412315" },
{ "url": "https://www.reed.co.uk/jobs/mortgage-administrator/57475083" }
]
}

Expired adverts are reported in the log ("… no longer on Reed") instead of failing the run.

17. Search data only, for the biggest exports

{
"keywords": ["manager"],
"maxItems": 0,
"includeDetails": false
}

Reed listed about 30,400 "manager" jobs on 2026-10-20; search data comes in up to 1,000 jobs per call. Paste the interesting job URLs into startUrls afterwards for full details.


Tutorial: your first run in the Apify Console

  1. Open the Actor and click Try for free. The form is pre-filled with "software engineer" in "London" and 50 results.
  2. Change Keywords or job titles and Locations — or leave both empty for every job on Reed — and pick Reed filters if you like.
  3. Set Max results (0 = everything that matches) and keep Include full job details on unless you need the fastest bulk export.
  4. Click Start. The status line counts saved jobs, search calls and job details while it runs; rows appear in the Output tab within seconds.
  5. When the run says Succeeded, open Output and click Export → CSV, Excel, JSON, XML or HTML. Views Overview, Salary, Advertiser and Job facts show the most useful columns first.
  6. Open Storage → Key-value store → SUMMARY for the run report: how many jobs Reed listed per search, how many were read (coveragePercent), how the search was split and how many requests were made.

Tutorial: run it from the API

1. Get your token

Apify Console → Settings → API & Integrations → copy your personal API token.

2. Run and get the data in one call (small runs)

curl -X POST "https://api.apify.com/v2/acts/logiover~reed-scraper/run-sync-get-dataset-items?token=YOUR_TOKEN&format=json" \
-H "Content-Type: application/json" \
-d '{"keywords":["nurse"],"locations":["Leeds"],"maxItems":200}'

3. Start a run and fetch the data later (big runs)

# start
curl -X POST "https://api.apify.com/v2/acts/logiover~reed-scraper/runs?token=YOUR_TOKEN" \
-H "Content-Type: application/json" -d '{"locations":["Manchester"],"maxItems":0}'
# poll: GET https://api.apify.com/v2/actor-runs/RUN_ID?token=YOUR_TOKEN (status SUCCEEDED)
# data: GET https://api.apify.com/v2/datasets/DATASET_ID/items?format=csv&token=YOUR_TOKEN

4. Node.js (apify-client)

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('logiover/reed-scraper').call({
keywords: ['quantity surveyor'],
locations: ['Bristol', 'Cardiff'],
jobTypes: ['permanent'],
maxItems: 1000,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items.length, items[0].title, items[0].salary);

5. Python (apify-client)

from apify_client import ApifyClient
client = ApifyClient("YOUR_TOKEN")
run = client.actor("logiover/reed-scraper").call(run_input={
"keywords": ["HGV driver"],
"locations": ["Birmingham"],
"distanceMiles": "20",
"maxItems": 500,
})
for job in client.dataset(run["defaultDatasetId"]).iterate_items():
print(job["title"], job["salary"], job["advertiserName"], job["url"])

6. Read the run summary

GET https://api.apify.com/v2/key-value-stores/STORE_ID/records/SUMMARY returns outcome, rowsSaved, per-search jobsOnReed / jobsSeen / coveragePercent / parts, searchPagesRead, jobDetailsRead, firstRowAfterSecs, request statistics and — when a budget stopped the run — stoppedBy: "MAX_COST".


Input reference

FieldTypeDefaultWhat it does
keywordsarray of strings[] (prefill "software engineer")Job titles or keywords; each is one Reed search. Empty with empty locations = all of Reed.
locationsarray of strings[] (prefill "London")Towns, counties or postcodes ("Manchester", "Kent", "SW1A"); every keyword × every location.
distanceMilesstring"10"Reed's radius: "0", "1", "3", "5", "10", "15", "20", "30", "50".
jobTypesarray[]"permanent", "temporary", "contract" (any of them).
hoursstring"any""full" or "part".
workingOptionstring"any""onSite", "hybrid" or "remote".
salaryMininteger0Reed's "Salary from", pounds per year.
salaryMaxinteger0Reed's "Salary to", pounds per year.
datePostedstring"anytime""today", "lastthreedays", "lastweek", "lasttwoweeks".
postedByarray[]"agency", "employer", "reed".
specialismsarray[]Any of Reed's 37 specialisms by name ("IT & Telecoms", "Social Care", "Education" …).
graduateJobsOnlybooleanfalseReed's Graduate filter.
easyApplyOnlybooleanfalseOnly Easy Apply jobs.
visaSponsorshipOnlybooleanfalseOnly jobs offering visa sponsorship.
earlyBirdOnlybooleanfalseReed's Early bird filter.
hideTrainingCoursesbooleanfalseLeave out training-course adverts.
hideJobsWithoutSalarybooleanfalseLeave out "Competitive salary", "Salary negotiable" and "Commission only" adverts.
startUrlsarray of { "url": … }[]Reed search pages, recruiter pages (/jobs/<name>/p<number>), job pages or job numbers.
recruitersarray of strings[]Names, Reed recruiter URLs or profile numbers; keywords, locations and filters narrow their jobs.
maxItemsinteger1000 (prefill 50)Unique jobs to save across all searches; 0 = no limit.
includeDetailsbooleantrueRead each job's own record (description, region, postcode, skills, questions …).
sortBystring"relevance""relevance" = Reed's order for keyword searches (first 1,000 per search), "newest" = newest first.
includeDescriptionHtmlbooleanfalseAdds descriptionHtml.
maxRequestsPerSecondinteger30Upper pace limit (1–60); the Actor slows down on refusals by itself.
proxyConfigurationobject{ "useApifyProxy": false }Optional fallback, used only while Reed refuses the direct connection.

Output data dictionary

Fill rates are measured on two platform runs of 2026-10-20: all 99,567 jobs on Reed (search data) and every job in London with job details (23,213 jobs). "true" gives the share of jobs where a flag is true. "—" = the column needs job details.

ColumnTypeMeaningFillExample
idnumberReed's job number — stable, use it to de-duplicate.A 100 %57475083
urlstring (URL)The job page on reed.co.uk.A 100 %"https://www.reed.co.uk/jobs/mortgage-admin…"
titlestringJob title as advertised.A 100 %"Mortgage Administrator"
salarystringSalary line exactly as Reed shows it (numbers, period and notes, or a phrase such as "Competitive salary" / "Training Course").A 100 %"£28,000 - £45,000 per annum, OTE"
salaryFromnumberLower end of the salary in salaryCurrency per salaryPeriod.A 97.9 %28000
salaryTonumberUpper end of the salary (equal to salaryFrom for a single figure).A 97.9 %45000
salaryCurrencystringISO currency code ("GBP", "EUR", "USD" …).A 97.9 %"GBP"
salaryPeriodstring"year", "month", "week", "day" or "hour".A 97.9 %"year"
salaryShownbooleantrue when Reed displays the numbers; false for "Competitive salary", "Salary negotiable", "Commission only", "Training Course" or no salary.A 100 % · true 79.2 %true
salaryYearlyFromnumberReed's yearly equivalent of salaryFrom (hourly and daily rates converted by Reed).L 98.2 %28000
salaryYearlyTonumberReed's yearly equivalent of salaryTo.L 98.2 %45000
salaryNegotiablebooleanReed note "negotiable" / "Salary negotiable".A 100 % · true 8 %false
salaryOtebooleanOn-target earnings (pay includes commission or bonus).A 100 % · true 1.7 %true
salaryIncludesBenefitsbooleanReed note "inc benefits".A 100 % · true 6.6 %false
salaryProRatabooleanReed note "pro-rata".A 100 % · true 0.5 %false
salaryCommissionOnlybooleanReed note "Commission only".A 100 % · true 0.2 %false
jobTypestring"Permanent", "Temporary" or "Contract".A 100 %"Permanent"
hoursstring"Full-time", "Part-time" or "Full-time or part-time".A 100 %"Full-time"
fullTimebooleanFull-time hours offered.A 100 % · true 95.2 %true
partTimebooleanPart-time hours offered.A 100 % · true 12 %false
workingOptionstring"On-site", "Hybrid" or "Remote" — Reed's classification used by its filter.A 98.8 %"Hybrid"
locationstringTown or area as the job page shows it.A 100 %"London"
countystringCounty ("West Yorkshire", "London", "County Down").A 98.6 %"London"
regionstringRegion ("South East England", "Yorkshire and Humberside", "Leinster").L 99 %"South East England"
countrystringCountry ("United Kingdom", "Ireland", "USA" …).L 100 %"United Kingdom"
postcodestringPostcode district Reed holds for the job ("EC2A", "S35").L 38.8 %"EC2A"
locationTextstringLocation line exactly as Reed prints it.A 100 %"London"
datePostedstring (ISO 8601, UTC)Date Reed shows as posted (moves up when the advert is refreshed).A 100 %"2026-10-20T07:21:01.887Z"
dateCreatedstring (ISO 8601, UTC)When the advert was first created.A 100 %"2026-10-20T07:21:01.890Z"
dateUpdatedstring (ISO 8601, UTC)Last update of the advert.A 100 %"2026-10-20T07:21:01.890Z"
expiryDatestring (ISO 8601, UTC)When the advert closes.A 100 %"2026-12-01T23:59:59.000Z"
advertiserNamestringAdvertiser as printed after "by" on Reed.A 100 %"Pure Resourcing Limited"
advertiserProfileNamestringThe advertiser's Reed profile (brand) name.A 94.6 %"Pure Resourcing Limited"
advertiserTypestring"Agency" or "Employer" — Reed's Posted by filter (charities count as employers).A 100 %¹"Agency"
advertiserCategorystring"Recruitment consultancy", "Direct employer" or "Charity/not for profit".A 100 %¹"Recruitment consultancy"
postedByReedbooleanPosted by Reed itself.L 100 % · true 0.2 %false
advertiserIdnumberReed's id of the advertising organisation.A 100 %56313
advertiserProfileIdnumberReed's profile number (the p… in recruiter URLs).A 94.6 %4059
advertiserJobsUrlstring (URL)All of this advertiser's jobs on Reed.A 100 %"https://www.reed.co.uk/jobs/pure-resourcin…"
advertiserLogoUrlstring (URL)The advertiser's logo on Reed.A 94.6 %"https://resources.reed.co.uk/profileimages…"
companyProfileUrlstring (URL)The advertiser's company page on Reed.L 56.7 %"https://www.reed.co.uk/company-profile/Pur…"
advertiserReferencestringThe agency's or employer's own job reference.L 78.3 %"IR36986O3a"
specialismstringReed's specialism (one of 37).A 93.6 %"Financial Services"
specialismIdnumberReed's specialism id (e.g. 52 = IT & Telecoms).A 93.6 %117
subSpecialismstringFiner category inside the specialism.L 100 %"Mortgage Administrator"
subSpecialismIdnumberReed's sub-specialism id.L 100 %1832
occupationstringReed's occupation (taxonomy level 1).A 97 %"Administrator"
occupationDetailstringReed's occupation (taxonomy level 2).A 76.8 %"Mortgage Administrator"
knowledgeDomainstringReed's broad domain (taxonomy root).L 100 %"Administration"
easyApplybooleanOne-click application with a Reed profile.A 100 % · true 64.1 %false
externalApplicationbooleanThe application continues on the advertiser's own website.L 100 % · true 17.1 %false
coverLetterstring"None", "Optional" or "Mandatory".A 100 %"None"
screeningQuestionsarray of stringsQuestions in Reed's application form for this job.L 20.2 %["Do you have a minimum 12 months independe…"
skillsarray of stringsSkills Reed lists on the job page.L 39 %["Mortgage Administration", "Mortgage Admin…"
ukRightToWorkRequiredbooleanApplicants must already have the right to work in the UK.A 100 % · true 62.6 %true
visaSponsorshipbooleanThe advertiser offers visa sponsorship.L 100 % · true <0.1 %true
graduatebooleanGraduate job.L 100 % · true 7.3 %true
earlyBirdbooleanReed "Early bird" badge.A 100 % · true 11.7 %true
trainingCoursebooleanAdvert for a paid training course ("Training Course" instead of a salary).A 100 % · true 3.5 %true
promotedbooleanPromoted (paid) placement.A 100 % · true 13 %true
featuredbooleanFeatured advert.A 100 % · true 44.5 %true
descriptionstringComplete advert text, plain text with paragraphs and bullets.L 100 %"Mortgage Administrator Location: City of …"
descriptionHtmlstringOriginal advert HTML (only with includeDescriptionHtml).optional"<p><strong>Mortgage Administrator</strong></p>…"
descriptionSnippetstringReed's short teaser from the search results.A 100 %"Optometrist Location: White City Position:…"
detailsScrapedbooleanWhether the job's own record was read.L 100 %true
searchKeywordstringKeyword of the search that found the job (empty for URL / recruiter / whole-site runs).when searched"nurse"
searchLocationstringLocation of the search that found the job.when searched"Leeds"
scrapedAtstring (ISO 8601, UTC)When the run started.A 100 %"2026-10-20T11:33:43.672Z"

A = all 99,567 jobs on Reed, search data only (run of 2026-10-20). L = every job in London with job details, 23,213 jobs (run of 2026-10-20). Columns marked L need job details (includeDetails, on by default); without details they are null. In search-data-only runs specialism is filled where the search was split or filtered by specialism (93.6 % of the whole site).

¹ advertiserCategory was added after the measurement runs. It comes from the same Reed field as advertiserType (99.9 % in the whole-site run); the other 87 jobs were charities, which both columns now label (all 87 checked one by one on 2026-10-20).


Real output sample

One complete row from a platform run on 2026-10-20 (run JMCM99VR2TImZ5dEB, nothing edited or masked):

{
"id": 57475083,
"url": "https://www.reed.co.uk/jobs/mortgage-administrator/57475083",
"title": "Mortgage Administrator",
"salary": "£28,000 - £45,000 per annum, OTE",
"salaryFrom": 28000,
"salaryTo": 45000,
"salaryCurrency": "GBP",
"salaryPeriod": "year",
"salaryShown": true,
"salaryYearlyFrom": 28000,
"salaryYearlyTo": 45000,
"salaryNegotiable": false,
"salaryOte": true,
"salaryIncludesBenefits": false,
"salaryProRata": false,
"salaryCommissionOnly": false,
"jobType": "Permanent",
"hours": "Full-time",
"fullTime": true,
"partTime": false,
"workingOption": "Hybrid",
"location": "London",
"county": "London",
"region": "South East England",
"country": "United Kingdom",
"postcode": "EC2A",
"locationText": "London",
"datePosted": "2026-10-20T07:21:01.887Z",
"dateCreated": "2026-10-20T07:21:01.890Z",
"dateUpdated": "2026-10-20T07:21:01.890Z",
"expiryDate": "2026-12-01T23:59:59.000Z",
"advertiserName": "Pure Resourcing Limited",
"advertiserProfileName": "Pure Resourcing Limited",
"advertiserType": "Agency",
"advertiserCategory": "Recruitment consultancy",
"postedByReed": false,
"advertiserId": 56313,
"advertiserProfileId": 4059,
"advertiserJobsUrl": "https://www.reed.co.uk/jobs/pure-resourcing-limited/p4059",
"advertiserLogoUrl": "https://resources.reed.co.uk/profileimages/logos/thumbs/Logo_4059.png",
"companyProfileUrl": "https://www.reed.co.uk/company-profile/Pure-Resourcing-Limited-60304",
"advertiserReference": "IR36986O3a",
"specialism": "Financial Services",
"specialismId": 117,
"subSpecialism": "Mortgage Administrator",
"subSpecialismId": 1832,
"occupation": "Administrator",
"occupationDetail": "Mortgage Administrator",
"knowledgeDomain": "Administration",
"easyApply": false,
"externalApplication": false,
"coverLetter": "None",
"screeningQuestions": [
"Do you have a minimum 12 months independent mortgage administration experience?"
],
"skills": [
"Mortgage Administration",
"Mortgage Administrator"
],
"ukRightToWorkRequired": true,
"visaSponsorship": false,
"graduate": false,
"earlyBird": false,
"trainingCourse": false,
"promoted": false,
"featured": false,
"description": "Mortgage Administrator\n\nLocation: City of London - Hybrid, 3 days per week office based\n\nSalary: Up to £35k Basic + Excellent Bonus Potential + Benefits\n\nA fantastic opportunity is available for an experienced Mortgage Administrator to join our client, a leading financial services brokerage based in London. This is a social, busy and fast paced environment offering a great career path and professional development.\n\nYou will be responsible for supporting a team of Mortgage Brokers, administering mortgage administration through to completion, liaising with clients, solicitors, lenders etc.\n\nApplicants will need to be highly professional, being comfortable dealing with a wide range of clientele, including High Net Worth and UHNW individuals.\n\nResponsibilities:\n\n• Administering mortgage applications through to completion.\n• Regular liaison with lenders to obtain updates on applicant status and proactively progress mortgage applications through to offer.\n\nSkills & Experience Required:\n\n• A minimum of 18 months mortgage administration experience.\n• Experience of managing mortgage applications from offer through to completion\n• Ability to resolve problems quickly & efficiently.\n• Outstanding communication skills at all levels, both written and oral.\n• Demonstrate a confident telephone manner & excellent customer service.\n• A team player with ability to use own initiative.",
"descriptionSnippet": null,
"detailsScraped": true,
"searchKeyword": null,
"searchLocation": null,
"scrapedAt": "2026-10-20T11:33:43.672Z"
}

The same run in a spreadsheet (five rows, a few columns):

titlesalarylocationTextjobTypeadvertiserNameadvertiserTypedatePosted
Mortgage Administrator£28,000 - £45,000 per annum, OTELondonPermanentPure Resourcing LimitedAgency2026-10-20T07:21:01.887Z
Workforce Planning Partner£35,072 - £36,918 per annumDevonPermanentWEAEmployer2026-10-20T09:40:05.390Z
Registered Nurse£39,520 - £43,680 per annumHuddersfield, West YorkshirePermanentIntegrated Health Care ManagementAgency2026-10-02T10:33:15.447Z
Regional Clinical Lead (Registered Nurse)£45,000 per annumLeeds, West YorkshirePermanentHelping HandsEmployer2026-10-13T08:54:05.233Z
Immunisation Nurse£25 - £30 per hourHuddersfield, West YorkshireTemporaryGreys Specialist RecruitmentAgency2026-10-16T08:18:37.000Z

CSV and Excel exports keep the column order of the data dictionary; arrays (skills, screeningQuestions) become numbered columns (skills/0, skills/1 …).


Scale and speed (measured)

All runs on the Apify platform, default memory (1 GB), 2026-10-20.

RunResultTime
Prefill / first run (50 jobs, "software engineer" in London, full details)50 jobs, first row after 1.1 s4.0 s
1,000 jobs, default settings ("manager", full details)1,000 jobs, 1,001 answers from Reed, 0 refused37.4 s
3,000 newest jobs in the UK, full details3,000 jobs, 0 duplicates105.9 s
5,000 newest jobs in the UK, full details5,000 jobs, 5,010 answers, 0 refused172 s
Every job in London, full details (maxItems: 0, 25 requests per second)23,213 unique jobs, 0 duplicates, 41 parts, 1 advert expired during the run786 s
Every job on Reed, search data only (maxItems: 0, includeDetails: false)99,567 unique jobs, 0 duplicates, 217 Reed calls, 153 parts, 234 MB memory71.8 s
Pace test: 2,000 job details at up to 50 requests per second2,008 answers OK, 0 refused59.8 s
Simulated hold (direct connection refused), 50 jobs50 jobs through UK residential IPs22.4 s

How big searches are read completely

  • Reed serves only the first 10,000 results of a search. Measured: with 1,000 jobs per call, page 11 returns page 10 again, page 50 and page 99 too — a fake pagination that silently repeats the last window. Searches below 10,000 end with "page not found" after their last page.
  • Splitting along Reed's own filters. Reed reports how many jobs each filter value holds with every answer. A search above 10,000 is split first by job type (permanent / temporary / contract), then by posted by (agency / employer), then by specialism — three exact partitions of Reed's listings — and, only if a part is still too big, by remote / hybrid, hours and county. Every job of every part is read and de-duplicated by its Reed id. All of Reed needed 153 parts on 2026-10-20, London 41.
  • Stable order. Reed's relevance order shifts between pages (145 of 10,000 "manager" jobs repeated across ten pages while others were skipped); the newest-first order does not (0 repeats). The Actor therefore uses relevance only for a single call of up to 1,000 jobs and reads everything bigger newest first. Parts that end below 99.5 % of their size are read once more (completion pass).
  • Counts move. New jobs arrive every minute, so a long run can save a few more jobs than Reed listed when it started (London: 23,213 saved, 23,210 listed at the start).
  • Search data vs. job details. One search call returns up to 1,000 jobs; each job's own record is one more call (about 30 jobs per second at the default pace).

What you pay

A fixed price per job in the dataset — compute, connection, search calls and job-detail calls are included. No monthly rental and no charge for duplicates or for jobs your filters excluded.

Apify planPrice per 1,000 jobs1,000 jobs10,000 jobs100,000 jobs
Free$1.20$1.20$12.00$120.00
Bronze$1.07$1.07$10.67$106.67
Silver$0.93$0.93$9.33$93.33
Gold, Platinum, Diamond$0.80$0.80$8.00$80.00

The price is the same with or without job details. Every job on Reed (≈99,600 on 2026-10-20) costs about $120 on the Free plan and about $80 on Gold.

Maximum cost per run

Apify stops every pay-per-result run at its Maximum cost per run (you set it in the run options; the platform also applies a default). The Actor reads that limit when it starts, collects only what it covers, stops cleanly and says so: "Saved 46 jobs — this run's maximum cost ($0.05) covers 46 results at the current price. Raise "Maximum cost per run" to get more." (real message of a test run on 2026-10-20 — 46 jobs saved, 46 charged; the number depends on your plan's price). The run ends as Succeeded, the SUMMARY says stoppedBy: "MAX_COST", and you pay only for the jobs in the dataset. For a whole-site export raise the limit accordingly.


Integrations

API, apify-client and webhooks

See Tutorial: run it from the API. Add a webhook (Actor → Integrations → Webhooks) on Run succeeded to POST the dataset id to your endpoint or queue — the cleanest way to load new jobs into a CRM or ATS.

Make (Integromat)

Apify app: "Run an Actor" with logiover/reed-scraper and your JSON input, then "Get Dataset Items" into Sheets, Slack, e-mail or a CRM.

Zapier

Trigger "Finished Actor Run" (or action "Run Actor") in the Apify Zapier app, then "Find Dataset Items" to send every new job to a sheet, a channel or a CRM record.

n8n

The Apify node runs the Actor and returns the items for any following node (Postgres, HTTP Request, OpenAI …).

Google Sheets and Airtable

Use the Apify Google Sheets integration to append every scheduled run to a sheet; for Airtable use Make, Zapier or n8n, or import the CSV — id is a good primary field.

Scheduling

Actor → Schedules: run daily with datePosted: "today" (or weekly with "lastweek") and sortBy: "newest" to collect only new jobs. Keep a dataset per run or merge into one table by id.

Data warehouses (BigQuery, Snowflake, Postgres, S3)

Fetch GET /v2/datasets/{id}/items?format=json (or csv, xlsx, xml) from your ETL tool, or let a webhook trigger the load. Dates are ISO 8601 in UTC, numbers are numbers, booleans are booleans.

MCP and AI agents

The Actor works with the Apify MCP server, so Claude, ChatGPT or your own agent can call it as a tool — "find hybrid data-engineering jobs in Manchester posted this week paying over £60k" — and receive structured rows.


Performance tips

  • Search data first, details for a shortlist. For tens of thousands of jobs run with includeDetails: false (up to 1,000 jobs per call), filter in your spreadsheet, then paste the interesting job URLs into startUrls for full details.
  • Use Reed's filters instead of post-filtering — jobTypes, workingOption, salaryMin, datePosted, postedBy and specialisms shrink the search before anything is downloaded.
  • Whole-site exports with details take about 55 minutes at the default pace: raise the run timeout (Run options → Timeout) to 2 hours, or maxRequestsPerSecond to 50 (measured clean on 2026-10-20).
  • Daily monitoring: datePosted: "today" with sortBy: "newest" reads only the newest jobs.
  • Many towns or titles: list them in one run — each search gets a fair share of maxItems, and jobs found by several searches are saved once.
  • Leave the proxy empty. The direct connection is the fastest route; datacenter proxies are refused by Reed about half of the time (measured), and residential IPs are used automatically if Reed ever holds the connection.

Troubleshooting: every status message explained

Status / outcomeWhat it meansWhat to do
Saved N jobs (max results reached) in X s.You got what you asked for.Raise maxItems for more.
Saved N jobs (every matching job read; Reed listed M when the run started) in X s.Every job was read. N can differ slightly from M: duplicates across searches are kept once, and Reed's counts move. coveragePercent per search is in the SUMMARY.—
… · K without details (Reed did not answer)K jobs kept their search data, but their own record could not be read after retries (detailsScraped: false).Paste those job URLs into startUrls later.
… · K search page(s) could not be read (outcome PARTIAL)Rows were saved, but some search calls failed after all retries.Re-run later; the SUMMARY shows which search was affected.
Saved N jobs — this run's maximum cost ($X) covers N results …The run reached your Maximum cost per run (outcome COMPLETED, stoppedBy: MAX_COST).Raise the limit in the run options.
Saved 0 jobs — this run's maximum cost … does not cover a single result.The limit is below the price of one job.Raise the limit.
Reed has no jobs for … If "X" is spelled differently on Reed … (EMPTY_RESULT)Reed answered, but the place is unknown to Reed or has no jobs.Try a town, county or postcode Reed knows (or a bigger distanceMiles).
No jobs matched on Reed — the search ran fine but returned 0 results … (EMPTY_RESULT)The keywords and filters exclude everything.Use broader keywords or fewer filters.
Log: N of M job URL(s) are no longer on Reed (expired or removed).Those adverts have ended.—
Log: "X": no exact name match on Reed; using the closest advertiser "Y".A recruiter name was matched to the closest Reed advertiser.Check the name, or paste the recruiter's Reed page instead.
Log: No recruiter or employer called "X" found …No advertiser of that name appears among the jobs that mention it.Paste the recruiter's Reed page (/jobs/<name>/p<number>).
Log: Completion pass for N part(s) …Jobs expired while a part was read and the order moved by a few places; the part is read once more.Nothing — it is automatic and only adds missing jobs.
Log: Reed refused the direct connection for …; switching to the residential rescue route.Reed is holding the platform's shared address; up to 150 requests go through UK residential IPs so the run keeps going.Nothing for small runs. For long runs set proxyConfiguration to Apify RESIDENTIAL (United Kingdom).
Log: Reed is refusing this connection — pausing 20 s … (later: … works again …; switching back to it.)The direct connection pauses (20–120 s) instead of hammering, and is used again once the hold ends; pausesForRefusals counts the pauses.Wait, or re-run later.
Log: The residential rescue route reached its cap (150 requests) …The free fallback is used up for this run; the direct connection continues with pauses.Set Apify RESIDENTIAL in proxyConfiguration.
Log: Read the search from the URL itself (Reed's page did not answer): …A pasted URL was interpreted by the Actor's own URL reader.Check the SUMMARY criteria of that search.
Log: Unknown specialism "X" — ignored.The specialism name is not one of Reed's 37.Pick it from the list in the input form.
Run failed: No jobs collected: no page could be fetched (…) (BLOCKED / FETCH_FAILED)Reed refused every request — an empty result is never reported as success in this case.Re-run later, or set proxyConfiguration to Apify RESIDENTIAL.
Run failed: No jobs collected and N page(s) could not be read, so an empty result cannot be confirmed.Some calls failed and nothing was saved.Re-run later.
Run failed: None of the start URLs or recruiters is usable … (BAD_INPUT)The pasted URLs are not Reed search, recruiter or job pages.Paste URLs from reed.co.uk/jobs.

Honest limits

  • 10,000 results per Reed search — solved by splitting, and the whole site splits cleanly (job type × posted by × specialism). A part that still exceeded 10,000 after every filter would be read to 10,000 and the rest reported as beyondReedWindow in the SUMMARY; this did not happen on 2026-10-20.
  • Remote / hybrid is Reed's classification. 98.8 % of all jobs carry one; brand-new adverts often have none for the first hours (58.5 % of the 3,000 newest jobs).
  • Postcode districts only, and not always — about 39 % of jobs ("EC2A", "S35"); nationwide and remote jobs have none.
  • Skills (39 %) and screening questions (20 %) exist only where the advertiser entered them (London, with details).
  • No recruiter e-mail addresses. Reed removes e-mail addresses from advert text (0 of 23,213 London descriptions contained one; advertisers write "name (DOT) surname @ …" instead), and phone numbers are rare. Use advertiserJobsUrl and companyProfileUrl to research advertisers.
  • Hidden salaries. About 16 % of adverts show "Competitive salary", "Salary negotiable" or "Commission only" (with training courses and jobs without any salary, 20.8 % have salaryShown: false). Most still carry the advertiser's range in Reed's page data, which is exported; 2.1 % of all jobs have no salary numbers at all.
  • Training courses — 3.5 % of Reed's listings are adverts for paid courses ("Training Course" instead of a salary). They are flagged in trainingCourse and can be excluded with hideTrainingCourses.
  • Row order follows the arrival of job records, not strictly Reed's order; sort by datePosted if it matters.
  • Pace. Job details are one call per job: about 30 jobs per second at the default pace, so a whole-site export with details takes about 55 minutes.
  • Temporary holds. If one network address sends Reed a lot of traffic, Reed may refuse it for a while. We saw no refusal in about 37,000 requests on 2026-10-20 (up to 50 per second), but the Actor is built for it: 150 requests through UK residential IPs, pauses on the direct connection, and rows without details keep their search data.
  • Counts move. Reed adds and removes adverts all day, so totals differ slightly between runs and between Reed's headline number and your dataset.
  • Overseas jobs. Reed also lists some jobs in Ireland, the USA, Australia and elsewhere; country and salaryCurrency tell them apart.

How it compares

This ActorReed's developer APICopying from reed.co.uk by handReed job alerts
Account / key neededNoRegistered API keyNoReed account
Jobs per requestUp to 1,000 per search call; whole site in one runUp to 100 per callOne page at a timeE-mails
Salary as shown + numbers + yearly + notesYesNumbers, yearly, type; hidden salaries left outManualNo
Remote / hybrid, county, region, postcodeYesNoManualNo
Specialism, skills, screening questionsYesNoManualNo
Agency vs employer, profile, referenceYesEmployer name and idManualNo
Whole-site export beyond 10,000 per searchYes (automatic splitting)Paging by handNoNo
Export CSV / Excel / JSON, webhooks, schedulesYesBuild it yourselfNoE-mail only

FAQ

What is Reed Scraper?

An Apify Actor that exports job adverts from reed.co.uk — title, salary, location, dates, contract type, remote/hybrid, advertiser, specialism, skills and the full description — as JSON, CSV or Excel, for any search, recruiter, town or the whole site.

Is there an official Reed API for job data?

Reed's developer API needs a registered key, returns at most 100 jobs per call with fewer fields, and hides salaries hidden on the website. This Actor needs no key and returns the full public job record — a Reed API alternative.

How do I scrape Reed jobs to Excel or CSV?

Run your search, open the Output tab and click Export → Excel (or CSV); via the API add format=xlsx or format=csv.

Do I need proxies to scrape Reed.co.uk?

No. The Actor uses a direct connection; only while Reed holds it are up to 150 requests per run sent through UK residential IPs (included in the price).

How many jobs can I scrape from Reed?

All of them: 99,567 live jobs on 2026-10-20. Reed serves only 10,000 per search, so the Actor splits big searches along Reed's own filters and reads every part.

How fast is it?

50 jobs with full details in 4 seconds, 1,000 in 37 seconds, all 99,567 jobs (search data) in 72 seconds — see Scale and speed.

How much does it cost to scrape Reed?

$0.80–$1.20 per 1,000 jobs depending on your Apify plan, everything included — e.g. 10,000 jobs cost $8–$12.

Does it get salaries from Reed?

Yes: salary exactly as Reed shows it, plus salaryFrom, salaryTo, salaryCurrency, salaryPeriod, the yearly equivalent and Reed's notes (OTE, benefits, pro-rata, negotiable, commission only). 97.9 % of all jobs carry salary numbers (2026-10-20).

What does "Competitive salary" mean in the data?

Reed shows that phrase instead of the numbers. salaryShown is then false; if Reed's page data holds the advertiser's range it is still in salaryFrom / salaryTo.

Can I get day rates and hourly rates?

Yes — salaryPeriod is "day" or "hour" for those jobs and salaryYearlyFrom / salaryYearlyTo give Reed's yearly equivalent. 12,919 day-rate and 19,106 hourly jobs were live on 2026-10-20.

Can I scrape only remote or hybrid jobs from Reed?

Yes: "workingOption": "remote" or "hybrid".

Can I filter by salary?

Yes: salaryMin and salaryMax use Reed's salary range filter (pounds per year). Every row also has the numbers for your own filters.

Can I get every job in one town or county?

Yes — put it into locations, choose distanceMiles, and set maxItems to 0. London had 23,210 jobs on 2026-10-20.

Can I export every job on Reed.co.uk?

Yes: leave keywords and locations empty and set maxItems: 0. Raise your Maximum cost per run to cover ~100,000 results.

How do I get all jobs from one recruitment agency or employer?

Put its name ("Hays"), its Reed page (https://www.reed.co.uk/jobs/<name>/p<number>) or profile number into recruiters.

Can I paste a Reed search URL with my filters?

Yes. Any reed.co.uk/jobs search URL works — keywords, location, distance, salary, job type, specialism, date and the other filters you clicked on the website are kept.

Can I scrape single Reed job adverts?

Yes — paste job URLs or bare job numbers into startUrls.

Do I need a Reed account, login, cookies or an API key?

No. Everything is public.

Does it tell me if a job is from an agency or a direct employer?

Yes: advertiserType ("Agency" / "Employer"), advertiserCategory ("Recruitment consultancy", "Direct employer", "Charity/not for profit") and postedByReed. On 2026-10-20, 76.9 % of Reed's jobs came from agencies.

Does it include the recruiter's e-mail or phone number?

No — Reed removes e-mail addresses from adverts. You get the advertiser's name, Reed profile, company page and job reference.

Which jobs offer visa sponsorship?

Use visaSponsorshipOnly: true (24 jobs on 2026-10-20) and check visaSponsorship; ukRightToWorkRequired marks adverts that require existing UK right to work.

Are the dates in UK time?

Reed stores UK local time; the Actor converts every date to UTC ISO 8601, so 10:46 BST becomes 09:46:18Z.

Why did I get fewer (or more) jobs than Reed's headline number?

Jobs found by two of your searches are saved once, and Reed's count changes while the run reads. The SUMMARY shows Reed's count and coveragePercent per search.

How do I monitor new Reed jobs every day?

Schedule a run with "datePosted": "today" and "sortBy": "newest", then connect a webhook, Google Sheets or Slack.

Are duplicates removed?

Yes. Every job is de-duplicated by its Reed id within a run — across searches, parts and pages. The whole-site run on 2026-10-20 had 0 duplicates in 99,567 rows.

Does it work for jobs outside England?

Yes — Scotland, Wales and Northern Ireland are included, and Reed's overseas jobs come with their country.

What are "Training Course" adverts?

Paid courses advertised among jobs (for example trainee programmes). They show "Training Course" instead of a salary; exclude them with hideTrainingCourses: true.

What happens if Reed blocks or changes something?

The Actor slows down, switches to a capped residential route, retries, and — if nothing works — fails with the reason. It never reports an empty dataset as a successful search.

Can I use the data with AI or an LLM?

Yes — through the API, webhooks or the Apify MCP server; plain-text descriptions and skills suit embeddings and matching.

Can I scrape other UK job boards with it?

No — this Actor reads reed.co.uk only.

I need a field or filter that is missing. Can you add it?

Yes — open an issue on the Actor's Issues tab and describe what you need.


Glossary

TermMeaning
Specialism / sub-specialismReed's 37 job categories and the finer category inside them.
Occupation / knowledge domainReed's occupation taxonomy and its broad domain.
Posted by: agency / employer / ReedWhether a recruitment agency, the employer itself or Reed posted the job (advertiserType, postedByReed).
Easy ApplyOne-click application with a Reed profile (easyApply).
Early birdReed's badge for jobs with few applications so far (earlyBird).
Promoted / FeaturedPaid advert placements on Reed (promoted, featured).
OTEOn-target earnings — pay including commission or bonus (salaryOte).
Pro-rataFull-time pay, paid in proportion to the hours worked.
Competitive salary / Salary negotiablePhrases Reed shows instead of the numbers (salaryShown: false).
Training CourseAn advert for a paid course rather than a job (trainingCourse).
Right to work in the UKLegal permission to work in the UK (ukRightToWorkRequired).
Visa sponsorshipThe employer can sponsor a work visa (visaSponsorship).
Postcode districtThe outward part of a UK postcode ("EC2A") (postcode).
Part (of a search)A slice of a big search within Reed's 10,000-result limit.
Maximum cost per runThe spending limit Apify applies to a pay-per-result run.

This Actor reads only publicly available job adverts — the same information any visitor sees on reed.co.uk without logging in — and collects business information that advertisers publish to be seen. It does not log in, does not bypass access controls, and does not collect data about job seekers. Some adverts name a contact person; if you store or process such personal data, the UK GDPR and the Data Protection Act 2018 apply to you: have a lawful basis and a legitimate purpose, keep only what you need, and delete it when it is no longer needed. Respect the advertisers' copyright in their advert texts when you republish them. You are responsible for using the data in line with Reed's terms, applicable law and your own policies; if in doubt, ask a lawyer.

Legal and trademark disclaimer: This Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by Reed.co.uk, Reed Specialist Recruitment Ltd or the REED group of companies. All trademarks are the property of their respective owners.


Changelog

  • 1.0 (2026-10-20) — First release: every job on reed.co.uk; keyword × location searches with Reed's filters (job type, hours, remote/hybrid, salary range, date posted, posted by, 37 specialisms, graduate, Easy Apply, visa sponsorship, early bird, hide training courses, hide jobs without salary, distance); pasted search, recruiter and job URLs; recruiters by name, profile number or URL; whole-site export by splitting along Reed's own filters (10,000-result limit per search); salary exactly as Reed shows it plus numbers, yearly equivalent and notes; UK local times converted to UTC; job records with full description, region, country, postcode, specialism, skills, screening questions, cover-letter rule, advertiser reference and company page; direct connection with a capped UK residential rescue route; pay-per-result budget handled cleanly.

Support

Questions, a bug, or a field you need? Open an issue on the Issues tab — we reply within 24 hours. If a run did something unexpected, include the run link so we can look at its log and SUMMARY.