JobPosting schema is an important SEO check in the Job Boards category. If you list roles and you are not marking them up, you are leaving the single most valuable job-search surface Google offers on the table. This is worth fixing properly, not fixing fast.

What is This Check About?

This check verifies that each job listing on your site carries valid JobPosting structured data. JobPosting is a schema.org type that tells Google a page is a specific, single job opening — the title, who is hiring, where, and when it was posted. Get it right and your roles become eligible for Google’s dedicated job-search experience, the enriched result with the logo, location, and posting date that sits above the ordinary blue links. When this check fails, either the markup is missing or it is present but incomplete enough that Google will not trust it.

The distinction I want you to hold onto: this is not about “adding schema” as a checkbox. It is about making a machine-readable claim about a real job that Google can verify. Half-populated markup is often worse than none, because it invites the “expired” and “missing field” warnings that quietly suppress the whole listing.

Why Does This Matter for SEO?

Search engines like Google evaluate hundreds of factors when ranking websites. JobPosting schema is one of these important factors because:

  • It makes your roles eligible for Google’s job-search rich result, which occupies prime space above standard listings
  • It affects how search engines crawl and understand your content
  • It impacts user experience, which is a key ranking factor
  • It can influence your site’s visibility in search results
  • Ignoring it may cause your competitors to outrank you

The Properties Google Actually Requires

This is the part the generic advice skips, and it is the part that decides whether your listing shows or silently fails. For a JobPosting to be eligible, Google expects, at minimum:

  • title — the job title only (“Senior Warehouse Manager”), not the full posting headline with the location bolted on
  • description — the complete role description in HTML, matching what a human sees on the page
  • datePosted — the date the role went live, in ISO 8601 format
  • hiringOrganization — the employer, not the job board
  • jobLocation — the physical address, or jobLocationType set to TELECOMMUTE for fully remote roles

Then add validThrough. It is technically recommended rather than required, but I treat it as mandatory, because it is the single field that stops your posting from lingering as a stale result after the role closes. Recommended properties like baseSalary, employmentType, and identifier are worth the extra ten minutes — richer markup earns a richer display. One hard rule: the structured data must describe exactly one job, on a page dedicated to that job. A listing index page with ten roles should not carry one JobPosting block covering all of them.

How to Check This Issue

You can identify this issue by:

  1. Running an SEO audit using the SEO Roadmap tool
  2. Testing a live job URL in Google’s Rich Results Test to see exactly which fields are missing or invalid
  3. Using browser developer tools (F12) to confirm the JSON-LD is actually rendering in the page source
  4. Checking Google Search Console’s Job Postings report for warnings, especially “expired” and missing-field errors

How to Fix This in WordPress

Difficulty Level: MEDIUM – This fix requires some technical knowledge or familiarity with WordPress settings and plugins.

Estimated Time: 30 min

Follow these steps to fix this issue:

Step 1: Identify Affected Pages

First, run a complete SEO audit to identify every job URL affected. The SEO Roadmap tool will show you exactly which listings lack valid markup — and if your roles live in a custom post type or a job-board plugin, that is usually where the gaps cluster.

Step 2: Choose Where the Markup Comes From

Decide the source of truth before you touch anything. If you run a dedicated job-board plugin (WP Job Manager and the like), it likely emits JobPosting markup already — your task is to configure it, not duplicate it. If your roles are plain pages or posts, an SEO plugin or a small custom JSON-LD template is the cleaner route. The failure I see most often is two sources emitting conflicting schema on the same page. Pick one.

Step 3: Apply the Fix

Populate the required properties from real page data, not placeholders. If you’re using an SEO plugin like Yoast SEO or Rank Math, map your job fields to the schema fields through the plugin’s interface. Set datePosted and validThrough to genuine dates, and make sure description in the markup matches the visible role description — Google penalises mismatches between what it reads and what the user sees.

Step 4: Verify the Fix

After making changes:

  1. Clear your WordPress cache if you’re using a caching plugin
  2. Run the URL through the Rich Results Test and confirm zero errors, not just zero critical errors
  3. Re-run the SEO Roadmap audit to confirm the issue is resolved
  4. Check Google Search Console’s Job Postings report after a few days to ensure Google has recognized the fix

Recommended Tools & Plugins

These tools can help you fix and prevent this issue:

  • Yoast SEO – Comprehensive SEO plugin with built-in checks
  • Rank Math – Feature-rich SEO plugin with detailed analysis
  • Google Search Console – Free tool to monitor your site’s search presence
  • SEO Roadmap – Complete SEO audit and action plan tool

Common Mistakes to Avoid

  • Leaving validThrough empty, so closed roles linger as “expired” results
  • Naming the job board as hiringOrganization instead of the actual employer
  • Emitting one JobPosting block for a page that lists many roles
  • Making changes without testing in a staging environment first
  • Applying fixes to production without proper backup, or not verifying the fix afterward

Need More Help?

If you’re still having trouble fixing this issue, consider:

  • Consulting with a WordPress developer or SEO specialist
  • Checking the WordPress support forums for similar issues
  • Reviewing your theme and plugin documentation
  • Running a complete site audit with SEO Roadmap for a prioritized action plan

This guide is part of the SEO Roadmap knowledge base – your complete resource for WordPress SEO optimization.

Leave a Reply

Your email address will not be published. Required fields are marked *

Close Search Window