Skip to content

Guide · SEO for recruitment agencies

SEO for recruitment agencies: what still works, and what AI changed.

Job pages that reach Google for Jobs, sector pages that prove you know your market, and the JavaScript problem that hides most agency jobs from crawlers.

SEO for a recruitment agency is mostly about 2 things: job pages that search engines can read and rank, and a handful of pages that prove you know your sector. Get those right and you win candidates from Google for Jobs and clients from search. Get them wrong and no amount of blogging makes up for it.

This guide is for UK agencies in 2026, when search engines and AI assistants increasingly read the same signals. Most of the work below helps with both.

Job pages are your biggest SEO asset

An agency with 60 live roles has 60 pages that could each rank for a specific search: “care assistant jobs Norwich”, “HGV class 1 driver nights Felixstowe”. Most agencies waste them. The fixes, in order:

  1. JobPosting structured data on every job. This is what gets your roles into Google for Jobs, the panel above the ordinary results for most job searches. It needs the title, description, date posted, hiring organisation, location and, ideally, salary.
  2. A real, specific title. The title candidates search for, not an internal code. “Registered Nurse (Band 5), Nights” beats “RN-0423”.
  3. Salary and location stated. Candidates filter on both, and jobs without them are shown less.
  4. An expiry that works. Filled roles should come down or be marked closed. Stale jobs frustrate candidates and teach search engines to trust your pages less.
  5. One URL per job. Not the same role posted 4 times with slightly different titles.
Key JobPosting schema fields
JobPosting fieldRequired by GoogleWhy it matters
titleYesMatches what candidates search
descriptionYesThe full advert, in HTML
datePostedYesFreshness
hiringOrganizationYesWho the job is with (or your agency, for confidential roles)
jobLocationYes, unless fully remoteLocation search and filters
validThroughRequired if the role has a closing dateStops expired roles showing
baseSalaryRecommendedSalary filters and click-through
employmentTypeRecommendedFull-time, part-time, temporary

Summary of Google’s JobPosting guidance. Check the current documentation before building, as field requirements change.

The JavaScript jobs problem

Many agency websites load their jobs from a job board widget or an ATS plugin that builds the list in the visitor’s browser with JavaScript. To a person the page looks fine. To a crawler that doesn’t run the script, or runs it late, the page is empty. Search engines handle this inconsistently, and most AI crawlers don’t run JavaScript at all.

The test is simple: view the page source (not the inspector) and search for the text of one of your jobs. If it isn’t there, crawlers probably can’t see it either. This is one of the 6 failures in why your agency isn’t showing in ChatGPT.

If the jobs aren’t in the page source, as far as most crawlers are concerned your agency has no jobs.

ATS-hosted job boards and who owns the traffic

Some ATS and CRM platforms host your jobs on their own domain or a subdomain. That can be convenient, but the search value those pages build may sit with the platform rather than your site. Before you choose or renew a platform, ask 3 questions: are the jobs served on your domain, are they in the page source, and does each job carry JobPosting structured data?

Sector and location pages that aren’t thin

“Recruitment agency in [town]” pages written from a template, with the town name swapped, rarely rank and can drag the site down. A sector page earns its place when it says something a client couldn’t get elsewhere:

  • Real numbers from your desk: typical salaries, time to fill, how many candidates you can reach.
  • The roles you actually recruit, linking to live jobs.
  • A named consultant with their experience, so there is a person behind the page.
  • Questions clients ask, answered directly, which also makes the page easy for AI assistants to quote.

Links from other sites are still one of the strongest signals, and most agency blogs don’t earn any. What does: salary guides built from your own placement data, market reports with numbers, and genuinely useful tools. Ten generic “interview tips” posts earn less than one salary guide that the local press quotes.

Where SEO ends and GEO begins

Generative engine optimisation (GEO) is the work of being named in AI assistants’ answers rather than ranked in search results. The foundations overlap heavily: structured data, crawlable pages and specific content help both. The differences are in what earns the mention, and we cover them properly in SEO versus GEO and generative engine optimisation for recruitment.

A quick benchmark

In the September 2026 run of The SetpointHQ Index, 21% of 100 UK employer brands had no structured data an assistant could read at all, and schema was the second-weakest of 5 dimensions with a median of 35.0. If large employers get this wrong, most agency sites do too, which is exactly why fixing it is an advantage.

Want your own careers or jobs pages checked? The free Careers Site Check covers indexing, structured data, job-page quality and AI crawler access, by hand.

Common questions

What is SEO for recruitment agencies?

It is the work of making an agency’s website findable in search: job pages that appear in Google for Jobs, sector and location pages that rank for client searches, and content that earns links. The same foundations also help AI assistants find and name the agency.

How do I get my agency’s jobs into Google for Jobs?

Add JobPosting structured data to every job page, with the title, description, date posted, hiring organisation and location as a minimum. Make sure the jobs are in the page source rather than loaded by JavaScript, and remove or expire filled roles.

Do location pages work for recruitment agencies?

Only when they carry real, specific content: salaries, roles you actually recruit, a named consultant and answers to real client questions. Template pages with the town name swapped rarely rank.

Is SEO different from GEO?

They overlap. SEO is about ranking in search results; GEO is about being named in AI assistants’ answers. Structured data, crawlable pages and specific content help both.

Why can’t Google see our jobs?

The most common reason is that the jobs are loaded by a JavaScript widget or ATS plugin, so they aren’t in the page source. View the source and search for a job title to check.

Get your job pages checked, free.

The Careers Site Check reads your site by hand across 6 areas, including structured data, job-page quality and AI crawler access, and comes back inside 3 working days.

Request the checkThe full agency playbook

Keep reading

Written by Andy Pirie, recruitment marketer. Index figures: The SetpointHQ Index, 1 September 2026 run, 100 UK employer brands.