100% Remote Work Job Posting Schema Markup (JSON-LD)
Specialized JobPosting structured data for 100% remote telecommute roles, applicant location restrictions (e.g. Country restrictions), and distributed team hiring on Google for Jobs.
Displayed below main page header or above the tool container. • Zero CLS Container
Production JSON-LD Code Block
Embed this structured data block directly into your HTML <head> or framework layout template.
{
"@context": "https://schema.org",
"@type": "JobPosting",
"title": "Senior React & Next.js Core Engineer (100% Remote)",
"description": "<p>Join our fully distributed team building real-time developer tools. Work from anywhere within North America or European timezones.</p>",
"datePosted": "2026-10-02T10:00:00Z",
"validThrough": "2026-12-31T23:59:59Z",
"employmentType": "FULL_TIME",
"jobLocationType": "TELECOMMUTE",
"applicantLocationRequirements": [
{
"@type": "Country",
"name": "United States"
},
{
"@type": "Country",
"name": "United Kingdom"
},
{
"@type": "Country",
"name": "United Arab Emirates"
}
],
"hiringOrganization": {
"@type": "Organization",
"name": "OmniSEOTools",
"sameAs": "https://omniseotools.com",
"logo": "https://omniseotools.com/images/brand-logo.png"
},
"baseSalary": {
"@type": "MonetaryAmount",
"currency": "USD",
"value": {
"@type": "QuantitativeValue",
"minValue": 160000,
"maxValue": 210000,
"unitText": "YEAR"
}
}
}Typed Properties Specification (9 Fields)
Key Schema.org properties and sub-objects required to qualify for rich snippet treatment in Google Search.
| Property | Expected Type | Status | Description & Example |
|---|---|---|---|
| title | string | Required | Job title highlighting remote flexibility. e.g. Senior React & Next.js Core Engineer (100% Remote) |
| jobLocationType | string | Required | Must be set to 'TELECOMMUTE' for 100% remote / work-from-home positions. e.g. TELECOMMUTE |
| applicantLocationRequirements | Country[] | AdministrativeArea[] | Required | Geographic regions from which applicants are legally eligible to work remotely. e.g. [ { '@type': 'Country', 'name': 'United States' } ] |
| datePosted | string (ISO 8601) | Required | Date the remote opening was published. e.g. 2026-10-02T10:00:00Z |
| validThrough | string (ISO 8601) | Required | Application closing deadline. e.g. 2026-12-31T23:59:59Z |
| employmentType | string | Required | FULL_TIME, CONTRACTOR, or PART_TIME. e.g. FULL_TIME |
| hiringOrganization | Organization | Required | Employer company details. e.g. { '@type': 'Organization', 'name': 'OmniSEOTools' } |
| baseSalary | MonetaryAmount | Recommended | Annual or hourly pay scale. e.g. { '@type': 'MonetaryAmount', 'currency': 'USD', 'value': { 'minValue': 160000, 'maxValue': 210000, 'unitText': 'YEAR' } } |
| description | string (HTML) | Required | Comprehensive remote role duties, timezone expectations, and benefits. e.g. <p>Join our fully distributed team building developer tools.</p> |
Google Search Console Pitfalls & Critical Warnings
Avoid these 3 common validation traps, parser errors, and algorithmic policy penalties when deploying JobPosting schema.
Omitting applicantLocationRequirements on Telecommute Roles
Setting jobLocationType: TELECOMMUTE without specifying eligible countries or states.
Provide Country or State nodes inside applicantLocationRequirements.
Including Physical jobLocation with TELECOMMUTE
Specifying a single physical street address inside jobLocation for a 100% remote job.
Omit physical jobLocation or use jobLocationType: TELECOMMUTE with applicantLocationRequirements.
Invalid UnitText in baseSalary
Using non-standard units (e.g., 'annually' or 'per year') instead of standard 'YEAR' or 'HOUR'.
Use official Schema.org unitText values: 'HOUR', 'DAY', 'WEEK', 'MONTH', or 'YEAR'.
Recommended Implementation Scenarios
Related Schema Blueprints
Explore complementary structured data blueprints across the Events & Education cluster.
Full-Time Job Posting & Career Schema Markup (JSON-LD Blueprint)
Internship & Contract Role Job Posting Schema Markup (JSON-LD)
Job Posting with Experience & Education Requirements (JSON-LD)
Salary Range & Compensation Distribution Schema (JSON-LD)
Displayed below main page header or above the tool container. • Zero CLS Container