JobPosting schema — what it does & how to ship it
JobPosting marks up an open role with title, description, hiringOrganization, jobLocation and salary — the required schema to appear in Google for Jobs.
What it does
JobPosting requires title, description, datePosted, validThrough, hiringOrganization and jobLocation. Add baseSalary and employmentType for full eligibility.
SERP / AI benefit
Inclusion in Google for Jobs — a huge dedicated surface that bypasses classic SERP competition entirely.
Where to use it
Careers pages, individual role landing pages.
JSON-LD example
{
"@context": "https://schema.org",
"@type": "JobPosting",
"title": "Senior SEO Engineer",
"description": "Own the GEO/AEO/AIO stack.",
"datePosted": "2026-07-20",
"validThrough": "2026-08-20",
"employmentType": "FULL_TIME",
"hiringOrganization": { "@type": "Organization", "name": "WBP Omni SEO Pro" },
"jobLocation": { "@type": "Place", "address": { "@type": "PostalAddress", "addressCountry": "Remote" } }
}Copy, edit for your site, and drop into your page head inside a<script type="application/ld+json">block. Validate with Google's Rich Results Test.
Frequently asked
Do I need validThrough?›
Yes — Google requires it and drops the listing from Google for Jobs after that date.
Can jobLocation be Remote?›
Yes — set jobLocationType to TELECOMMUTE and addressCountry to the country.
