Free Job Posting Schema Generator
Generate Google-compliant JobPosting JSON-LD schema in seconds. All required fields. Free, no signup, validated.
What this tool does
JobPosting schema is the entry ticket to Google for Jobs — a free recruitment channel that surfaces your roles in a dedicated job search interface. Schema is required; without it, your roles do not appear.
This tool generates the JSON-LD with all required fields validated. Fill in details, copy output, paste into your career page head.
How to generate JobPosting schema
Five steps from form to deployed schema.
Fill in job details
Title, description, employment type, dates.
Add hiring organization
Company name, website, logo.
Set location
Physical address or TELECOMMUTE for remote.
Add salary (optional but recommended)
Currency, range, unit (hour/month/year).
Copy and deploy
Paste the JSON-LD into your page head, validate with Google.
When recruiters and developers use it
Six common workflows.
In-house career page
Add JSON-LD to each open role page. Get listed in Google for Jobs.
Recruitment agency listings
Generate schema per posting; agencies often have hundreds of active listings.
Startup hiring
For early-stage startups, Google for Jobs is a free recruitment channel. Schema is the entry ticket.
Freelance / contract listings
Use employmentType: CONTRACTOR or PART_TIME for non-traditional roles.
Remote-first companies
Configure remote jobs correctly to appear in remote-only searches.
University job boards
Higher-ed career pages benefit from Google indexing for student-facing roles.
Platform-specific setup guides
How to deploy schema on the platforms most teams use.
WordPress
- Generate the schema, copy the JSON-LD output.
- Add via Yoast Local SEO, Schema Pro, or a custom code block.
- Verify with Google Rich Results Test.
Webflow
- In page settings, paste the JSON-LD into custom code > head.
- For CMS-driven jobs, bind dynamic fields and inject via custom code embed.
- Publish and verify.
Greenhouse / Lever / Workable
- These ATS platforms add their own schema; skip this tool.
- Verify they include all required fields.
- For roles hosted on your own site, use this tool.
Custom Next.js
- Use next/head with <script type="application/ld+json" dangerouslySetInnerHTML> pattern.
- Make schema dynamic from your CMS.
- Validate at build time.
Job board aggregators
- Indeed, LinkedIn, Glassdoor have their own data formats.
- For roles aggregated to those platforms, follow their specific format.
- JobPosting schema is for your own site's pages.
Grigora vs. other JobPosting generators
Side-by-side comparison.
| Capability | Grigora | Schema.org tool | Yoast Local SEO | Free generators | Manual |
|---|---|---|---|---|---|
| Free + unlimited | Yes | Yes | Limited | Yes | Manual |
| All required fields | Yes | Yes | Yes | Partial | Manual |
| Salary support | Yes | Yes | Yes | No | Manual |
| Remote/TELECOMMUTE support | Yes | Yes | Yes | No | Manual |
| JSON-LD output | Yes | Yes | Yes | Yes | Manual |
| No signup | Yes | Account required | Account required | Yes | Yes |
| Live preview | Yes | No | Yes | No | No |
| Result speed | Instant | <3 sec | Instant | Instant | Manual |
Common errors and how to fix them
Eight issues teams hit when generating JobPosting schema.
Schema rejected by Google validator
Cause: Missing required field.
Fix: Run output through Google Rich Results Test; fix the specific field flagged.
Currency code wrong
Cause: Used symbol ($) instead of ISO code (USD).
Fix: Use 3-letter ISO 4217 codes: USD, EUR, GBP, INR, etc.
Salary range causes errors
Cause: Used minValue and maxValue without proper structure.
Fix: Use QuantitativeValue with minValue, maxValue, and unitText (HOUR, MONTH, YEAR).
Remote job not appearing in remote searches
Cause: jobLocationType missing or wrong value.
Fix: Set jobLocationType: "TELECOMMUTE" and applicantLocationRequirements.
Schema works but no rich result appears
Cause: Page is not indexed yet, or content quality is low.
Fix: Submit to Search Console; improve job description quality.
Multiple jobs on one page break schema
Cause: Tried to put multiple JobPosting in one script tag.
Fix: One job per page. Or use ItemList for job listings hub pages.
Date format wrong
Cause: Used local date format.
Fix: Use ISO 8601: YYYY-MM-DD or full datetime.
Tool output has typos
Cause: You typed them in.
Fix: Proofread before pasting into your CMS. Garbage in, garbage out.
Original data from our 2026 JobPosting audit
Across 1,000 random career pages.
Frequently asked questions
Twelve answers about JobPosting schema.
Related free tools
Other utilities that pair with JobPosting Schema Generator.
FAQ Schema Generator
Generate FAQPage JSON-LD for Google rich results.
Try itLocal Business Schema Generator
JSON-LD for local SEO.
Try itProduct Schema Generator
Schema for ecommerce product pages.
Try itReview Schema Generator
Add Review/Rating schema for stars in SERP.
Try itOrganization Schema Generator
Identify your company to Google.
Try itBreadcrumb Schema Generator
Add breadcrumbs schema for SERP display.
Try itGenerate schema right now
Get on Google for Jobs in 5 minutes. Free, unlimited.
Try the Schema Generator