Same Character Count, Different Text Widths: 852 GOV.UK Guide Titles
MTW-v1-2026 · Measurements completed 20 October 2026 · Page and metadata prepared 30 October 2026
We measured 852 English GOV.UK guide-title strings in one fixed font and browser, then compared widths within exact Unicode-codepoint counts. Among the 12 titles with 60 codepoints, retained width ranged from 581 to 642 CSS pixels. These are measurements of this corpus and configuration, not predictions of Google's search results.
A codepoint is one Unicode value. For plain English titles it usually matches what you would call a character, but an emoji or an accented letter built from several parts can be one visible character (a grapheme) made of several codepoints. This study keeps its frozen codepoint definition. Our Character Counter counts visible characters instead, and the character counting guide explains the difference.
Widths at four round lengths
Each row groups titles with exactly the same number of codepoints. Values are CSS pixels. These four round-length groups are illustrations, not the complete results and not a selection of the largest effects; every group is in the full table.
| Codepoints | Titles | P10 | Median | P90 | Minimum–maximum |
|---|---|---|---|---|---|
| 30 | 18 | 296.7 | 307.0 | 324.7 | 285–342 |
| 40 | 19 | 399.2 | 408.0 | 421.4 | 384–428 |
| 50 | 12 | 492.0 | 511.0 | 527.0 | 484–530 |
| 60 | 12 | 585.6 | 605.5 | 629.4 | 581–642 |
All 74 length groups
The 852 titles fall into 74 exact-codepoint groups from 9 to 120. The 46 groups with at least 10 titles contain 782 titles; the remaining 70 titles are in 28 sparse groups, marked below. The 10-title line is a presentation convention, not a test of significance.
Percentiles use Type 7 linear interpolation. P90 minus P10 is a descriptive spread for these titles. It is not a confidence interval, a prediction interval or a truncation threshold. Sample SD uses n − 1 and is undefined (shown as —) for a single title.
Show all 74 groups
| Codepoints | n | Min | P10 | Median | P90 | Max | Sample SD |
|---|---|---|---|---|---|---|---|
| 9sparse | 4 | 90 | 90.3 | 93.5 | 96.7 | 97 | 3.5 |
| 10sparse | 1 | 106 | 106.0 | 106.0 | 106.0 | 106 | — |
| 11sparse | 3 | 98 | 101.2 | 114.0 | 118.0 | 119 | 11.0 |
| 12sparse | 4 | 116 | 117.2 | 120.0 | 124.2 | 126 | 4.1 |
| 13 | 11 | 128 | 130.0 | 137.0 | 150.0 | 151 | 7.9 |
| 14 | 14 | 137 | 140.5 | 147.5 | 157.7 | 162 | 7.0 |
| 15 | 16 | 149 | 151.0 | 159.0 | 168.5 | 170 | 6.5 |
| 16 | 16 | 154 | 156.0 | 161.5 | 172.0 | 184 | 7.8 |
| 17 | 15 | 158 | 163.6 | 173.0 | 193.2 | 198 | 11.9 |
| 18 | 14 | 170 | 173.4 | 189.5 | 206.7 | 213 | 13.2 |
| 19 | 20 | 179 | 189.6 | 203.0 | 213.4 | 223 | 10.6 |
| 20 | 18 | 194 | 198.0 | 217.0 | 226.6 | 235 | 11.5 |
| 21 | 17 | 201 | 205.8 | 222.0 | 229.2 | 236 | 9.7 |
| 22 | 15 | 205 | 214.8 | 231.0 | 252.8 | 259 | 14.9 |
| 23 | 14 | 226 | 229.0 | 244.0 | 250.7 | 252 | 8.7 |
| 24 | 17 | 233 | 240.2 | 248.0 | 258.4 | 264 | 8.0 |
| 25 | 14 | 243 | 248.2 | 260.0 | 271.4 | 302 | 14.3 |
| 26 | 26 | 249 | 255.0 | 268.0 | 290.0 | 298 | 13.1 |
| 27 | 24 | 267 | 269.3 | 282.5 | 292.0 | 313 | 10.5 |
| 28 | 22 | 252 | 266.1 | 288.5 | 319.0 | 325 | 19.6 |
| 29 | 22 | 282 | 286.0 | 304.5 | 320.0 | 322 | 12.1 |
| 30 | 18 | 285 | 296.7 | 307.0 | 324.7 | 342 | 14.0 |
| 31 | 18 | 290 | 314.4 | 326.5 | 338.9 | 349 | 12.9 |
| 32 | 19 | 297 | 314.6 | 329.0 | 342.2 | 352 | 13.1 |
| 33 | 18 | 312 | 317.8 | 336.5 | 358.2 | 364 | 15.3 |
| 34 | 33 | 327 | 335.0 | 352.0 | 373.8 | 390 | 14.5 |
| 35 | 17 | 342 | 346.8 | 356.0 | 373.6 | 378 | 11.0 |
| 36 | 17 | 347 | 352.2 | 370.0 | 384.2 | 399 | 14.7 |
| 37 | 19 | 364 | 366.4 | 387.0 | 398.0 | 420 | 14.8 |
| 38 | 22 | 354 | 372.1 | 387.0 | 412.1 | 427 | 17.5 |
| 39 | 25 | 367 | 383.2 | 398.0 | 418.8 | 427 | 14.1 |
| 40 | 19 | 384 | 399.2 | 408.0 | 421.4 | 428 | 10.9 |
| 41 | 24 | 388 | 394.6 | 416.5 | 445.3 | 461 | 20.2 |
| 42 | 13 | 416 | 416.6 | 436.0 | 442.0 | 442 | 10.2 |
| 43 | 14 | 416 | 420.8 | 436.0 | 457.5 | 467 | 14.4 |
| 44 | 24 | 421 | 429.2 | 451.0 | 479.0 | 498 | 20.2 |
| 45 | 15 | 444 | 444.0 | 461.0 | 478.0 | 489 | 14.4 |
| 46 | 18 | 439 | 450.5 | 470.0 | 490.2 | 504 | 17.2 |
| 47 | 11 | 455 | 470.0 | 478.0 | 496.0 | 504 | 14.4 |
| 48 | 13 | 470 | 470.4 | 485.0 | 514.2 | 521 | 17.6 |
| 49 | 16 | 466 | 480.0 | 494.0 | 515.5 | 517 | 14.8 |
| 50 | 12 | 484 | 492.0 | 511.0 | 527.0 | 530 | 14.3 |
| 51 | 13 | 482 | 510.0 | 523.0 | 548.0 | 554 | 19.0 |
| 52 | 15 | 504 | 514.2 | 537.0 | 568.6 | 591 | 23.1 |
| 53 | 16 | 508 | 515.5 | 547.0 | 571.5 | 578 | 21.7 |
| 54 | 12 | 511 | 537.4 | 553.0 | 578.6 | 581 | 19.2 |
| 55sparse | 4 | 541 | 547.9 | 571.0 | 578.7 | 579 | 17.7 |
| 56 | 13 | 518 | 554.8 | 578.0 | 585.4 | 607 | 21.3 |
| 57sparse | 4 | 536 | 542.9 | 561.5 | 589.9 | 601 | 26.9 |
| 58 | 11 | 564 | 571.0 | 589.0 | 603.0 | 608 | 12.9 |
| 59 | 10 | 554 | 578.3 | 591.5 | 612.0 | 621 | 18.6 |
| 60 | 12 | 581 | 585.6 | 605.5 | 629.4 | 642 | 17.8 |
| 61sparse | 9 | 592 | 604.8 | 640.0 | 645.2 | 650 | 20.4 |
| 62sparse | 2 | 602 | 604.0 | 612.0 | 620.0 | 622 | 14.1 |
| 63sparse | 2 | 623 | 624.3 | 629.5 | 634.7 | 636 | 9.2 |
| 64sparse | 5 | 606 | 616.8 | 638.0 | 664.4 | 668 | 24.2 |
| 65sparse | 1 | 649 | 649.0 | 649.0 | 649.0 | 649 | — |
| 66sparse | 4 | 671 | 671.9 | 675.5 | 688.9 | 694 | 10.3 |
| 67sparse | 3 | 653 | 654.6 | 661.0 | 693.8 | 702 | 26.3 |
| 68sparse | 1 | 723 | 723.0 | 723.0 | 723.0 | 723 | — |
| 69sparse | 4 | 676 | 678.4 | 696.5 | 716.0 | 719 | 20.3 |
| 70sparse | 3 | 703 | 705.0 | 713.0 | 733.0 | 738 | 18.0 |
| 71sparse | 1 | 705 | 705.0 | 705.0 | 705.0 | 705 | — |
| 72sparse | 2 | 709 | 711.5 | 721.5 | 731.5 | 734 | 17.7 |
| 73sparse | 2 | 713 | 716.4 | 730.0 | 743.6 | 747 | 24.0 |
| 74sparse | 2 | 716 | 720.8 | 740.0 | 759.2 | 764 | 33.9 |
| 75sparse | 1 | 735 | 735.0 | 735.0 | 735.0 | 735 | — |
| 77sparse | 1 | 770 | 770.0 | 770.0 | 770.0 | 770 | — |
| 78sparse | 1 | 730 | 730.0 | 730.0 | 730.0 | 730 | — |
| 80sparse | 1 | 767 | 767.0 | 767.0 | 767.0 | 767 | — |
| 81sparse | 2 | 774 | 776.4 | 786.0 | 795.6 | 798 | 17.0 |
| 96sparse | 1 | 976 | 976.0 | 976.0 | 976.0 | 976 | — |
| 98sparse | 1 | 964 | 964.0 | 964.0 | 964.0 | 964 | — |
| 120sparse | 1 | 1187 | 1187.0 | 1187.0 | 1187.0 | 1187 | — |
The same groups are in by-length.csv and by-length.json.
Precision and font hinting
Every retained width is a whole CSS-pixel value. The historical runs did not record the system font-hinting setting. In a later check with the unchanged runner and recorded browser and font versions, full font hinting reproduced 10 pilot strings and 13 strings from the final batch exactly. The current light-hinting setup produced fractional widths. This identifies a configuration capable of reproducing 23 checked strings; it does not prove which hinting configuration was used historically or validate all 852 values against another environment. Original measurements were retained unchanged.
Differences of roughly −2.57 to +1.96 px between light hinting and the retained widths were seen only in the 10 pilot strings. They are not an error bound for the corpus. The widths make no claim to subpixel precision, to the unhinted design width of the font, or to equivalence in other environments. Details are in validation-note.md.
How the titles were measured
Frame and exclusions
A fixed GOV.UK frame taken on 15 October 2026 held 859 records. Of these, 852 were eligible English guide-title strings after normalization. Seven records were excluded: four whose frame title did not match the source page's first H1 (two also redirected to a different path), and three Welsh titles. One excluded Welsh title had already been measured; its raw result is kept privately but is not in the published data. No source was replaced and nothing was selected by outcome. This is the retained frame, not all of GOV.UK and not a random sample of the web.
Source notices for the accepted rows were checked between 16 and 19 October 2026 (UTC). Measurements were completed on 20 October 2026. The strings are the source guide titles; they are not claimed to be identical to each page's complete HTML <title> element.
Normalization
HTML entities were decoded, whitespace collapsed and trimmed. Case, punctuation and Unicode form were preserved. Exact duplicate strings were removed.
Environment
- Chromium 141.0.7390.37, Linux 6.12 x86_64, Python 3.13.12
- DejaVu Sans Book 2.37 at 20 CSS px, weight 400
- Device pixel ratio 1, viewport 1280 × 800, language en, direction ltr
- 10 batches, each with two independent Chromium launches
Measurements
The primary value is Canvas TextMetrics.width, which is the advance width of the text, not its ink bounding box. A secondary value is the width of an unwrapped DOM element. The original checks showed identical repeats and agreement between Canvas and DOM. That shows repeatability, not proof of accuracy.
What the results mean
In this proportional-font environment, the same codepoint count corresponded to different retained widths. Counts remain the right tool for count limits. When layout width matters, measure the text in the layout where it will appear.
The study cannot calibrate the SEO Title Length Checker, whose preview uses an 18 px system font; that checker measures its own typography. For writing advice, see the SEO title length guide. Google describes how title links are produced in its title link documentation.
Limitations
- One publisher's house style, in a fixed frame that is not a random sample.
- One font, browser and system configuration; historical font hinting was not recorded.
- Many length groups are small, and sparse groups are kept rather than dropped. No population inference, confidence intervals or significance tests are reported.
- No Google search-result display, title rewriting, truncation frequency, ranking or click-through rate was observed.
- The data do not support a universal 60-character or 580-pixel rule.
Sources and rights
Title strings and source information come from GOV.UK and are reused under the Open Government Licence v3.0 subject to its stated exclusions; see reusing GOV.UK content.
Contains public sector information licensed under the Open Government Licence v3.0.
The licence and exclusions recorded for each source are in the data files. No endorsement by GOV.UK or the information providers is implied. Source-notice checks are not exhaustive legal clearance, and third-party rights and other exclusions still apply. No page bodies or font files are redistributed.
DejaVu Sans keeps its own licence; the underlying font copyright remains, and the font as a whole is not in the public domain.
Download the data
The files hold the original counts and widths, with source URLs, titles and attribution. Measurement records contain 852 rows; the group files contain all 74 groups. Read the precision note and method before reuse.
The original measurements, dataset compilation and original documentation produced by Moltoyo in these downloads are licensed under Creative Commons Attribution 4.0 International (CC BY 4.0), only for rights held by Moltoyo. Attribute Moltoyo, identify version MTW-v1-2026, link to this study and the licence, and indicate changes. GOV.UK title metadata and source information remain under the Open Government Licence v3.0 and its stated exclusions. This does not grant a new licence over third-party source works, font files or other third-party rights.
- measurements.csv
CSV, UTF-8
852 records: source URL and title, codepoint, UTF-16 and grapheme counts, original Canvas and DOM widths, source-notice date and attribution
- measurements.json
JSON, UTF-8
The same records with numeric types
- by-length.csv
CSV, UTF-8
All 74 exact-codepoint groups: n, minimum, P10, median, P90, maximum and sample SD
- by-length.json
JSON, UTF-8
The same groups with numeric types
- metadata.json
JSON, UTF-8
Conditions, definitions, dates, source rights and limitations
- README.md
Markdown
Files, fields, how to reproduce the statistics, attribution
- validation-note.md
Markdown
The later font-hinting check and what it does not show
- checksums.sha256
Text
SHA-256 digests of the public files
Fields in measurements.csv and measurements.json
| Field | Meaning |
|---|---|
| source_id | Canonical GOV.UK path for the guide. |
| recorded_source_id | Path as originally recorded. It differs from source_id only where source_id_corrected is true. |
| source_url / title | Source page and the normalized guide-title string that was measured. |
| codepoints | Unicode codepoints in the title. Groups compare exact equal codepoint counts. |
| utf16_units / graphemes | Alternative counts, supplied for reference only. |
| canvas_width_px | Primary measurement: Canvas TextMetrics.width, whole CSS pixels as retained. |
| dom_width_px | Secondary measurement: width of an unwrapped DOM element. |
| screened_at_utc | When the source notice was checked. |
| source_id_corrected | Marks the one documented path-only correction. No title or width changed. |
| source_licence / source_licence_url / source_attribution | Source licence and attribution as recorded. |
How to cite this study
Measurements were completed on 20 October 2026. This page and its metadata were prepared on 30 October 2026.
Moltoyo (2026). Same Character Count, Different Text Widths: 852 GOV.UK Guide Titles. MTW-v1-2026. https://moltoyo.com/research/title-width-study