Onlinetoolix

Job Posting Schema Generator

Generate valid JobPosting schema markup (JSON-LD) for Google Jobs. Add role details, salary, location, and hiring organization to make your listing eligible for job search rich results.

HTML formatting allowed (e.g. <p>, <ul>, <li>). Google recommends detailed, complete descriptions.
Employment Type
Fields Used
0
Has Salary
No
Remote
No
Schema Size
0

Job Posting Schema Generator — Free JSON-LD Tool

Google Jobs shows only a handful of listings above the fold — and every one of them is pulled straight from structured data. If your job listing page doesn't carry valid JobPosting markup, it simply never enters that race. This free job posting schema generator converts your listing details into valid JobPosting JSON-LD in under a minute, no coding required.

It is one of the many free structured data and SEO tools available at onlinetoolix. Publishing articles alongside your careers page? Use our article schema generator to add rich result eligibility to that content too.

What Is a Job Posting Schema Generator?

A job posting schema generator is a browser-based tool that converts your job listing details — title, description, salary, location, and hiring organization — into valid JobPosting JSON-LD markup, the exact schema.org format Google requires for job listings to appear in Google Jobs search results. Instead of manually writing nested JSON, mapping each field to the correct schema.org property, and hoping you didn't miss a required attribute, this tool builds the complete script tag for you from a simple form.

Structured data is how search engines understand the meaning behind your content, not just the words on the page. For job listings specifically, Google uses the JobPosting schema type to power its dedicated Google Jobs experience — a rich, filterable job search interface that sits above regular organic results. Without this markup, even a perfectly written job description is invisible to that feature.

That's exactly the gap this job posting schema generator is built to close for recruiters, HR teams, staffing agencies, and job board owners who don't have a developer on standby every time a new role opens.

Employment Types Supported

Google's JobPosting schema recognises a fixed set of employment type values, and choosing the right one keeps your listing accurate in Google Jobs filters.

FULL FULL_TIME

The standard type for permanent, full-time roles. The most common employment type used across career pages and job boards.

PART PART_TIME

For roles with reduced weekly hours compared to a standard full-time position. Common for retail, hospitality, and support roles.

CONTRACT CONTRACTOR

For fixed-term or freelance engagements that are not permanent employment. Frequently used by agencies and project-based hiring.

TEMP TEMPORARY

For short-term roles covering seasonal demand, leave cover, or a defined project window with a clear end date.

INTERN INTERN

For internships and structured training placements, whether paid or unpaid, aimed at students or early-career candidates.

OTHER VOLUNTEER / PER_DIEM / OTHER

Covers volunteer roles, per-diem or as-needed work, and any arrangement that doesn't fit the standard categories above.

This job posting schema generator supports all employment type values with a simple dropdown selector, and also lets you correctly flag a role as remote instead of forcing you to fake a physical address.

Why Use This Job Posting Schema Generator

Structured JobPosting data is one of the highest-leverage technical SEO changes available to any site that hires. Here is why it delivers real value.

Zero Coding Required

Fill in a form and the generator handles the JSON-LD syntax, nesting, and formatting automatically — no JavaScript or schema.org familiarity needed.

Google Jobs Eligibility

Covers every field Google's documentation lists as required or recommended for JobPosting rich results, so your listing has the best chance of qualifying.

Built-In Validation

The tool flags missing required fields and warns you about recommended ones like validThrough and salary before you publish.

Remote Job Support

One checkbox correctly sets jobLocationType: TELECOMMUTE instead of forcing you to fake a physical address for fully remote roles.

Instant Export

Copy the script tag directly or download it as a .json file for your CMS or ATS integration — ready to paste with no manual cleanup.

AI Search Visibility

Structured JobPosting data is increasingly how AI-powered search and answer engines identify and summarize open roles for queries like "remote frontend jobs" — clean JSON-LD is exactly the kind of source large language models prefer to cite.

Job Posting Schema Required Fields — Google's Guidelines

Google's structured data documentation defines specific requirements for JobPosting eligibility. Understanding what is required versus recommended helps you prioritise your schema fields.

FIELD REQUIREMENTS BY PRIORITY

REQUIRED

title & description — The exact job title and a full description of the role, responsibilities, and requirements. Must match what's visible on the page.

REQUIRED

datePosted — Must be in YYYY-MM-DD ISO 8601 format and reflect the actual date the role was first published.

REQUIRED

hiringOrganization — The employer's name and, ideally, a link to their website and logo, so Google can attribute the listing correctly.

REQUIRED

jobLocation or jobLocationType — A valid physical address for on-site roles, or TELECOMMUTE for fully remote roles.

RECOMMENDED

validThrough — The expiry date after which the listing should stop appearing. Helps Google automatically remove outdated postings.

RECOMMENDED

baseSalary — Currency, min/max value, and pay period. Listings with salary data generally perform better in Google Jobs.

How to Use the Job Posting Schema Generator

Creating job posting structured data with this tool takes under a minute.

01
Enter your job details

Add the job title, full description, date posted, and employment type into the form.

02
Add hiring organization and location

Fill in your company name, website, and logo, then either mark the role as remote or enter the physical job address.

03
Add salary (optional but recommended)

Enter currency, min/max value, and pay period so the generator builds a complete baseSalary object.

04
Generate and validate

Click Generate, then review the validation checklist to confirm every required field is present and correctly formatted.

05
Copy and implement

Copy the JSON-LD script tag and paste it into the <head> section of your job listing page.

06
Test on Google

Verify eligibility using Google's Rich Results Test before publishing the page live.

Where to Add Job Posting Schema

Paste the JobPosting script tag inside the <head> section of the specific job listing page it describes. One rule applies across every platform: the schema must accurately match the visible content on the page, or Google may revoke rich result eligibility.

WordPress Careers Page

SEO plugins like Rank Math and Yoast can output basic schema, but JobPosting-specific fields like salary and employment type usually need a custom JSON-LD snippet added with WP Code or a similar plugin.

Job Boards & ATS Platforms

Most applicant tracking systems support custom head-tag injection per listing. Generate the schema once per role and map it into your ATS template for consistent output across hundreds of postings.

Staffing Agency Sites

Agencies publishing on behalf of multiple clients should set hiringOrganization to the actual employer, not the agency, to keep listings accurate for Google Jobs.

Custom HTML / CMS

Paste the script tag inside the <head> of the page template. Developers can implement the JSON-LD programmatically so every new listing gets valid schema automatically.

Job Posting Schema Best Practices

Following these best practices keeps your listings eligible for Google Jobs and avoids the most common causes of rejection.

Set a validThrough date and remove expired listings

Google recommends removing or updating JobPosting markup once a role is filled. A validThrough date helps Google automatically stop showing an outdated listing.

Use TELECOMMUTE correctly for remote roles

Never enter a fake office address for a fully remote position — use jobLocationType: TELECOMMUTE instead, exactly as Google's guidelines specify.

Include salary whenever possible

Salary is optional but Google recommends it, and listings with a baseSalary field generally perform better in Google Jobs results.

Match schema content to the visible page exactly

Every value in the schema — title, location, salary — must match what a candidate actually sees on the page. Discrepancies are a common cause of rich result removal.

One JobPosting per unique role

Don't reuse the same schema block across multiple different openings — each listing page needs its own accurate JobPosting markup.

Test every implementation with Google's Rich Results Test

After publishing, verify the schema is valid and the page is eligible for Google Jobs. The tool highlights any missing fields or formatting errors.

Who Should Use This Job Posting Schema Generator

In-house recruiters and HR teams publishing openings on a careers page without dev support.

Job boards and staffing agencies that need consistent schema across hundreds of listings.

Startups and small businesses hiring directly through their own website.

SEO agencies and freelancers implementing structured data for client career pages.

Developers who want a quick, error-free JobPosting JSON-LD template to drop into a CMS.

Frequently Asked Questions

Is the Job Posting Schema Generator free to use?
Yes. The tool is completely free, works directly in your browser, and does not require an account or signup.
What fields are required for Google Jobs eligibility?
Google requires title, description, datePosted, hiringOrganization, and a valid jobLocation or jobLocationType: TELECOMMUTE for remote roles. The generator flags any of these that are missing before you publish.
Can I use this for remote jobs?
Yes. Checking the remote option automatically sets jobLocationType to TELECOMMUTE, which is the correct schema.org property for fully remote roles instead of listing a fake office address.
Do I need to add a salary to the schema?
Salary is optional in JobPosting schema, but Google recommends including it, and listings with a baseSalary field generally perform better in Google Jobs. The generator builds this object automatically from currency, min/max value, and pay period.
Where do I paste the generated JSON-LD code?
Paste the script tag into the head section of the specific job listing page it describes, then verify it using Google's Rich Results Test.
What happens if I don't update the schema after the job is filled?
Google recommends removing or updating the JobPosting markup once a role is filled or expired. Setting a validThrough date helps Google automatically stop showing an outdated listing.
Scroll to Top