FIELD NOTES · WEBSITE HANDOVER

Recruitment pages: verify expiry beyond the button

Synthetic teaching example for a website delivery brief. Not a client result, live account test or certification.

A closed application form can leave an open search promise

A recruiter’s website may correctly stop applications while its supplied job markup still describes an available opportunity. The acceptance question is not whether the page looks tidy. It is whether the advert’s visible state, application path and structured information describe the same lifecycle.

CheckpointFictional advert DEMO-JOB-17Decision
validThrough1 October 2026, 23:59 UTCBefore the review time
Review time15 October 2026, 00:00 UTCThe advert is expired
Application openfalseClosed in the supplied state
JobPosting markup presenttrueREVIEW_EXPIRED_MARKUP

Use the filled example

Download the finite Node checker and filled input. Run with Node 24 or newer; no account, API or network is used.

node checks.mjs expired-job-acceptance expired-job-acceptance.json

Run the filled JSON first and retain its failure. Then make a separate copy with jobMarkupPresent false. The checker returns SUPPLIED_STATE_CONSISTENT for that supplied record only. It does not fetch a page, parse JSON-LD or prove that Google removed a listing. A live acceptance must inspect the actual delivered HTML and application endpoint with permission.

Write the supplier’s expiry contract

Specify who owns the deadline and timezone, what an applicant sees after closure and which component removes or updates the job information. Test a scheduled closure and an early manual withdrawal. Include the case where the content system has changed but an edge cache still serves the old advert. Preserve a redacted before/after response and the responsible owner rather than a screenshot alone.

Google describes several ways to deal with an expired posting. Choosing among retaining a useful archived advert without job markup, updating the expiry or removing a page depends on the site contract. This resource does not authorise redirects, removal or edits to any existing URL. The fictional case is not a real vacancy, so this guide publishes Article metadata only and does not mark itself up as a job.

Primary facts and limits

Google JobPosting policies: Expired jobs require lifecycle handling; removing an application button alone is not a structured-data check.

Sources reviewed 15 October 2026. The supplied input and acceptance rules are original teaching design; check current platform versions and your actual delivery contract before implementation.

Test the preview’s access and indexing contract separately