Technical SEO Utilities

JSON-LD Job Posting Schema Generator

Build compliant JobPosting structured data configurations. Create custom salary, location, and metadata fields visually.

Recruiting managers, HR professionals, and technical SEO agencies need to publish structured job descriptions to acquire free listings on Google Job Search. This visual form generator builds valid JobPosting schemas without code-level syntax faults. When to use it: When posting career openings on corporate sites, launching niche job boards, or audit current page markups. What it solves: Prevents missing hiringOrganization schemas, incorrect date formats, and broken telecommuting declarations. Why it matters: Google requires active, error-free schema tags to index job listings in aggregate search results widgets.

Job Details

Location Settings

Salary & Dates Settings

Google Jobs Card Preview

AC

Senior Frontend Developer

Acme Corporation San Francisco, CA (On-Site)
Full-time $120,000 - $150,000 / year Posted today

Generated JSON-LD

 

How JobPosting Schema Processing Works

This builder generates compliant JSON-LD matching the Schema.org JobPosting definitions. The script dynamically binds your inputs to key-value elements in the schema graph.

For physical locations, it populates a nested PostalAddress object containing street, city, region, postal code, and country variables. If work-from-home policy is enabled, it flags jobLocationType as TELECOMMUTE and generates `applicantLocationRequirements` variables, telling Googlebot the listing represents a remote vacancy. Salary limits are formatted under MonetaryAmount arrays with standard ISO 4217 currencies and time unit variables.

Before & After Implementation Examples

❌ Before (Standard page text only)

Hiring pages without schema data are ignored by Google Job Search crawls, missing organic traffic views.

<div class="job-posting">
  <h1>Sales Manager</h1>
  <p>Location: Boston, MA. Salary: $80,000.</p>
  <p>Contact: [email protected]</p>
</div>

✅ After (Valid JobPosting schema metadata)

Publishing JSON-LD tags allows Googlebot to index the role details directly into job widgets.

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "JobPosting",
  "title": "Sales Manager",
  "hiringOrganization": {
    "@type": "Organization",
    "name": "My Company"
  },
  "jobLocation": {
    "@type": "Place",
    "address": {
      "@type": "PostalAddress",
      "addressLocality": "Boston",
      "addressRegion": "MA"
    }
  }
}
</script>

Industry Use Cases

Developer Workflows SEO Strategies Operations & Teams
Generate structured career schema blocks dynamically from recruitment databases. Qualify job listings for search results widgets, acquiring free organic applicants. Standardize HR openings output specifications across corporate sites.
Publish real-time vacancy updates directly using Google\'s Indexing API. Audit expired vacancies to strip schema metadata tags automatically. Deliver structured job metadata configurations to syndication partners.

Common JobPosting Schema Mistakes

Improper Remote Work Configuration

Declaring a job as remote without using the TELECOMMUTE location type parameter makes Google ignore the remote work status. Always map the remote flag to the correct schema parameter.

Publishing Expired Job Listings

Keeping active schema tags on roles that are already filled will cause Google Search Console manual action penalties for spam structured data. Implement correct validThrough expiration timestamps.

Recruitment Schema Best Practices

  • Provide Base Salary: Always include salary ranges (min, max, currency, time unit) to qualify for Google Job listings prioritization filters.
  • Include Detailed Descriptions: Paste complete job descriptions with full formatting tags rather than brief summaries.
  • Set Valid Expirations: Always declare the validThrough tag to let bots know when to retire the listing.
  • Enforce HTTPS Logos: Link only SSL-secure company logos to ensure they display correctly inside search widgets.

Frequently Asked Questions

What is a JobPosting schema and how does it help recruitment?

A JobPosting schema is a structured data markup format that describes an open employment position. Publishing this markup on your site qualifies your job listings for Google Job Search, a dedicated job aggregator interface within search results. This visibility puts your listings directly in front of thousands of active job seekers, reducing reliance on third-party recruitment boards.

How do I specify a remote or work-from-home position in the schema?

To mark a job as fully remote, set the jobLocationType property to "TELECOMMUTE". In addition, you must declare an applicantLocationRequirements property containing a Country type (e.g. United States) to define where the remote worker must reside. For hybrid positions, configure the physical office address in the jobLocation property and explain the details inside the description.

Is base salary a mandatory property for Google Job Search?

While base salary (baseSalary) is not technically marked as a critical error if omitted, Google strongly encourages declaring it. Listings without valid salary data receive warnings in Google Search Console and are often deprioritized in search results. Declaring accurate pay ranges directly improves listing click-through rates.

What format should I use for posting and expiry dates?

Dates must be declared in ISO 8601 formatting (e.g. YYYY-MM-DD or YYYY-MM-DDThh:mm:ssZ). The datePublished property is required to declare when the job was posted, while validThrough defines the job expiration date. Google recommends setting an expiration date to prevent stale job listings from cluttering search results.

Can the hiringOrganization logo be hosted anywhere?

Google requires the organization logo URL (hiringOrganization.logo) to be an absolute path that is indexable and crawlable. The image should be in a standard file format (PNG, JPG, or WebP), ideally square, and hosted on an SSL-secured endpoint (https://) to ensure the logo renders correctly inside search cards.

What is the minimum character length for job descriptions?

The description field must contain complete, readable details about the role, responsibilities, and qualifications. Declaring very short descriptions or generic lists will cause Google validation warnings. It is a best practice to copy-paste the full text formatting from your official job descriptions into the schema.

How long does it take for Google to index a newly published job schema?

Once you publish the page containing the JSON-LD schema, indexation depends on Googlebot crawl schedules. For high-frequency job boards, it is recommended to implement Google's Indexing API. The Indexing API notifies Googlebot of updates in real-time, allowing new jobs to appear in search results within minutes.