Free Job Posting Schema Generator

Generate Google-compliant JobPosting JSON-LD schema in seconds. All required fields. Free, no signup, validated.

4.6on G2
4.8on Trustpilot
Used by 25,000+ recruiters and devs

Job Details

Hiring Organization

Job Location Details

Complete address information for better search visibility

Salary Details

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.

1

Fill in job details

Title, description, employment type, dates.

2

Add hiring organization

Company name, website, logo.

3

Set location

Physical address or TELECOMMUTE for remote.

4

Add salary (optional but recommended)

Currency, range, unit (hour/month/year).

5

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

  1. Generate the schema, copy the JSON-LD output.
  2. Add via Yoast Local SEO, Schema Pro, or a custom code block.
  3. Verify with Google Rich Results Test.

Webflow

  1. In page settings, paste the JSON-LD into custom code > head.
  2. For CMS-driven jobs, bind dynamic fields and inject via custom code embed.
  3. Publish and verify.

Greenhouse / Lever / Workable

  1. These ATS platforms add their own schema; skip this tool.
  2. Verify they include all required fields.
  3. For roles hosted on your own site, use this tool.

Custom Next.js

  1. Use next/head with <script type="application/ld+json" dangerouslySetInnerHTML> pattern.
  2. Make schema dynamic from your CMS.
  3. Validate at build time.

Job board aggregators

  1. Indeed, LinkedIn, Glassdoor have their own data formats.
  2. For roles aggregated to those platforms, follow their specific format.
  3. JobPosting schema is for your own site's pages.

Grigora vs. other JobPosting generators

Side-by-side comparison.

CapabilityGrigoraSchema.org toolYoast Local SEOFree generatorsManual
Free + unlimitedYesYesLimitedYesManual
All required fieldsYesYesYesPartialManual
Salary supportYesYesYesNoManual
Remote/TELECOMMUTE supportYesYesYesNoManual
JSON-LD outputYesYesYesYesManual
No signupYesAccount requiredAccount requiredYesYes
Live previewYesNoYesNoNo
Result speedInstant<3 secInstantInstantManual

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.

38%
% of job pages we audited that have valid JobPosting schema
validThrough (24%)
Most common required field missing
+27%
Lift in click-through when salary is included
18 hours
Average time to index after submission

Frequently asked questions

Twelve answers about JobPosting schema.

Related free tools

Other utilities that pair with JobPosting Schema Generator.

Generate schema right now

Get on Google for Jobs in 5 minutes. Free, unlimited.

Try the Schema Generator