Schema Markup Generator
Generate valid JSON-LD or Microdata structured data for 16 schema types. Select a schema type, fill in the fields, and copy the markup to your site. Not sure where the code goes once you have it? Read how to add schema markup to your website for the exact steps on WordPress, Shopify, Wix, and custom sites.
JobPosting Fields
Structured Data Output
Missing required fields:
- - Job title is required
- - Description is required
- - Date posted is required
- - Hiring organisation name is required
- - City is required for an on-site job
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "JobPosting",
"title": "",
"description": "",
"employmentType": "FULL_TIME",
"hiringOrganization": {
"@type": "Organization",
"name": ""
},
"jobLocation": {
"@type": "Place",
"address": {
"@type": "PostalAddress",
"streetAddress": "",
"addressLocality": "",
"addressRegion": "",
"postalCode": "",
"addressCountry": "GB"
}
}
}
</script>What is JobPosting schema?
JobPosting schema marks up a vacancy with a title, full description, the date it was posted, the hiring organisation, and where the role is based. Google for Jobs reads this structured data to surface a listing in its dedicated job search experience, which sits above regular results for many job-related queries and lets jobseekers filter by salary, location, and employment type.
The required fields are title, description, datePosted, hiringOrganization, and jobLocation, or an applicant location requirement if the role is remote. Salary is optional but strengthens the listing when you are able to share it, since jobseekers can filter search results by pay. Fill in the fields below, choose on-site or remote, and generate either JSON-LD or Microdata output for your careers page or job board listing.
Frequently asked questions
What properties does Google require for JobPosting?
Title, description, datePosted, hiringOrganization, and jobLocation are the core required properties. For a remote role, jobLocationType and an applicant location requirement replace the physical jobLocation.
Should I include salary information?
It is optional but recommended where you are able to share it, since salary detail is one of the more useful fields to jobseekers using Google for Jobs' filters.
What happens after the role is filled?
Remove the listing or update validThrough so Google stops treating it as an open vacancy. Leaving expired listings live can hurt trust in your other job postings.
Does this work for remote roles?
Yes, select Remote as the location type and the generator switches to the TELECOMMUTE jobLocationType with an applicant location requirement instead of a physical address.
Want structured data implemented, validated, and monitored for you? The technical SEO audit includes a full schema markup review. Not sure where to paste the code above? Read how to add schema markup to your website.
Other schema types
Get Started
Want Your Schema Implemented and Validated for You?
Tell me your site and CMS. I will review your existing structured data, implement what is missing, and validate everything in Google's Rich Results Test as part of the fixed-fee audit.
- Focus on your biggest search problem
- Review the evidence you already have
- Identify the most useful next step
- Answer your priority SEO question
Usually responds within a few hours
Currently accepting new clients
More free SEO tools
Robots.txt Generator
Build a valid robots.txt with a visual editor. Includes AI crawler blocking presets.
Hreflang Tag Generator
Generate correct hreflang tags for multilingual sites in HTML or XML sitemap format.
Redirect Chain Checker
Follow and visualise the full redirect chain for any URL. Detect loops and 302s.