Posting age is the number that runs through everything we publish. It deserves an exact definition, because the loose version of it would let us claim something we cannot support.
The definition
Age is the number of days between the date the employer published the listing and today. Nothing else.
What it does not mean
- It does not mean we have watched the listing continuously since that date.
- It does not mean the role is still open. It means the listing was still visible when we last checked.
- It does not mean nobody is reading applications. Intent is not observable from outside.
Where the date comes from
- A structured publication date from the source, where one exists. This is the best case and the most common.
- A date parsed from the listing text where the source states one plainly.
- Where a source gives only a coarse indication such as "30+ days ago", we mark the field approximate rather than inventing a day.
Where none of these is available, the field is absent. It is not estimated, and it is not filled with the date we first saw the listing dressed up as a publication date.
Why sixty days
The site marks listings older than sixty days. The threshold is a convention, not a discovery. It sits above the typical time-to-fill for most roles and below the point where a listing is obviously abandoned. Your market may differ; the raw number is always shown next to the marker so you can apply your own line.
The known biases
- Republishing. An employer who deletes and re-posts resets the age. Their listings look fresher than they are, and we cannot always tell.
- Source mix. Applicant tracking systems remove closed roles promptly; some boards do not. Age distributions differ by source, not only by market.
- Missing dates. Cohorts where many postings lack a date have age computed from the subset that has one, which may not be representative.
What we would need to say more
To claim a listing has been continuously open, we would need a complete observation history for every source, with gaps accounted for. We publish what we can measure and name the gap rather than closing it with an assumption.