Technical case · All work

Programmatic SEO for a niche job platform

Vacancies expire, but the demand for a role does not. How I built an evergreen architecture on WordPress where durable role pages hold the rankings and current vacancies rotate inside them.

Period
2024 to 2025
Environment
Dutch niche job platform
Platform
WordPress, JetEngine, Elementor, n8n
Disciplines
Programmatic SEO, technical SEO, automation
In short

Rank for the demand, not for the vacancy.

Job boards that rely on individual vacancies lose every ranking they build the day a job closes. Separating the durable search intent (the role, later the role in a location) from the temporary content (the vacancy) is the whole trick.

The problem

Search demand for a role is stable all year. The platform’s SEO, however, was tied to vacancy pages that appeared and disappeared within weeks. Every ranking was temporary, internal links pointed at pages that no longer existed, and no page could own a role query for the long term.

The architecture

  • A custom post type for vacancies with structured fields for region, description, display order and multiple locations, plus salary and contract details.
  • Evergreen role pages under one parent URL, with a URL pattern designed to extend to role plus location.
  • Elementor templates and shortcodes that pull current salary and vacancy data into each page, so a page stays fresh without being rewritten.
  • A small REST plugin that exposes the custom fields, and an n8n workflow that fetches the template, creates the page and fills in the metadata.
  • AI-assisted vacancy descriptions with a fixed structure and a human check before publication.

Where it stands

Twelve evergreen role pages are live and indexable, each with a self-referencing canonical and listed in the XML sitemap. The location layer is the next step: the data model already stores region and multiple locations per vacancy, so role-plus-location pages reuse the same templates and workflow instead of a new build.

Before and after

Before
Rankings lived and died with individual vacancies. No page could own a role query for the long term.
After
Evergreen role pages hold the rankings while current vacancies rotate inside them. A new role is a record and a workflow run, not a hand-built page.

What this means for you

Programmatic SEO works when the data is structured and the intent is real. Marketplaces, directories, comparison sites and job boards all fit the pattern. It is also easy to get wrong: thin, duplicated pages at scale get ignored, so the data layer and the content rules matter more than the template. That is also why I roll it out in layers instead of generating every combination at once.

Have a database that should be ranking?

If your platform has structured data behind it, there is probably a programmatic SEO play. I map the intents, design the URL structure and build the templates with your developers.

Start a conversation
One consultant, start to finish.
Developer-ready deliverables.
NL, BE, DE and UK markets.
Scroll to Top