Direct answer: all 36 article pages have a <title>, but only 22 have a readable H1: eight have no <h1> element, five are empty tags and one contains only an image. Of the 22 text H1s, 14 are part of the title (title = H1 plus brand suffix, a normal pattern) and eight say something different — five are CMS placeholder text ("这里是标题一h1占位文字") and three use navigation words such as "联系我们".
Social titles are in better shape: og:title and twitter:title each appear on 30 pages, and all 30 match the title exactly. A JSON-LD name appears on nine pages, each partially containing the brand name.
Method: same probe, article sample
The study reuses the 36 article pages cached on 2026-11-03 08:40–08:41 (10 sites) with zero network requests; the parser is identical to the study-78 homepage pilot. It reads title, the first h1, og:title, twitter:title and JSON-LD names, strips tags, entities and common punctuation, then compares: exact, partial, different, missing. H1 is split into text, image-only, empty and absent.
| Item | Rule | Boundary |
|---|---|---|
| Readable H1 | Non-empty visible text inside the tag | Image alt is not H1 text |
| Partial | One contains the other | Title = H1 + brand suffix matches here |
| H1 state | text / image-only / empty / none | First H1 only |
| JSON-LD name | Any node's name/legalName/alternateName | First non-empty value compared |
Result: H1 is the weak point, social titles are complete
| Source | Pages | Share of 36 |
|---|---|---|
title | 36 | 100% |
h1 with text | 22 | 61.1% |
og:title | 30 | 83.3% |
twitter:title | 30 | 83.3% |
| JSON-LD name | 9 | 25.0% |
| H1 state | Pages |
|---|---|
| Text | 22 |
| Empty tag | 5 |
| Image only | 1 |
| No H1 element | 8 |
Consistency: 14 partial, 8 different
| Comparison | Exact | Partial | Different | Missing |
|---|---|---|---|---|
| H1 vs title | 0 | 14 | 8 | 14 |
| og:title vs title | 30 | 0 | 0 | 6 |
| twitter:title vs title | 30 | 0 | 0 | 6 |
| JSON-LD name vs title | 0 | 9 | 0 | 27 |
Zero exact H1 matches is not surprising: these titles are usually written as "article title-company name" while the H1 keeps only the article title, so they fall into "partial". The eight "different" cases are the ones to fix: five are CMS placeholder text and three are navigation words such as "联系我们", none describing the current article.
Compared with homepages
| Measure | Homepages (study 78, 25) | Articles (this study, 36) |
|---|---|---|
| Readable H1 | 7 (28.0%) | 22 (61.1%) |
| No H1 element | 12 | 8 |
| Empty / image H1 | 3 / 3 | 5 / 1 |
| og:title | 9 (36.0%) | 30 (83.3%) |
| twitter:title | 6 (24.0%) | 30 (83.3%) |
Article pages beat homepages on both H1 and social-title coverage, but they show a problem the homepages did not: five H1s are template placeholders, a content-workflow omission rather than a technical gap.
What this means for acceptance
- The H1 must be the article title, never a placeholder. Five pages still say "这里是标题一h1占位文字"; publishing should block this automatically.
- The H1 must not be navigation. Three pages use "联系我们", unrelated to the article.
- Title = H1 + brand suffix is acceptable. Fourteen partial matches are normal and need not be word-for-word.
- Keep the social titles. Thirty pages match the title exactly, the best result in this sample.
- Structured-data names are thin. Only nine pages declare one, each partially containing the brand name.
Limits
- Strings only: no semantic judgement; "different" is not automatically wrong.
- First H1 only: pages with several H1s compare the first.
- Placeholder detection is manual: "这里是标题一h1占位文字" was identified by reading, not a fixed list.
- One snapshot: cached on 2026-11-03; redesigns are not rechecked.
- 10 sites, 36 pages: a pilot, no industry claim.
Data and reproduction
Anonymised data: equipment-article-title-consistency-2026.csv (36 rows × 15 columns: title/H1 lengths, five source flags, H1 state, four comparisons and JSON-LD name count). The repository keeps docs/research/2026-11-article-title-consistency.csv.
Parser: scripts/homepage_title_consistency_probe.py (same implementation as study 78); unit tests: scripts/test_homepage_title_consistency_probe.py (no network, eight tests). Run:
python -m unittest scripts.test_homepage_title_consistency_probe
Related: the homepage title-source pilot, the title consistency checker, and the article head-metadata pilot., and the title composition pilot
Sources and definitions
- Article cache: 36 pages from 10 sites in study 45 (2026-11-03 08:40–08:41).
- Comparison: tags, entities, whitespace and common punctuation removed first.
- Scan: 2026-11-06, zero network requests.