Direct answer: A zero-request pass over 41 cached article pages: 32 carry a date, and the median first date sits at visible character 402.5 (about 20% into the text); 28 appear within the first 1,000 characters and none is beyond 2,000. But four E22 pages place their first date at 75–82%, near the bottom, and nine pages have no date at all. A date existing is not the same as a date being easy to see.
Study 30 counted whether dates exist; this one asks where they sit — near the title, or only after scrolling. Position is proxied by visible-text characters: no JavaScript, no rendering.
Method: locating the first date in visible text
Pages come from the 41 successful crawls in study 29, with raw HTML stored off-repository. Scripts, styles, comments and tags are removed to obtain visible text; the first 20xx numeric date is located, its character offset recorded, and the offset divided by text length. The median uses the 32 pages that contain a date.
| Field | Definition | Boundary |
|---|---|---|
| First date position | Character offset of the first date string in visible text | Not pixels, not a first-screen test |
| Relative position | Offset ÷ visible text length | Short pages inflate the ratio |
| Buckets | ≤25%, 25–50%, 50–75%, >75% | Descriptive only |
Result: mostly early, four at the bottom
| First-date character position | Pages | Note |
|---|---|---|
| ≤500 | 18 | Near the title or lead |
| 501–1000 | 10 | Early body |
| 1001–2000 | 4 | Late body |
| >2000 | 0 | — |
| Relative position | Pages | Note |
|---|---|---|
| ≤25% | 18 | Early |
| 25–50% | 10 | Middle |
| 50–75% | 0 | — |
| >75% | 4 | All E22, near the bottom |
The median first position is character 402.5, about 20% of the text. Character and relative buckets do not align exactly because page lengths differ: 400 characters may be past halfway on a short page and still early on a long one.
E22: a date, but at the bottom
All four pages beyond 75% belong to E22: text length 1,689–2,326 characters, first date at 1,277–1,914, or 75.6%–82.3%. Those pages also carry dateModified in JSON-LD, yet the visible date is not near the title — more likely in a footer, filing block or list area.
Two things follow: “has a date” and “date on the first screen” are different measures, and structured dates do not guarantee a sensible visible position. If the acceptance criterion is “a visitor sees the update date at a glance”, position and rendering matter, not just grep.
What this means for acceptance
- Check position before calling it visible. A footer date and a title-adjacent date mean different things to visitors.
- Character position is a proxy. Real first-screen checks need rendered pixels and viewport height.
- Short pages inflate ratios. The same 400 characters can be halfway or early depending on length.
- Record structured and visible separately. E22 has JSON-LD dates but bottom-of-page visible dates.
- List no-date pages separately. Nine pages have no date string; that is not the same as “date at the bottom”.
Limits
- Characters are not pixels: font size, line height, images and accordions change real position.
- No JavaScript: script-injected dates and lazy content are invisible.
- Small sample: 32 dated pages, and four E22 pages fill the “bottom” group.
- No semantics: list, copyright and body dates all count as the first date.
- 41-page pilot: no industry claim.
Data and reproduction
Anonymised data: equipment-date-position-pilot-2026.csv (41 rows: sample_id, URL, visible text length, date count, first-date position, ratio, bucket). The repository keeps docs/research/2026-11-date-position-pilot.csv.
Parser: scripts/date_position_probe.py; unit tests: scripts/test_date_position_probe.py (11 tests, no network). Run:
python -m unittest scripts.test_date_position_probe
Related: the visible article dates pilot (32/41 with dates), the visible date checker, and the expanded article-page dates study.
Sources and definitions
- Page cache: 41 successful pages from study 29; raw HTML kept off-repository.
- Position: visible-text character offset; no rendering, no JavaScript.
- Scan: 2026-11-02, zero network requests.