speedlify2

Lighthouse lab metrics, Axe, and Chrome UX Report field data for a list of sites recorded and compared over time. Follow us on Mastodon or Bluesky.

Charts Compare Measurement runs Embed a score Open to Work

thetrainline.com

https://www.thetrainline.com/

47PERF 98A11Y 96BEST 92SEO βœ—AXE !CWV

Ranks Overall #5 Trainline #1

Data from Oct 30, 2026, 10:14 PM UTC old Measured once a day Β· 1 run since Oct 30, 2026

Elsewhere: PageSpeed Insights Β· Calibre Β· Treo Β· CrUX Vis Β· Tame the Bots Β· Scoring Calculator Β· Wayback Machine

Lab data is measured using Lighthouse, Mobile mode unless otherwise specified. Field data is reported from Chrome UX Report (using p75 measurements).

Stack

Uses ReactReact
Cl Hosted by CloudFront
Rendered On each request Document changed between loads

Filmstrip LAB Throttled

How the page drew during the measured load, at 9 points across 15.84 s. Compare this filmstrip against another site.

  1. 1.98 s
  2. 2.51 s
  3. 5.94 s
  4. 7.92 s
  5. 8.41 s
  6. 9.90 s
  7. 11.88 s
  8. 13.86 s
  9. 15.84 s

Lighthouse Scores LAB Simulated

47
Performance
no change
98
Accessibility
no change
96
Best Practices
no change
92
SEO
no change

Metrics LAB FIELD

Core Web Vitals: failing 3 of 3 assessed from real Chrome users.

Field figures are the p75 across real Chrome users over a 28-day trailing window (2026-10-01 → 2026-10-28), url-level.

Metric Lab Simulated Field
Value Change / range Trend p75 Distribution
LCP CWV Largest Contentful Paint 10.35 s poor — 10.35 s – 10.35 s 1.68 s good 86.6% 7.3% 6.1%
INP CWV Interaction to Next Paint β€” field only, no lab run can measure it n/a — 488 ms needs work 31.1% 45.3% 23.7%
CLS CWV Cumulative Layout Shift 0 good — 0 – 0 0 good 96.7% 0.5% 2.8%
TBT Total Blocking Time 930 ms poor — 930 ms – 930 ms n/a —
FCP First Contentful Paint 2.17 s needs work — 2.17 s – 2.17 s 1.45 s good 82% 10.4% 7.5%
Speed Index 5.91 s poor — 5.91 s – 5.91 s n/a —
TTFB Time to First Byte 637 ms good — 637 ms – 637 ms 656 ms good 81.7% 13.3% 5%

LCP Subparts LAB Throttled

The subparts attribute LCP to your server, resource discovery, download, or rendering. They come from one throttled load, the same one as the filmstrip, so they add up to that load’s LCP rather than the simulated Lab LCP above.

resource load duration 5.98 s
resource load delay 1.28 s
time to first byte 1.13 s
element render delay 19 ms

LCP LAB Simulated vs LCP FIELD

Lab 10.35 s
Field p75 1.68 s

The lab LCP is 6.15Γ— the field p75 β€” real users likely have above-average hardware or network connectivity.

Page weight

Metric Value Change / range Trend
Page Weight 2.98 MB — 2.98 MB – 2.98 MB
Requests 78 — 78 – 78
Third-party Weight 1.19 MB — 1.19 MB – 1.19 MB
Third-party CPU 142 ms — 142 ms – 142 ms
Unused JS 1.06 MB — 1.06 MB – 1.06 MB
Unused CSS 77.5 kB — 77.5 kB – 77.5 kB

By resource type

Type Transfer Share Size Requests
script 76% 2.27 MB 26
other 8.8% 263 kB 33
image 7.7% 231 kB 11
document 3.8% 114 kB 1
stylesheet 2.2% 66.5 kB 4
font 1.4% 41.0 kB 1
Total 2.98 MB 78

Third parties 9 entities

Entity Transfer Size Main thread Simulated
Google Tag Manager script 402 kB 70 ms
Optanon otherscript 384 kB 22 ms
Google/Doubleclick Ads script 284 kB 34 ms
New Relic 38.4 kB 8 ms
Branch Metrics 35.1 kB 5 ms
All 9 1.19 MB 142 ms

Without JavaScript

The same load, photographed twice at 412×823: once with scripts disabled, once as rendered.

Scripts disabled
As rendered

88.1% of pixels differ — the page changes substantially. A shifted layout counts as difference, so a <noscript> banner alone can account for a large figure.

Page health

Metric Value Change / range Trend
Main Thread Work 3.35 s — 3.35 s – 3.35 s
Long Tasks 12 — 12 – 12
DOM Elements 2,013 — 2,013 – 2,013
Axe Violations Violating nodes from a full Axe CLI run (more than Lighthouse reports) 11 — 11 – 11
A11y Failures 3 — 3 – 3
A11y Failing Nodes 4 — 4 – 4

Main thread work

Task Time Share Duration Simulated
script evaluation 57% 1.91 s
script parse compile 17% 554 ms
other 14% 462 ms
style layout 5% 184 ms
garbage collection 4% 127 ms
parse HTML 2% 70 ms
paint composite render 1% 47 ms
Total 3.35 s

Axe violations axe-core 4.13.0, full rule set

11 violating nodes across 5 rules, 1423 passing. This is a standalone Axe CLI run and is stricter than the subset Lighthouse already includes.

  • minor aria-allowed-role β€” ARIA role should be appropriate for the element 5 nodes
    Offending elements
    1. #bubble-interactive-basket-info
      <button class="diRbA4TQ88TVDwhpwYyh DgsbYRvKgbafDf2tY3up NEp2ZGi1POkm4u7i2kfQ OWeK8cJHVyJWHVb2MaVO y7CxfX1vFjeDcuk3FGuL sRJQVl2fyDNmEMRQQ14Q" data-testid="interactive-element" type="button" role="pre…
    2. #jsf-origin-input
      <input data-testid="jsf-origin" aria-label="Departure station, n..." placeholder="From city or station" id="jsf-origin-input" aria-labelledby="jsf-origin-label" aria-expanded="false" readonly="" role…
    3. #jsf-destination-input
      <input data-testid="jsf-destination" aria-label="Arrival station, non..." placeholder="To city or station" id="jsf-destination-inpu..." aria-labelledby="jsf-destination-labe..." aria-expanded="false"…
    4. #jsf-outbound-time-input-toggle
      <input type="text" name="outboundTime" value="Fri 30 Oct β€’ 22:15" aria-invalid="false" aria-current="false" aria-expanded="false" aria-haspopup="dialog" data-testid="jsf-outbound-time" placeholder=" …
    5. #jsf-passengers-input-toggle
      <input type="text" name="passengers" aria-invalid="false" aria-current="false" aria-expanded="false" aria-haspopup="dialog" data-testid="jsf-passengers" aria-label="Add passenger" id="jsf-passengers-…
  • serious nested-interactive β€” Interactive controls must not be nested 3 nodes
    Offending elements
    1. .ubYJEXpGpyG0DNmIYrvg
      <div class="qfLoyTPCJfzAfrEclZnc ubYJEXpGpyG0DNmIYrvg" role="option" tabindex="0">
    2. .qfLoyTPCJfzAfrEclZnc[role="option"]:nth-child(2)
      <div class="qfLoyTPCJfzAfrEclZnc" role="option" tabindex="0">
    3. .qfLoyTPCJfzAfrEclZnc[role="option"]:nth-child(3)
      <div class="qfLoyTPCJfzAfrEclZnc" role="option" tabindex="0">
  • moderate heading-order β€” Heading levels should only increase by one 1 node
    Offending element
    1. .XbtqcA5Bd6k3Z3_M6w_g
      <h4 class="XbtqcA5Bd6k3Z3_M6w_g"><span>Tickets</span></h4>
  • minor presentation-role-conflict β€” Elements marked as presentational should be consistently ignored 1 node
    Offending element
    1. #bubble-interactive-basket-info
      <button class="diRbA4TQ88TVDwhpwYyh DgsbYRvKgbafDf2tY3up NEp2ZGi1POkm4u7i2kfQ OWeK8cJHVyJWHVb2MaVO y7CxfX1vFjeDcuk3FGuL sRJQVl2fyDNmEMRQQ14Q" data-testid="interactive-element" type="button" role="pre…
  • serious scrollable-region-focusable β€” Scrollable region must have keyboard access 1 node
    Offending element
    1. ._1quk65v
      <div class="_1quk65v" data-test="travel-safe-sections">

Accessibility failures 3 of 36 audits

  • label-content-name-mismatch β€” Elements with visible text labels do not have matching accessible names. 2 nodes
  • heading-order β€” Heading elements are not in a sequentially-descending order 1 node
  • presentation-role-conflict β€” Elements with `role="none"` or `role="presentation"` have conflicts 1 node

Best Practices failures 2 of 19 audits

  • errors-in-console β€” Browser errors were logged to the console 1 item
  • valid-source-maps β€” Missing source maps for large first-party JavaScript 3 items

SEO failures 1 of 10 audits

  • link-text β€” Links do not have descriptive text 1 item

Hygiene

HTTPS HSTS CSP Clickjacking protection Origin isolation Trusted Types bfcache h2 1 console error

Measurement log

Field history 25 weeks

Weekly p75 from the CrUX History API, backfilled in a single request.

Week ending LCPINPCLSFCPTTFB
2026-10-24 1.68 s 486 ms 0 1.45 s 656 ms
2026-10-17 1.68 s 480 ms 0 1.44 s 656 ms
2026-10-10 1.68 s 477 ms 0 1.44 s 653 ms
2026-10-03 1.68 s 477 ms 0 1.43 s 644 ms
2026-09-26 1.67 s 478 ms 0 1.41 s 633 ms
2026-09-19 1.68 s 479 ms 0 1.40 s 629 ms
2026-09-12 1.67 s 478 ms 0 1.40 s 623 ms
2026-09-05 1.67 s 476 ms 0 1.39 s 618 ms
2026-08-29 1.67 s 471 ms 0 1.39 s 621 ms
2026-08-22 1.67 s 465 ms 0 1.39 s 613 ms
2026-08-15 1.69 s 458 ms 0 1.39 s 606 ms
2026-08-08 1.69 s 449 ms 0 1.38 s 599 ms

Runs

Every stored run for this URL, newest first.

When Scores PerfLCPCLSTBTWeight RunsSpreadBenchTook Archive
Oct 30, 2026, 10:14 PM UTC 47 10.35 s 0 930 ms 2.98 MB 3/3 Β±9 2,106 +1% 69.5s Wayback