Direct answer: Across 61 cached pages the median HTML size is 91.5 KB but the median visible text is only 1,971 characters, a median text share of 2.01%. 30 pages are below 2%, six below 1%, and only 13 exceed 5%. Homepages median 2.63%; articles median 1.73%.
The extreme is the E25 homepage: 294 KB of HTML, 913 visible characters, a 0.31% share. The E23 homepage is 468 KB with 2,990 characters (0.64%). Two pages have more than 90% of their bytes in inline script/style/noscript.
Method: visible characters ÷ UTF-8 bytes
The study reuses 25 homepage caches (2026-10-31 to 11-01) and 36 article page caches (2026-11-03 08:40–08:41), with zero network requests. Script/style/noscript content and all tags are removed, entities unescaped and whitespace collapsed to count visible characters; the result is divided by the UTF-8 byte size of the HTML.
| Item | Definition | Boundary |
|---|---|---|
| Visible characters | Non-empty characters after tags and script/style removal | Includes navigation, footer and button text |
| Text share | Visible characters ÷ HTML bytes × 100 | Chinese characters count as one character, not bytes |
| Inline share | script/style/noscript bytes ÷ HTML bytes | External files not counted |
| Page level | Whole document, body not separated | Content quality not judged |
Result: half the pages are below 2%
| Text share | Pages | Share of 61 |
|---|---|---|
| < 1% | 6 | 9.8% |
| 1–2% | 24 | 39.3% |
| 2–5% | 18 | 29.5% |
| ≥ 5% | 13 | 21.3% |
| Page type | Pages | Median HTML | Median text | Median share |
|---|---|---|---|---|
| Homepage | 25 | 69.0 KB | 2,058 chars | 2.63% |
| Article | 36 | 113.0 KB | 1,924 chars | 1.73% |
| Total | 61 | 91.5 KB | 1,971 chars | 2.01% |
Article HTML is about 64% larger at the median than homepage HTML, while visible text is slightly smaller, so the share is lower. A heavier page is not a page with more words.
Large files with little text
| Page | HTML | Visible text | Text share |
|---|---|---|---|
| E25 homepage | 294 KB | 913 chars | 0.31% |
| E23 homepage | 468 KB | 2,990 chars | 0.64% |
| E23 article | 309 KB | 2,116 chars | 0.68% |
| E22 article | 152 KB | 1,007 chars | 0.66% |
| E14 article | 72 KB | 533 chars | 0.74% |
Six pages have fewer than 1,000 visible characters and four exceed 300 KB of HTML. The median inline script/style share is only 5.08%, so most bytes are markup and structure rather than inline script; E18 and E25 are exceptions, with 94.06% and 92.48% inline content.
What this means for acceptance
- Text share works as triage. Half the pages are below 2%, which warrants a look at DOM size, repeated menus and empty containers.
- A large HTML file does not mean more content. 294 KB with 913 characters is hard to explain by content alone.
- Articles are not lighter than homepages. Median article HTML is 113 KB and the median share is 1.73%, below homepages.
- Inline script is not the main weight. Median 5.08%; a few pages above 90% need separate treatment.
- Do not treat the share as a performance or quality score. It is a page-level structure signal; body extraction and real rendering need another test.
Limits
- Page level: navigation, footer and button text count as visible; the body is not separated.
- Inline resources only: external JS/CSS files are not in the HTML bytes or the hidden share.
- Characters are not words: mixed Chinese and English is not converted to word counts; the share is for comparison only.
- Cached, zero-request: the two caches differ in date; later changes are not reflected.
- 61 pages from 25 homepages and 36 articles on 10 sites, not 61 independent sites.
Data and reproduction
Anonymised data: equipment-text-share-2026.csv (61 rows × 8 columns: page type, HTML bytes, visible characters, inline bytes, text share, inline share). The repository keeps docs/research/2026-11-text-share.csv.
Parser: scripts/text_share_probe.py; unit tests: scripts/test_text_share_probe.py (6 tests, no network). Run:
python -m unittest scripts.test_text_share_probe
Related: the article image attributes pilot, the homepage cache and compression pilot, and the article link structure delayed recheck., and the homepage title and description pilot, and the structured data coverage pilot
Sources and definitions
- Homepage cache: 25 homepages from study 4 (2026-10-31 to 11-01).
- Article cache: 36 pages from 10 sites in study 45 (2026-11-03 08:40–08:41), five JS shells excluded.
- Visible text: script/style/noscript and tags removed, entities unescaped, whitespace collapsed.
- Scan: 2026-11-05, zero network requests.