datePosted
datePosted · Required
Appears in
What is it?
The original publication date of a job listing. This tells search engines and AI assistants when the position was first posted, not when it was last updated or refreshed. Google uses this date to rank freshness in job search results.
Why this matters for AEO
When someone asks "What new marketing jobs were posted this week?" an AI engine filters results by datePosted to surface only recent listings. Stale dates push listings down or out of results entirely. An accurate datePosted value is the difference between appearing in time sensitive job queries and being buried under fresher postings.
What the specs say
Schema.org:Date or DateTime. Publication date of an online listing. schema.org/datePosted
Google: Required. "The original date that employer posted the job in ISO 8601 format. For example, '2017-01-24' or '2017-01-24T19:33:17+00:00'." Google Search Central
How to find your value
- ATS / Recruiting platform — The "Published" or "Go Live" date in your applicant tracking system
- CMS publish date — The Webflow CMS item publish date
- Job board syndication — The date the listing first appeared on any channel
- Manual tracking — The date HR approved the posting for publication
Use the true first publication date. Republishing a listing with today's date to game freshness violates Google's guidelines and can trigger removal from job search results.
Format and code
Type: Date or DateTime (ISO 8601)
Date only:
{
"@type": "JobPosting",
"datePosted": "2024-01-18"
}
Date with time and timezone:
{
"@type": "JobPosting",
"datePosted": "2024-01-18T19:33:17+00:00"
}
Both formats are valid. Date only (YYYY-MM-DD) is simpler and sufficient for most implementations. Include time and timezone offset only when the exact posting time matters for compliance or multi timezone operations.
Invalid formats:
"datePosted": "January 18, 2024"
"datePosted": "01/18/2024"
"datePosted": "18-01-2024"
Google enforces ISO 8601 strictly. Non standard date formats will fail validation.
Webflow implementation
Static pages
Add the date directly in your JSON-LD script in Page Settings > Custom Code:
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "JobPosting",
"datePosted": "2024-06-15"
}
</script>
CMS template pages
Webflow CMS date fields output in ISO format when accessed through dynamic embeds:
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "JobPosting",
"datePosted": "{{wf {"path":"date-posted","type":"PlainText"} }}"
}
</script>
Use a dedicated Date field in your CMS collection. Webflow date fields output ISO 8601 format by default when rendered as plain text, which matches Google's requirement.
In Schema HQ
The datePosted field reads from CMS publish date or a custom date field and formats it as ISO 8601 automatically. No manual date formatting required. When a listing gets republished, Schema HQ preserves the original datePosted value to maintain accuracy.
Real examples
Google documentation (Google Search Central):
{
"@type": "JobPosting",
"title": "Software Engineer",
"datePosted": "2024-01-18",
"validThrough": "2024-03-18T00:00",
"hiringOrganization": {
"@type": "Organization",
"name": "Google",
"sameAs": "https://www.google.com"
}
}
Job Boardly guide (jobboardly.com):
{
"@type": "JobPosting",
"title": "Software Engineer",
"datePosted": "2025-05-13",
"validThrough": "2025-06-13T00:00",
"employmentType": "FULL_TIME",
"jobLocation": {
"@type": "Place",
"address": {
"@type": "PostalAddress",
"addressLocality": "New York",
"addressRegion": "NY",
"postalCode": "10001",
"addressCountry": "US"
}
}
}
Web Data Commons analysis shows datePosted appears in 99% of JSON-LD JobPostings, making it the most consistently implemented date field in job schema.
Related fields
- validThrough: when the listing expires
- title: the job title this date applies to
- hiringOrganization: the company that posted on this date
- employmentType: the type of position posted
- leaseLength — minimum or typical lease duration for a rental
FAQ
Should datePosted update when a job listing is refreshed?
No. datePosted should reflect the original publication date. Artificially updating the date to appear fresh violates Google's job posting guidelines. If a position genuinely closes and reopens, use a new datePosted value for the new listing.
Does datePosted need a time component?
No. The date only format ("2024-01-18") is valid and preferred for simplicity. Add the time component only when exact posting time is meaningful, such as for compliance with labor regulations that require precise timestamps.
What happens if datePosted is in the future?
Google will not display the job posting until the date arrives. A future datePosted effectively schedules the listing's appearance in Google job search. However, if the page is already live, AI engines may still index the content regardless of the date value.